🥇 We're getting close! 🥇
We're full steam ahead toward our 1.0 release soon! This release candidate brings a sneak peek at lots of upcoming changes.
This release will require a data wipe, because we restructured the SpacetimeDB directory structure.
Some highlights:
- Lots of performance improvements!
- Removed the
println!andeprintlnmacros in favor oflog::info!andlog::error! - Fix defining multiple tables on the same
structin Rust modules - CLI
- Fixed
spacetime energy balancenot working at all - The
spacetime dnssubcommand is nowspacetime rename - When updating the
cli.tomlconfig file, comments and formatting are preserved
- Fixed
- C#
- New C# index syntax
- Reduce noisy C# compilation errors
- Fixed a bug where C# modules would not build if .NET 9 was installed on the system
What's Changed
- commitlog: Introduce epoch by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/1851
- Remove jdetter as codeowner for now by @jdetter in https://github.com/clockworklabs/SpacetimeDB/pull/1939
- Fix benches for ia_loop, circles by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1922
- Logical to physical plan lowering by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1910
- Be more careful about endianness with Identity and Address by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/1926
- Simplify benchmarking wrappers by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/1951
- Decode identity correctly by @jsdt in https://github.com/clockworklabs/SpacetimeDB/pull/1952
- Removing dead code: Relational ops and cursor by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1956
- Get
jsonwebtokenandjwksforks from crates.io by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1958 - Add LICENSE file to
sql-parsercrate by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1959 - Add missing LICENSE by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1960
- Bump version to 1.0.0-rc2 by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1962
- Add typing context for lowering by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/1963
- Add test for light update by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/1953
- Clean up benchmark .spacetime in CI by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/1968
- refactor: encode type info implicitly in the physical plan by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/1938
- CLI - Remove unused
default_identitystuff by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1969 - CLI - Tell users if they're already logged in by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1955
- CLI - Fix stale helptext instructing users to use
spacetime identityby @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1954 - commitlog: Small tweaks by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/1978
- NFC: Remove unused fsync param in benchmarks by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/1981
- Directory structure impl by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/1879
- Bump C# versions to
-hotfix1by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1984 - Light updates test: Ensure subcriptions have been applied before calling reducers by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/1979
- Optimize integrate_generated_columns by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/1895
- Update run_standalone_temp.sh to the new folder specification by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1990
- Clean up auth related code with traits, and reuse existing key generation code. by @jsdt in https://github.com/clockworklabs/SpacetimeDB/pull/1988
- core: Make NDV non-zero by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/1985
- test: No divide by zero for row estimation of empty index by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/1986
- Run and test benchmarks against C# as well by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/1965
- Preserve reducer order in schema conversion by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/1987
- Durability Provider by @Shubham8287 in https://github.com/clockworklabs/SpacetimeDB/pull/1864
- Fix flaky oidc tests by @jsdt in https://github.com/clockworklabs/SpacetimeDB/pull/2000
- C# endianness fixes by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/1964
- Rip useless names out of RawDef by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/1918
- commitlog: Fix set_epoch by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/2005
- create commitlog dir in fs::New by @Shubham8287 in https://github.com/clockworklabs/SpacetimeDB/pull/2006
- Don't autogen schedule fields by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/1894
- Remove problematic debug assertions by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/2010
- CLI should not depend on rustup by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/1996
- Speed up
state_view::Iterby special casing committed-with-no-deletes by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2003 - Rust SDK: Actual client-side indices for unique constraints by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/1909
- Decide that BSATN
bytethat ain't 0 or 1 is not a validAV::Boolby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2026 - Add
Layout.fixed: boolfor a fast path ineq_row_in_page&row_type_visitorby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2025 - Add
static_bsatn_validator&validate_bsatnby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2029 - Add
Static(Bsatn)Layout::deserialize_row_intoby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2032 - Remove IO macros by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1929
- Migrate C# client-side reducer enum to the new syntax by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2033
- Rust SDK: no more reducer args structs by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/2036
- Fix subscription benchmarks by fixing
create_table_for_test_with_the_worksby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2027 - move unique constraint checking until after optimistic insertion by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2037
- Allocation pool the chunked iters in
InstanceEnvby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2038 - Avoid a multimap when the index is unique by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2044
- Fix declaration order of ScheduleAt in C# by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/2007
- commitlog: Provide
segment_lenmethod for segments by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/2042 - Fix some places where trying to parse an empty string could panic. by @jsdt in https://github.com/clockworklabs/SpacetimeDB/pull/2051
- Fix spacetime server clear by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/2055
- query rewriter by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/2031
- Migrate C# ModuleDef to V9 by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/1670
- fix: filter pushdown over table scan by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/2063
- commitlog: Fix offset index truncation by @kim in https://github.com/clockworklabs/SpacetimeDB/pull/2073
- fix: qualified projection columns by @joshua-spacetime in https://github.com/clockworklabs/SpacetimeDB/pull/2070
- commitlog: Make memory segment behave like
O_APPENDby @kim in https://github.com/clockworklabs/SpacetimeDB/pull/2072 - CLI - Remove deprecated use of the
--project-pathflag by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/915 - Reduce noisy C# compilation errors by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2067
- Split Iter & IterByColRange types into Tx and MutTxId versions by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/2043
- Tweak scheduled_at macro syntax by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/2054
- Server-side implementation of incremental subscription changes by @jsdt in https://github.com/clockworklabs/SpacetimeDB/pull/2030
- Implement the
identityhost call andctx.identity()in Rust by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/2085 - Preserve the comments of the "cli.toml" on changes by @mamcx in https://github.com/clockworklabs/SpacetimeDB/pull/2002
- CLI - Confirm before publishing to non-local servers by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/2086
- C#: fix class names for unique column indices by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2088
- CLI - Fix
spacetime energy balancenot working by @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/2087 - Use a spinner to show that wasm is compiling in spacetime generate by @coolreader18 in https://github.com/clockworklabs/SpacetimeDB/pull/2057
- Enforce .NET 8 SDK for new C# modules by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2046
- Implement
ctx.Identityfor C# by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2091 - Implement new C# index syntax by @RReverser in https://github.com/clockworklabs/SpacetimeDB/pull/2078
- CLI -
dnssubcommand becomesrenameby @bfops in https://github.com/clockworklabs/SpacetimeDB/pull/1694 - datastore: insert via BSATN instead of via PV by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2069
- Extract
MutTxId::tx_state_removed_index(&self, index_id) -> boolby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2095 - Extract
InstanceEnv::project_cols_bsatnby @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2096 - Updated version to 1.0.0-rc3 by @cloutiertyler in https://github.com/clockworklabs/SpacetimeDB/pull/2059
- Use
println/eprintlnin the quickstart-chat client, notlogby @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/2099 - perf(2019): skip
PointerMapgiven a unique index by @Centril in https://github.com/clockworklabs/SpacetimeDB/pull/2092 - Make automatic migrations deterministic by @kazimuth in https://github.com/clockworklabs/SpacetimeDB/pull/2104
- Fix defining multiple tables on the same
structin Rust modules by @gefjon in https://github.com/clockworklabs/SpacetimeDB/pull/2103
Full Changelog: https://github.com/clockworklabs/SpacetimeDB/compare/v1.0.0-rc2-hotfix2...v1.0.0-rc3-hotfix7
