Changelog¶
All notable changes to rayforce are documented here. This project adheres to
Semantic Versioning.
0.1.0¶
Initial release of the Rust bindings for RayforceDB v2.
Added¶
- Value model. A single reference-counted
Valuehandle (Clone= retain,Drop= release) covering all atom types — bool,u8,i16/i32/i64,f32/f64, symbol, string, date, time, timestamp, and GUID — plus typed nulls. - Containers. Vectors with zero-copy
as_slice::<T>()reads, lists, and dictionaries. - Tables.
Table::newfrom typed columns, column/row accessors,head/tail/take, and inner/left/asof joins. - Query DSL. A fluent builder over
selectandupdatewithcol(..)expressions, arithmetic operator overloads, comparison and aggregation methods, filtering, grouping (by), and ordering. - CSV & splayed I/O.
read_csv/write_csv, plussave_splayed,load_splayed, andload_partedfor on-disk columnar data. - Serialization.
Value::serialize/Value::deserializeround-trips using RayforceDB's native wire format. - Conversions.
ToValue/FromValuefor native Rust types and an optionalchronofeature (default) for temporal interop. - IPC client.
TcpClientto connect to a running RayforceDB server,executequeries, andsend/send_asyncvalues.
Notes¶
- A single live
Runtimeper process;Value,Table, andTcpClientare!Send/!Sync. - An embedded IPC server, window joins, pivots, and feature-gated dataframe/SQL plugins are planned for future releases.