Releases: restatedev/sdk-typescript
1.3.2
1.3.1
1.3.0
New features
- It is now possible to plug custom ser/de in many places, by implementing the
Serde
interface. TheSerde
interface is accepted in all the APIs where the SDK needs to perform serialization/deserializaiton, including the handlers input/output, the clients, state access methods,run
,awakeables
andpromises
. For more details on the usage, see https://docs.restate.dev/develop/ts/serialization/
Full Changelog: v1.2.1...v1.3.0
1.2.1
Full Changelog: v1.2.0...v1.2.1
1.2.0
What's Changed
- Make it possible to get extra args provided to functional handlers by @jackkleeman in #409
- Fix replaying detection in logger.ts by @jackkleeman in #411
- Move the e2e tests to a separate package by @igalshilman in #413
- Add KillTest e2e by @igalshilman in #414
Full Changelog: v1.1.2...v1.2.0
1.1.2
1.1.1
Release 1.1.0
New features:
- [client] Add 'raw' opt/sendOpt to skip JSON serde (#404) (3a866f9)
- Custom logger support (#400) (abdd44d)
- It is now possible to provide some type information when accessing Object/Workflow state (#401) (59b2047)
Other changes:
- ctx.invoke/invokeOneWay now accept a serialization and deserialization function. (#402) (dc5d77a)
- Remove remaining usages of lambdaHandler() by @jackkleeman in #392
- Avoid double warn re request signatures by @jackkleeman in #393
- Expose HttpCallError in restate-sdk-clients by @mupperton in #395
- Unify everything under GenericHandler using web-streams by @jackkleeman in #394
- Unify bidi and request response code paths by @jackkleeman in #397
- Use tsx in examples repo by @jackkleeman in #398
Thanks to everyone providing feedback and contributing to the project! We're very grateful for that and we look forward to more!
Full Changelog: v1.0.1...v1.1.0
1.0.1: ESM, better FaaS Support
This release adds ESM support, as well as a new importable component fetch
(import * as restate from "@restatedev/restate-sdk/fetch"
) which enable usage from FaaS platforms like Cloudflare without having http2 in the import tree. There is also a new lambda
component, but the old way of calling lambdaHandler()
continues to work (but is deprecated).
- Update package-lock.json (f25a587)
- Ensure that we resolve completepromise messages on replay (#391) (7baefdb)
- Update, don't upsert, snapshot version (#390) (af04789)
- Replace the Cloudflare specific APIs with a generic handler (#389) (6420002)
- Use typesVersions workaround to support node10 resolution (#388) (db490de)
- Fix cloudflare worker exported types (#387) (825672f)
- Bump braces from 3.0.2 to 3.0.3 (#377) (92fd192)
- Convert to ESM modules (#386) (5841ebe)
- Add import linter (#385) (6c24f48)
- Update typescript (#384) (d80a1a6)
- Use .js extensions everywhere (#383) (3ef2418)
- Remove erroneous sdk-ingress dir (995483e)
- Use eslint to require import and export type statements (#382) (1308750)
- Use type-aware eslint (#381) (dfb1b82)
- Revert "Use eslint to require import and export type statements (#379)" (#380) (a0381c2)
- Use eslint to require import and export type statements (#379) (d46f4dd)
- Move to vitest (#378) (568d942)
- Run prettier (bf40623)
- Add seperate Lambda component and deprecate lambdaHandler() (#376) (042625a)
- Refactor endpoint/handlers (#374) (514a167)
- Denodeify (#375) (dcb7dba)
- Prepare for a quarantined http2 module (#373) (7f93b65)
Restate 1.0
We're happy to announce that Restate has reached the 1.0 milestone!
Check the Restate 1.0 release for more details.
Workflow API
We have introduced a new API to simplify building workflows, check out the documentation: https://docs.restate.dev/develop/ts/workflows
Shared handlers for Virtual Objects
You can now define shared handlers on virtual objects, check out the documentation: https://docs.restate.dev/develop/ts/overview#virtual-objects
What's Changed
- [api] Add shared handlers by @igalshilman in #344
- Support custom/raw input output serializers by @igalshilman in #345
- [workflow] Various adjustments to the workflow overly impl by @igalshilman in #346
- Extract core common types into restate-sdk-core package by @igalshilman in #347
- [ci] Add restate-core into the GH by @igalshilman in #348
- Add restate-sdk-core to tsconfig by @igalshilman in #349
- Fix ObjectSharedHandler definition by @jackkleeman in #350
- Ensure restate.handler methods return functions by @jackkleeman in #351
- Ensure more restate.handler methods return functions by @jackkleeman in #352
- [context] Add attemptHeaders to ctx.request() by @igalshilman in #354
- Add service discovery and service protocol checks by @tillrohrmann in #357
- WIP workflow v2 by @igalshilman in #355
- [workflow] Support resolving durable promises during recovery by @igalshilman in #358
- [examples] Restructure the examples by @igalshilman in #359
- [clients] Use the new delay ingress format by @igalshilman in #360
- [clients] Add status field for /send by @igalshilman in #361
- Simplify definitions by @igalshilman in #362
- [workflow] Adapt DurablePromise type by @igalshilman in #363
- [client] Implement .result(sendResponse) by @igalshilman in #364
- [clients] A Send is only attachable when an idempotencyKey is used by @igalshilman in #365
- [ingress] Don't set content Type for empty body by @igalshilman in #366
- [workflow] add a context workflowSendClient by @igalshilman in #367
- [logging] Use INFO for lifecycle events by @igalshilman in #368
- Make failure to serialize/deserialize JSON a TerminalError by @igalshilman in #369
- Add basic TSDocs by @igalshilman in #370
- READMEs for 1.0 release by @slinkydeveloper in #372
Full Changelog: v0.9.2...v1.0.0