32f41458c0
This splits the pure content-addressed layers from tvix-store into a `castore` crate, and only leaves PathInfo related things, as well as the CLI entrypoint in the tvix-store crate. Notable changes: - `fixtures` and `utils` had to be moved out of the `test` cfg, so they can be imported from tvix-store. - Some ad-hoc fixtures in the test were moved to proper fixtures in the same step. - The protos are now created by a (more static) recipe in the protos/ directory. The (now two) golang targets are commented out, as it's not possible to update them properly in the same CL. This will be done by a followup CL once this is merged (and whitby deployed) Bug: https://b.tvl.fyi/issues/301 Change-Id: I8d675d4bf1fb697eb7d479747c1b1e3635718107 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9370 Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: flokli <flokli@flokli.de> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: Connor Brewster <cbrewster@hey.com>
37 lines
1.1 KiB
TOML
37 lines
1.1 KiB
TOML
# This Cargo file is a workspace configuration as per
|
|
# https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html
|
|
#
|
|
# We add this file to get a coherent set of dependencies across Tvix
|
|
# crates by sharing a Cargo.lock. This is necessary because of the
|
|
# currently limited support for Rust builds in Nix.
|
|
#
|
|
# Note that this explicitly does *not* mean that //tvix should be
|
|
# considered "one project": This is simply a workaround for a
|
|
# technical limitation and it should be our aim to remove this
|
|
# workspace file and make the subprojects independent.
|
|
#
|
|
# Note also that CI targets for actual projects should *not* be tied
|
|
# to //tvix, but to its subprojects. A potential file at
|
|
# //tvix/default.nix should likely *not* expose anything other than
|
|
# extra steps or other auxiliary targets.
|
|
|
|
[workspace]
|
|
resolver = "2"
|
|
|
|
members = [
|
|
"castore",
|
|
"cli",
|
|
"eval",
|
|
"eval/builtin-macros",
|
|
"nix_cli",
|
|
"nix-compat",
|
|
"serde",
|
|
"store",
|
|
]
|
|
|
|
# Add a profile to all targets that enables release optimisations, but
|
|
# retains debug symbols. This is great for use with
|
|
# benchmarking/profiling tools.
|
|
[profile.release-with-debug]
|
|
inherits = "release"
|
|
debug = true
|