v1.47.0
Highlights
- User metadata fields (StaticSummary, StaticDetails, CurrentDetails, Activity Summary, Timer Summary, AwaitOptions) are no longer marked as experimental.
- Workers automatically enroll into poller autoscaling when the namespace advertises the
PollerAutoscalingAutoEnrollcapability. This only applies to poller types left at their default; explicitly configured pollers are left unchanged. - Added
worker.Options.PreferredVersionProvider, which can select the version recorded by a newly encounteredworkflow.GetVersioncall. This supports gradual rollout of a newGetVersioncall before activating its new behavior. - Added nexus support for workflow updates and external storage.
- Numerous bug fixes: see
CHANGELOG.mdfor details.
What's Changed
- CI: shorten CI job names by @yuandrew in https://github.com/temporalio/sdk-go/pull/2429
- Implement preferred version provider callback by @Sushisource in https://github.com/temporalio/sdk-go/pull/2447
- Add CHANGELOG.md for each contrib package by @yuandrew in https://github.com/temporalio/sdk-go/pull/2451
- fix: Honor context cancellation in
ResourceBasedSlotSupplier.ReserveSlotby @ridwanakf in https://github.com/temporalio/sdk-go/pull/2458 - Make changelog check smarter by @yuandrew in https://github.com/temporalio/sdk-go/pull/2457
- Fix schedule catchup window documentation by @chaptersix in https://github.com/temporalio/sdk-go/pull/2460
- fix: Avoid blocking eager TryReserveSlot during resource tuner ramp wait by @ridwanakf in https://github.com/temporalio/sdk-go/pull/2444
- contrib/opentelemetry: opt-in monotonic counters by @yuandrew in https://github.com/temporalio/sdk-go/pull/2452
- docs: update contributing guide by @tconley1428 in https://github.com/temporalio/sdk-go/pull/2454
- Bump github.com/DataDog/dd-trace-go/v2 from 2.4.0 to 2.8.1 in /contrib/datadog by @dependabot[bot] in https://github.com/temporalio/sdk-go/pull/2464
- Bump actions/setup-go from 6.4.0 to 6.5.0 by @dependabot[bot] in https://github.com/temporalio/sdk-go/pull/2440
- Prep changelogs for contrib/opentelemetry and contrib/datadog releases by @yuandrew in https://github.com/temporalio/sdk-go/pull/2465
- Update READMEs with "Add to your project" instructions by @yuandrew in https://github.com/temporalio/sdk-go/pull/2455
- NEXUS-474: Support UpdateWorkflow as a Nexus Operation by @mavemuri in https://github.com/temporalio/sdk-go/pull/2417
- Auto-enroll pollers into autoscaling on PollerAutoscalingAutoEnroll (Go SDK) by @veeral-patel in https://github.com/temporalio/sdk-go/pull/2442
- [AI-222] Add ADK Go (v2) Plugin by @DABH in https://github.com/temporalio/sdk-go/pull/2439
- Bump golang.org/x/crypto from 0.51.0 to 0.52.0 in /contrib/googleadk by @dependabot[bot] in https://github.com/temporalio/sdk-go/pull/2469
- Update changelog for contrib/googleadk pacakge by @DABH in https://github.com/temporalio/sdk-go/pull/2470
- Allow query results to use external storage by @kritibehl in https://github.com/temporalio/sdk-go/pull/2459
- Remove experimental markers from user metadata fields by @laniehei in https://github.com/temporalio/sdk-go/pull/2473
- googleadk: add NewPlugin worker-plugin wiring (v0.2.0) by @DABH in https://github.com/temporalio/sdk-go/pull/2478
- OpenTelemetry: Fix stale SDK dep by @yuandrew in https://github.com/temporalio/sdk-go/pull/2474
- CLAUDE.md that's symlinked to AGENTS.md by @yuandrew in https://github.com/temporalio/sdk-go/pull/2476
- feat(extstore): update s3 key encoding to be consistent with s3's safe characters and the other temporal sdks. by @cconstable in https://github.com/temporalio/sdk-go/pull/2477
- Defer poller initialization to start() by @yuandrew in https://github.com/temporalio/sdk-go/pull/2471
- Upgrade GRPC dep to v1.82.1 by @yuandrew in https://github.com/temporalio/sdk-go/pull/2483
- Add Standalone Activity support to Temporal Nexus Operation Handler by @Quinn-With-Two-Ns in https://github.com/temporalio/sdk-go/pull/2381
- Integrate Temporal API 1.63.4 by @jmaeagle99 in https://github.com/temporalio/sdk-go/pull/2491
- Make eager activity reservation limit configurable by @Sushisource in https://github.com/temporalio/sdk-go/pull/2493
- Moving LinkConverter to api-go by @Evanthx in https://github.com/temporalio/sdk-go/pull/2494
- Honor WorkflowDefinitionFactory for dynamic workflows by @datashaman in https://github.com/temporalio/sdk-go/pull/2449
- feat(extstore): Add support for Nexus task handling by @jmaeagle99 in https://github.com/temporalio/sdk-go/pull/2496
- fix: honor worker stop while a session poller waits for a token by @ridwanakf in https://github.com/temporalio/sdk-go/pull/2462
- Add missing identity to Heartbeat RPC by @yuandrew in https://github.com/temporalio/sdk-go/pull/2265
- Fix more test flakes by @yuandrew in https://github.com/temporalio/sdk-go/pull/2490
- fix(nexus): clear operation callbacks on 'abandon' cancellation. by @cconstable in https://github.com/temporalio/sdk-go/pull/2485
New Contributors
- @ridwanakf made their first contribution in https://github.com/temporalio/sdk-go/pull/2458
- @mavemuri made their first contribution in https://github.com/temporalio/sdk-go/pull/2417
- @veeral-patel made their first contribution in https://github.com/temporalio/sdk-go/pull/2442
- @DABH made their first contribution in https://github.com/temporalio/sdk-go/pull/2439
- @datashaman made their first contribution in https://github.com/temporalio/sdk-go/pull/2449
Full Changelog: https://github.com/temporalio/sdk-go/compare/v1.46.0...v1.47.0
Fetched July 29, 2026

