Skip to content

2.12.2

Latest

Choose a tag to compare

@github-actions github-actions released this 31 Oct 05:53
cf56110

Fix suspended workflow replay cleanup and read-only reconstruction.

  • Queries and update validators retain state at a pending activity, timer, condition or child instead of seeing disposal-time mutations.
  • Disposal-only workflow logs and durable commands are discarded quietly, including cleanup that yields. Real completion, failure and cooperative cancellation retain their normal history-backed cleanup.
  • Query, validator and accepted-update reconstruction stop before executing an unrecorded side-effect callback. Normal execution still authors it once, and cold replay consumes its recorded result.
  • Python can physically execute ordinary finally blocks and context-manager exits while disposing of suspended generators. Put external I/O in Activities; use cancellation shielding when required.

No wire or worker-protocol change. The Python cleanup guide describes the SDK 2.12.2+ behavior.

Qualification: all six required Python 3.10–3.15 jobs and all 21 final main checks pass; the full Python 3.12 source suite passes 3,650 tests (2 skipped; 125 integration cases run separately). The actual PyPI wheel matches the exact merged source across all 40 package files and passes 133 installed lifecycle, replay-corpus and TLS tests, plus the installed update-conformance shard. Normal publication and package verification.

Fixes #178 through #217. Full changelog.