v2.0.2
clockworklabs/SpacetimeDBv2.0.2Feb 26, 2026by bfops
AI Summary
A bug fix and quality-of-life release following the 2.0 launch, focusing on CLI improvements, durability tuning, and documentation fixes.
Key Highlights
- TypeScript: fix table schema wire name lookup crash
- spacetime dev: fix file watcher ignoring --module-path
- Reduce local durability fsync interval to 10ms (down from 500ms)
- C# SDK: ArrayPool for row iteration buffers to reduce GC pressure
- Don't save source_config to spacetime.json
Full Release Notes
# SpacetimeDB v2.0.2 A bug fix and quality-of-life release following the 2.0 launch. This release focuses on CLI improvements, durability tuning, and documentation fixes. ## Bug fixes - **TypeScript: fix table schema wire name lookup crash.** The TypeScript SDK was using PascalCase accessor names for wire protocol lookups, causing crashes when case conversion was enabled. (#4449) - **`spacetime dev`: fix file watcher ignoring `--module-path`.** When `--module-path` was set via CLI flag or `spacetime.json`, the file watcher still watched the default directory instead. (#4464) - **`spacetime dev`: better error when module directory does not exist.** Previously showed a confusing "could not detect language" error. Now shows the actual missing path. (#4467) - **Fix "Press any key to exit" in templates.** The prompt said "any key" but actually required Enter. Updated text and logic to match. (#4468) - **Don't save `source_config` to `spacetime.json`.** Internal build configuration was being persisted to the user-facing config file. (#4422, #4423) ## Performance - **Reduce local durability fsync interval to 10ms** (down from misconfigured 500ms default), improving confirmed reads latency for local (non-replicated) databases. (#4466, #4420) - **C# SDK: `ArrayPool` for row iteration buffers.** `RawTableIterBase.Enumerator` now rents from `ArrayPool<byte>.Shared` instead of allocating a fresh `byte[]` per step, significantly reducing GC pressure. (#4385) ## Documentation - Correct unique indexes in cheat sheet to use `filter`, not `find`. (#4452) - Correct "table" to "view" in Zen of SpacetimeDB. (#4434) - Update C# docs with `List<T>` returns and `IEnumerable<T>` examples. (#4392) - Fix AI assistant rules links in `llms.txt`. (#4430) - Add ARM M-series CPU note in benchmark readme. (#4426) - Add schedule name correction for LLM rules. (#4370) - Fix Spacerace button and rename nav item to Referrals. (#4458, #4477) ## What's Changed * durability: Default local durability sync interval to 50ms by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/4420 * keynote-2: use rust client by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/4421 * Don't save source_config to spacetime.json by @drogus in https://github.com/clockworklabs/SpacetimeDB/pull/4422 * Remove source-config field from spacetime.json by @drogus in https://github.com/clockworklabs/SpacetimeDB/pull/4423 * CI - Fix smoketests running twice by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/4281 * Update `bump-versions` to support prereleases by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/4384 * Add ARM M-series CPU note in benchmark readme by @aasoni in https://github.com/clockworklabs/SpacetimeDB/pull/4426 * Fix AI assistant rules links in llms.txt by @JulienLavocat in https://github.com/clockworklabs/SpacetimeDB/pull/4430 * Correct "table" to "view" in 00250-zen-of-spacetimedb.md by @knut-egil in https://github.com/clockworklabs/SpacetimeDB/pull/4434 * [C#] Update RawTableIterBase.Enumerator to use `ArrayPool` for buffer by @rekhoff in https://github.com/clockworklabs/SpacetimeDB/pull/4385 * TS: fix `sourceName` in table schema by @Shubham8287 in https://github.com/clockworklabs/SpacetimeDB/pull/4449 * Smoketest subscribe properly respects new confirmed behavior by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/4454 * Fix spacerace button in docs by @jdetter in https://github.com/clockworklabs/SpacetimeDB/pull/4458 * [Docs] [C#] Update docs with `List<T>` returns and `IEnumerable<T>` tests by @rekhoff in https://github.com/clockworklabs/SpacetimeDB/pull/4392 * Correct unique indexes in cheat sheet to use `filter`, not `find` by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/4452 * Add schedule name correction for LLMs by @Boegie19 in https://github.com/clockworklabs/SpacetimeDB/pull/4370 * Bump versions to 2.0.2 by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/4455 * `spacetime dev` - Improve error when module directory does not exist by @clockwork-labs-bot in https://github.com/clockworklabs/SpacetimeDB/pull/4467 * Remove 'Press any key to exit' in basic-rs and basic-cpp templates by @clockwork-labs-bot in https://github.com/clockworklabs/SpacetimeDB/pull/4468 * `cargo bump-versions` properly updates the smoketests lockfile by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/4462 * `spacetime dev` - Fix file watcher ignoring `--module-path` / `spacetime.json` `module_path` by @clockwork-labs-bot in https://github.com/clockworklabs/SpacetimeDB/pull/4464 * Reduce fsync interval to 10ms by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/4466 * fix(docs): Rename spacerace to referrals for nav item by @clockwork-tien in https://github.com/clockworklabs/SpacetimeDB/pull/4477 **Full Changelog**: https://github.com/clockworklabs/SpacetimeDB/compare/v2.0.1...v2.0.2