v2.6.1 is a patch release with two bug fixes and a CLI improvement.
Breaking Changes
TypeScript: Generated optional fields now use optional key syntax
⚠️ Small breaking change for some TypeScript users. Generated TypeScript types forOption<T>fields have changed from required keys with anundefinedvalue to truly optional keys:// Before (v2.6.0 and earlier) { foo: string | undefined; } // After (v2.6.1) { foo?: string | undefined; }If your TypeScript code explicitly passes
undefinedfor optional reducer or procedure arguments, or relies on{ foo: T | undefined }being a required key, you may need to update your call sites. This will require no action from almost all TypeScript users and it addresses a bug in the implementation of 2.0, so we've chosen to make this small breaking change.
(#4940)
Bug Fixes
Fix TypeScript optional row keys
Generated optional fields now use optional key syntax. See Breaking Changes above.
(#4940)
Fix Identity and ConnectionId regression in Procedures
A regression introduced in 2.4 caused ctx.sender and ctx.connection_id to always be empty inside procedure contexts. This has been corrected — callers' identity and connection ID are now properly propagated again.
(#5323)
CLI Improvements
spacetime init --template now shows available templates
Running spacetime init --template without an argument now prints the list of available templates and a link to the website, rather than failing silently.
(#5264)
What's Changed
- Fix TypeScript optional row keys by @clockwork-labs-bot in #4940
- spacetime init --template without arg prints template list and link to website by @clockwork-tien in #5264
- [Procedures] Fix
IdentityandConnectionIdRegression by @kistz in #5323
Full Changelog: v2.6.0...v2.6.1