2022-12-06 14:47:02 +01:00
|
|
|
# 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]
|
2023-09-17 13:14:06 +02:00
|
|
|
resolver = "2"
|
2022-12-06 14:47:02 +01:00
|
|
|
|
|
|
|
members = [
|
2023-12-09 09:49:47 +01:00
|
|
|
"build",
|
2023-09-21 21:32:44 +02:00
|
|
|
"castore",
|
2022-12-08 22:19:22 +01:00
|
|
|
"cli",
|
2022-12-06 14:47:02 +01:00
|
|
|
"eval",
|
|
|
|
"eval/builtin-macros",
|
2023-11-03 12:34:37 +01:00
|
|
|
"glue",
|
2024-05-14 13:55:43 +02:00
|
|
|
"nar-bridge",
|
2023-01-31 12:18:03 +01:00
|
|
|
"nix-compat",
|
2024-07-22 16:51:42 +02:00
|
|
|
"nix-compat-derive",
|
|
|
|
"nix-compat-derive-tests",
|
2022-12-31 16:13:59 +01:00
|
|
|
"serde",
|
2022-12-06 14:47:02 +01:00
|
|
|
"store",
|
2024-06-06 15:44:11 +02:00
|
|
|
"tracing",
|
2022-12-06 14:47:02 +01:00
|
|
|
]
|
|
|
|
|
2024-05-13 18:42:50 +02:00
|
|
|
[workspace.lints.clippy]
|
|
|
|
# Allow blocks_in_conditions due to false positives with #[tracing::instrument(…)]:
|
|
|
|
# https://github.com/rust-lang/rust-clippy/issues/12281
|
|
|
|
blocks_in_conditions = "allow"
|
|
|
|
|
2024-08-28 23:54:46 +02:00
|
|
|
[workspace.dependencies]
|
|
|
|
anyhow = "1.0.86"
|
|
|
|
async-compression = "0.4.12"
|
|
|
|
async-process = "2.2.4"
|
|
|
|
async-stream = "0.3.5"
|
|
|
|
async-tempfile = "0.4.0"
|
|
|
|
axum = "0.7.5"
|
|
|
|
bigtable_rs = { git = "https://github.com/liufuyang/bigtable_rs", rev = "1818355a5373a5bc2c84287e3a4e3807154ac8ef" }
|
|
|
|
bitflags = "2.6.0"
|
|
|
|
blake3 = "1.5.4"
|
|
|
|
bstr = "1.10.0"
|
|
|
|
bytes = "1.7.1"
|
|
|
|
clap = "4.5.16"
|
|
|
|
codemap = "0.1.3"
|
|
|
|
codemap-diagnostic = "0.1.2"
|
|
|
|
count-write = "0.1.0"
|
|
|
|
criterion = "0.5"
|
|
|
|
data-encoding = "2.6.0"
|
|
|
|
digest = "0.10.7"
|
|
|
|
dirs = "4.0.0"
|
|
|
|
ed25519 = "2.2.3"
|
|
|
|
ed25519-dalek = "2.1.1"
|
|
|
|
enum-primitive-derive = "0.3.0"
|
|
|
|
erased-serde = "0.4.5"
|
|
|
|
expect-test = "1.5.0"
|
|
|
|
fastcdc = "3.1.0"
|
|
|
|
fuse-backend-rs = "0.11.0"
|
|
|
|
futures = { version = "0.3.30", default-features = false }
|
|
|
|
genawaiter = { version = "0.99.1", default-features = false }
|
|
|
|
glob = "0.3.1"
|
|
|
|
hex-literal = "0.4.1"
|
|
|
|
http = "1.1.0"
|
|
|
|
hyper-util = "0.1.7"
|
|
|
|
indicatif = "0.17.8"
|
|
|
|
itertools = "0.12.1"
|
|
|
|
lazy_static = "1.5.0"
|
|
|
|
lexical-core = "0.8.5"
|
|
|
|
libc = "0.2.158"
|
|
|
|
lru = "0.12.4"
|
|
|
|
magic = "0.16.2"
|
|
|
|
md-5 = "0.10.6"
|
|
|
|
mimalloc = "0.1.43"
|
|
|
|
nix = "0.27.1"
|
|
|
|
nohash-hasher = "0.2.0"
|
|
|
|
nom = "7.1.3"
|
|
|
|
num-traits = "0.2.19"
|
|
|
|
object_store = "0.10.2"
|
|
|
|
opentelemetry = "0.24.0"
|
|
|
|
opentelemetry-http = "0.13.0"
|
|
|
|
opentelemetry-otlp = "0.17.0"
|
|
|
|
opentelemetry_sdk = "0.24.1"
|
|
|
|
os_str_bytes = "6.6"
|
|
|
|
parking_lot = "0.12.3"
|
|
|
|
path-clean = "0.1"
|
|
|
|
petgraph = "0.6.5"
|
|
|
|
pin-project = "1.1"
|
|
|
|
pin-project-lite = "0.2.14"
|
|
|
|
pretty_assertions = "1.4.0"
|
|
|
|
proc-macro2 = "1.0.86"
|
|
|
|
proptest = { version = "1.5.0", default-features = false }
|
|
|
|
prost = "0.13.1"
|
|
|
|
prost-build = "0.13.1"
|
|
|
|
quote = "1.0.37"
|
|
|
|
redb = "2.1.2"
|
|
|
|
regex = "1.10.6"
|
|
|
|
reqwest = { version = "0.12.7", default-features = false }
|
|
|
|
reqwest-middleware = "0.3.3"
|
|
|
|
reqwest-tracing = { version = "0.5.3", default-features = false }
|
|
|
|
rnix = "0.11.0"
|
|
|
|
rowan = "*"
|
|
|
|
rstest = "0.19.0"
|
|
|
|
rstest_reuse = "0.6.0"
|
|
|
|
rustc-hash = "2.0.0"
|
|
|
|
rustyline = "10.1.1"
|
|
|
|
serde = "1.0.209"
|
|
|
|
serde_json = "1.0"
|
|
|
|
serde_qs = "0.12.0"
|
|
|
|
serde_tagged = "0.3.0"
|
|
|
|
serde_with = "3.9.0"
|
|
|
|
sha1 = "0.10.6"
|
|
|
|
sha2 = "0.10.8"
|
|
|
|
sled = "0.34.7"
|
|
|
|
smol_str = "0.2.2"
|
|
|
|
tabwriter = "1.4"
|
|
|
|
tempfile = "3.12.0"
|
|
|
|
test-strategy = "0.2.1"
|
|
|
|
thiserror = "1.0.63"
|
|
|
|
threadpool = "1.8.1"
|
|
|
|
tokio = "1.39.3"
|
|
|
|
tokio-listener = "0.4.3"
|
|
|
|
tokio-retry = "0.3.0"
|
|
|
|
tokio-stream = "0.1.15"
|
|
|
|
tokio-tar = "0.3.1"
|
|
|
|
tokio-test = "0.4.4"
|
|
|
|
tokio-util = "0.7.11"
|
|
|
|
tonic = "0.12.2"
|
|
|
|
tonic-build = "0.12.2"
|
|
|
|
tonic-health = { version = "0.12.2", default-features = false }
|
|
|
|
tonic-reflection = "0.12.2"
|
|
|
|
tower = "0.4.13"
|
|
|
|
tower-http = "0.5.2"
|
|
|
|
tracing = "0.1.40"
|
|
|
|
tracing-indicatif = "0.3.6"
|
|
|
|
tracing-opentelemetry = "0.25.0"
|
|
|
|
tracing-subscriber = "0.3.18"
|
|
|
|
tracing-tracy = "0.11.2"
|
|
|
|
trybuild = "1.0.99"
|
|
|
|
url = "2.5.2"
|
|
|
|
vhost = "0.6"
|
|
|
|
vhost-user-backend = "0.8"
|
|
|
|
virtio-bindings = "0.2.2"
|
|
|
|
virtio-queue = "0.7"
|
|
|
|
vm-memory = "0.10"
|
|
|
|
vmm-sys-util = "0.11"
|
|
|
|
vu128 = "1.1.0"
|
|
|
|
walkdir = "2.5.0"
|
|
|
|
wu-manber = { git = "https://github.com/tvlfyi/wu-manber.git" }
|
|
|
|
xattr = "1.3.1"
|
|
|
|
zstd = "0.13.2"
|
|
|
|
|
2022-12-06 14:47:02 +01:00
|
|
|
# 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
|