v2.7.1
deepseek-ai/DeepSeek-OCRv2.7.1Jul 30, 2026by rekhoff
AI Summary
SpacetimeDB v2.7.1 focuses on reliability and observability, fixing critical bugs related to sequence migrations, scheduled reducers, and JWT dependencies, while enhancing network performance.
Key Highlights
- Fixes for scheduled-reducer interval drift and safer sequence migrations
- Restoration of JWT/JWKS dependencies to resolve authentication issues
- Enhanced TypeScript SDK reconnection on network focus changes
- Infrastructure improvements including HTTP/2 enablement and CORS caching
New Features
- Convex migration guide documentation
- HTTP/2 support on ingress paths
- CORS preflight response caching
- Automatic reconnection for TypeScript SDK
- Enhanced error logging with database identity and reducer name
Full Release Notes
## Bug Fixes ### Safer sequence migrations Adding a sequence to an existing integer column now correctly checks the full sequence range, including the maximum representable value. Migrations with existing conflicting values fail during the precheck rather than proceeding to a later unique-constraint violation. ([#5561](<https://github.com/clockworklabs/SpacetimeDB/pull/5561>)) ### Preserve column defaults in V10 schemas V10 schema serialization now retains declared column default values. This fixes the V10 database schema endpoint and `extract-schema`, so schema diff, compatibility, code generation, and migration tooling can observe defaults. ([#5508](<https://github.com/clockworklabs/SpacetimeDB/pull/5508>)) ### Fix scheduled-reducer interval drift Scheduled reducers and procedures now use the reducer's own `timestamp` parameter to compute the next interval, instead of `Timestamp::now()`. This prevents long-running scheduled reducers from drifting over repeated runs. ([#5574](<https://github.com/clockworklabs/SpacetimeDB/pull/5574>)) ### Restore JWT/JWKS dependencies The removal of the `spacetimedb-jsonwebtoken` and `spacetimedb-jwks` dependencies has been reverted due to `Keats/jsonwebtoken#510`. This restores the previous authentication behavior. ([#5578](<https://github.com/clockworklabs/SpacetimeDB/pull/5578>)) ### TypeScript SDK reconnects on refocus and network return The TypeScript SDK now listens for `visibilitychange`, `focus`, `online`, and `pageshow` events in the browser. When a tab returns to the foreground or the network comes back, stalled reconnect backoffs are reset and dead sockets are torn down and rebuilt automatically. ([#5525](<https://github.com/clockworklabs/SpacetimeDB/pull/5525>)) ### Fix task leak on module init A leaked metric-tracking task is now dropped when module initialization fails, particularly during replay errors. A new `module_host_init_attempts` counter is also recorded on every init attempt for per-database alerting. ([#5601](<https://github.com/clockworklabs/SpacetimeDB/pull/5601>)) ## Reliability & Observability ### Reducer errors log database identity and reducer name When a reducer returns an error, the log line now includes the database identity and the reducer name, making it easier to correlate errors with upstream connection or proxy issues. ([#5473](<https://github.com/clockworklabs/SpacetimeDB/pull/5473>)) ## Release & Packaging ### Fix npm release artifact handling The release workflow now handles the npm package more robustly, fixing two potential issues during release artifact upload. ([#5593](<https://github.com/clockworklabs/SpacetimeDB/pull/5593>)) ## Networking & Infrastructure ### Enable HTTP/2 SpacetimeDB now enables HTTP/2 on its ingress paths, improving connection multiplexing and reducing latency for clients and internal services. ### Cache CORS preflight responses CORS preflight responses are now cached, reducing redundant preflight round-trips for browser-based clients. ## Documentation ### Convex migration guide The documentation now includes a guide for migrating Convex applications to SpacetimeDB, covering schema design, reducers, views, procedures, HTTP handlers, scheduling, authentication, and client subscriptions. ([#5536](<https://github.com/clockworklabs/SpacetimeDB/pull/5536>)) ## What's Changed - Fix sequence migration prechecks in [#5561](<https://github.com/clockworklabs/SpacetimeDB/pull/5561>) - Preserve column defaults in V10 schemas in [#5508](<https://github.com/clockworklabs/SpacetimeDB/pull/5508>) - Fix scheduled-reducer interval drift in [#5574](<https://github.com/clockworklabs/SpacetimeDB/pull/5574>) - Restore `spacetimedb-jsonwebtoken` and `spacetimedb-jwks` dependencies in [#5578](<https://github.com/clockworklabs/SpacetimeDB/pull/5578>) - TypeScript SDK reconnects on refocus and network return in [#5525](<https://github.com/clockworklabs/SpacetimeDB/pull/5525>) - Fix task leak on module init in [#5601](<https://github.com/clockworklabs/SpacetimeDB/pull/5601>) - Fix npm release artifact handling in [#5593](<https://github.com/clockworklabs/SpacetimeDB/pull/5593>) - Enable HTTP/2 - Cache CORS preflight responses - Log database identity and reducer name on reducer errors in [#5473](<https://github.com/clockworklabs/SpacetimeDB/pull/5473>) - Add the Convex migration guide in [#5536](<https://github.com/clockworklabs/SpacetimeDB/pull/5536>) **Full Changelog**: [v2.7.0-hotfix3...v2.7.1](<https://github.com/clockworklabs/SpacetimeDB/compare/v2.7.0-hotfix3...v2.7.1>)