template for future data projects
- Toolchain pinning:
rust-toolchain.tomllocks the channel to stable and keepsrustfmt/clippyavailable so editor tooling is always consistent. - Shared workspace: the root
Cargo.tomldesignatesrust/data-appas the default member and keeps a singleCargo.lock, which makes multi-crate changes atomic. - Faster builds:
.cargo/config.tomlreusestarget/rust, enables incremental builds, and lifts developercodegen-units, while Linux builds pass-fuse-ld=moldfor quicker linking; installmoldplus a compatible linker (e.g.cc) before enabling it in your environment. - Profiles tuned for iteration & CI releases: dev builds keep overflow checks on with high parallelism, release builds use thin-LTO/panic-abort defaults to keep iteration fast without sacrificing correctness.
- Getting started: run
cargo run -p data_appfrom the repo root to exercise the template; add additional members underrust/and the workspacemembersarray as needed.