Pre-release Features
Serverless Lambda Workers
This release introduces a package which can be used together with upcoming changes to the Temporal server & cloud which allow you to run your worker in an AWS Lambda function which the server will invoke as-needed to process Workflow, Activity, and Nexus tasks - allowing you to do away with some of the operational burden of running a fleet of workers. Additional documentation on how to use this feature will be linked here when available.
External Storage
This release includes the external storage feature, which allows offloading payloads to an external storage system (such as Amazon S3) and passes a small reference token into Event History. This allows your workflows to avoid large payload errors and to avoid growing workflow history size too rapidly.
Amazon S3 Storage Driver
This release introduces a package which can be used with external storage to offload large payloads to S3 buckets in AWS instead of inlining them into workflow history. See Store and retrieve large payloads with Amazon S3 for more details and how to enable using this driver with external storage.
What's Changed
- Report driver types through worker heartbeat by @jmaeagle99 in #1371
- Emit workflow task duration information via logging by @jmaeagle99 in #1386
- Create cloud-specific tests by @Sushisource in #1389
- Enable options for concurrent payload visiting by @jmaeagle99 in #1344
- Fix command context awareness to apply to all of DataConverter by @jmaeagle99 in #1387
- Some fixes to the openai agents readme by @tconley1428 in #1391
- Add getattr to _ReplaySafeSpan for SDK attribute delegation by @tconley1428 in #1392
- Experimental: AWS S3 storage driver by @jmaeagle99 in #1388
- Allow external storage to run concurrently and separate from codecs by @jmaeagle99 in #1394
- Adjustments to external storage defaults by @jmaeagle99 in #1404
- Bump tar from 0.4.44 to 0.4.45 in /temporalio/bridge by @dependabot[bot] in #1383
- Update types-protobuf limit by @tconley1428 in #1409
- Update storage driver store context metadata by @jmaeagle99 in #1399
- Bump core commit to latest by @THardy98 in #1413
- Move proto check and test to separate job by @jmaeagle99 in #1412
- Minimize task creation for concurrent payload visiting by @jmaeagle99 in #1414
- Add contrib package for lambda workers by @Sushisource in #1408
- Provide standalone activity run ID to external storage by @jmaeagle99 in #1417
- Bump rustls-webpki from 0.103.4 to 0.103.10 in /temporalio/bridge by @dependabot[bot] in #1384
- Add xdist parallel test task by @tconley1428 in #1415
- Upgrade locked dependencies by @tconley1428 in #1420
- Support running ADK agents outside Temporal workflows by @tconley1428 in #1400
- Fix Google ADK activity tool argument dispatch by @tconley1428 in #1421
- docs: document OpenTelemetryConfig and PrometheusConfig fields by @4444J99 in #1385
- A couple of errata for the README regarding external storage by @eamsden in #1424
- Update README to remove local activities experimental warning by @donald-pinckney in #1334
Core Changes
2026-03-13 - a7611dd8 - Remove system.enableNexus dynamic config flag (temporalio/sdk-core#1151)
2026-03-13 - cf7fcec5 - fix(client): retry WorkflowUpdateHandle::get_result poll (temporalio/sdk-core#1150)
2026-03-16 - 7a6a53f7 - chore(ci): avoid caching rust on PR (temporalio/sdk-core#1159)
2026-03-16 - a039b2d6 - feat(sdk): add schedule handle (temporalio/sdk-core#1132)
2026-03-16 - c6b601de - Fix temporal metrics in C bridge to have temporal_ prefix (temporalio/sdk-core#1156)
2026-03-17 - 2f9d6c8b - fix(core): avoid panic if workflow stream still up during eviction (temporalio/sdk-core#1158)
2026-03-17 - f188eb53 - Add external storage drivers to worker heartbeat (temporalio/sdk-core#1130)
2026-03-18 - db65dd9a - build: make otel opt-in in sdk-core (temporalio/sdk-core#1154)
2026-03-18 - f00f7337 - Allow poller scale-down on timeout when server supports autoscaling (temporalio/sdk-core#1164)
2026-03-18 - f384eeb5 - Fix possible NDE in valid child workflow cancel transition (temporalio/sdk-core#1162)
2026-03-19 - a5e8f7f1 - Update cloud-api protos to v0.12.0 (temporalio/sdk-core#1172)
2026-03-19 - ba203c64 - fix(sdk): re-poll update futures after workflow state changes (temporalio/sdk-core#1153)
2026-03-19 - e49359b2 - chore: bump version to 0.2.0 (temporalio/sdk-core#1169)
2026-03-23 - 4b0d7ed1 - feat(sdk): 💥 add HasWorkflowDefinition trait (temporalio/sdk-core#1173)
2026-03-24 - 31798a48 - rust-toolchain.toml and MSRV checks in CI (temporalio/sdk-core#1175)
2026-03-25 - 18615a7a - fix(sdk): serialize unit as no payloads or null payload (temporalio/sdk-core#1181)
2026-03-25 - acec0e60 - Gate test-only worker telemetry helper (temporalio/sdk-core#1176)
2026-03-26 - 21b65b87 - feat(sdk): 💥 add typed child workflow handle (temporalio/sdk-core#1182)
2026-03-26 - 42e44a75 - feat(metrics): add UpDownCounter metric instrument type (temporalio/sdk-core#1180)
2026-03-27 - 4508ae7d - Update deps & remove unused ones (temporalio/sdk-core#1183)
2026-03-31 - 76f5c9e1 - fix(sdk): implement FusedFuture for wait_condition (temporalio/sdk-core#1192)
2026-03-31 - d03d2ae2 - feat(sdk): external workflow handle (temporalio/sdk-core#1187)
2026-04-01 - 24703da6 - Add standalone activity run id to bridge (temporalio/sdk-core#1189)
2026-04-01 - 5e6b836c - chore(test): add eventually to latency metrics test (temporalio/sdk-core#1193)
2026-04-02 - 71a5caa5 - Fix - provide default (empty) client config when default user config dir does not exist. Create an inner function to inject the default config path easily (temporalio/sdk-core#1194)
2026-04-02 - b3d53ab7 - Validate deployment options and test worker with versioning off and custom build ID (temporalio/sdk-core#1163)
2026-04-02 - ef6e73b8 - Custom async executor for workflows (temporalio/sdk-core#1185)
New Contributors
Full Changelog: 1.24.0...1.25.0