Releases: restatedev/sdk-typescript
v1.6.0
Renamed CombineablePromise
to RestatePromise
CombineablePromise
was renamed to RestatePromise
, and the CombineablePromise
is now a deprecated type alias, it will be removed in the upcoming releases.
What's Changed
- Support omitting content type for void handlers by @igalshilman in #532
- Fix tests by @nikrooz in #533
- Fix
this
type by @nikrooz in #534 - Small fixes by @mupperton in #538
- Validate sleep duration is non-negative. by @nikrooz in #537
- Add missing exported by @igalshilman in #540
- Add missing exports by @nikrooz in #542
- Add
api-extractor
check to catch missing exports by @nikrooz in #541
Full Changelog: v1.5.4...v1.6.0
Release 1.5.4
Release 1.5.3
We are pleased to announce the release of the TypeScript SDK, in combination with Restate 1.3.
Check out the announcement blog post for more details about Restate 1.3 and the new SDK features: https://restate.dev/blog/announcing-restate-1.3/
Release 1.5.2
What's Changed
- Update
node:timers/promises
import for CF workers/bun/deno by @slinkydeveloper in #520
Full Changelog: v1.5.1...v1.5.2
Release 1.5.1
Release 1.5.0
We are pleased to announce the release of the TypeScript SDK, in combination with Restate 1.3.
Check out the announcement blog post for more details about Restate 1.3 and the new SDK features: https://restate.dev/blog/announcing-restate-1.3/
Checkout the docs and examples to learn about the latest SDK features:
https://docs.restate.dev/category/typescript-sdk/
Changelog:
- Update versions matrix (f2758f5)
- Fix propagation of error when creating the VM. This prevents the runtime from detecting a protocol version violation, thus not showing the nice error message. (#516) (4392b59)
- Fix messy logging with context.run (#515) (fe3aa20)
- Failing to deserialize should return 400 error (#514) (b333438)
- Remove restate-sdk-zod from the examples (#513) (9519add)
- Empty input still parsed by zod in ZodSerde (#512) (bdce768)
- Add zod dependency to the examples (#511) (6d30a56)
- Use the host AbortSignal if provided (#509) (016dc59)
- Add abort controller signal for efficient resource cleanup (#507) (bde4ffc)
- Add CombineablePromise.map (#506) (ca12811)
- Add CLA automation (#505) (ac215af)
- Support TState in handler annotations (#504) (8f27716)
- Simplify the type inference around rpc handlers (9c16132)
- Add zod module (#502) (5cacb0e)
- Enforce type checks when specifying serde (#501) (267a23b)
- Add optional jsonSchema field to Serde (#500) (f717281)
- Add an optional input/output json schema for handlers (#499) (6295e8e)
- Add documentations and metadata to discovery (#498) (423190a)
- Expose invocation id of a call (#496) (cdd2a32)
- Make sure identity is checked before /discovery and /invoke, but after /health (#497) (1f40f4f)
- Update test suite to 3.0 (#495) (a863d64)
- Bump to protocol V5 (#494) (82d62cb)
- Remove usages of Uint8Array for input parameters and replace them with Vec (#493) (383cb1b)
- Update README.md (9012e8f)
- Handle logging strange behaviours (#492) (87b9539)
- Remove ServiceBundle API, old custom logger API, old lambda handler API, old input/output serializer/deserializers (#491) (b6991c9)
- Add /health endpoint (#490) (81a409f)
- Update compat matrix (6ed4cef)
- Bump shared core and use new rust version (#488) (3f12bc4)
- [verification] Remove the verification GHA from this repo (#487) (637842b)
- [tests] Publish a test-services docker image (#486) (7e7f904)
- [verification] Limit the number of concurrent invocations (#485) (7acf752)
- Service Protocol V4 (#477) (c3a94f1)
- [verification] Align to the latest configuration layout (#484) (57a595a)
- [verification] Add additional nightly verification test (#483) (6631f5e)
- [verification] Update the env parameters to the latest runtime version (#482) (e5b8959)
- [verification] Reduce the number of the generated tests (#481) (72c1b78)
- Configure embedded metadata store on all Restate nodes (38f4995)
- [tests] Use the correct advertised_address (#480) (85cac82)
- Set the correct env variable for the verification test (#479) (fbc3487)
- Use the latest verification runner (#478) (14a85f5)
- Use test suite 2.4 (#476) (fd7f318)
- Logging fixes (#475) (56ec4eb)
- add names to custom error classes (#471) (0eff045)
- [example] Revert to a simple greeter (#474) (93eebb6)
- Add AbortSignal to the workflow attach/get output methods (#470) (0d00515)
- replace commands to run examples with working ones (#473) (eb4eb9f)
- Include request struct in logger context (#472) (29e808b)
- Add headers to CallOpts and SendOpts (c65f341)
- Re-think the logger API and internal propagation between shared core and SDK (#465) (189153b)
- Add support for headers for service-to-service calls (#467) (759b32b)
- Use only the first docker image name from load (c266c69)
- Set host in setup docker action (3573343)
- Enable containerd snapshotter (c7964fb)
- Fix testcontainers readme link (again) (#464) (0be1e26)
- Add testcontainers to the snapshot set step (764cbd9)
- Fix testcontainers readme link again (#463) (9a1763b)
- Fix testcontainers readme link (#462) (ad49711)
- Add testcontainers to package-lock.json (cac66ad)
- Add @restate/restate-sdk-testcontainers (#460) (58b69f6)
- Bring back logging for start/end invocation (#461) (4a74bb5)
- Add key to LoggerContext (#455) (f5a35da)
1.4.0
Important for existing users: Upgrading to 1.4.0
requires re-discovery of the service, due to the updated service protocol. For more details, check out https://docs.restate.dev/operate/registration and https://docs.restate.dev/operate/upgrading#service-compatibility
New features
ctx.run
retry policy is now supported:
await ctx.run("make a payment", async () => {
// Do payment
}, {
// Bound the run to be retried for a max number of attempts
maxRetryAttempts: 10
});
- Add options in ingress client to accept
timeout
orsignal
(#451)
Notable changes
- Minimum Restate version is
>= 1.1
- Breaking: Cloudflare workers now MUST use the module
restate-sdk-cloudflare-workers
, rather thanrestate-sdk
. The module is identical torestate-sdk
, except some patches required to use the SDK on cloudflare workers.
Full changelog
- Add options in ingress client to accept
timeout
orsignal
(#451) (3e7e7f5) - Add 1.4 in compatibility matrix (#450) (d59dba7)
- Add run retry feature (#448) (ebcf898)
- Remove e2e repo tests (#449) (677d892)
- Require triple equals via eslint (#447) (5451ca5)
- Avoid null coercion to undefined (#446) (0cac0a2)
- Build test services Docker image (#444) (fd92190)
- [e2e] Add verification runner (#443) (2492321)
- Add nightly verification test GHA workflow (#442) (adb64d9)
- Add the implementation of the e2e interpreter/helper services (#441) (1c88738)
- Improve errors, propagating the error code (#440) (9d9254a)
- Bump to test suite 2.1 (#439) (61e60c1)
- Use request identity verification from shared core (#438) (e4fe954)
- Fix cloudflare workers (#437) (1b13f15)
- New core (#435) (df7f511)
- Normalise incoming paths before checking them against signature (#434) (9c73979)
- Added release note for SDK typescript and latest runtime release. (#433) (479936f)
- Improve type inference for workflows defied from an interface (#432) (e7d271c)
- Update compatibility matrix (e931fd8)
v1.3.3
- Avoid null coercion to undefined in serde implementation #446
Full Changelog: v1.3.2...v1.3.3