Merge pull request #667 from vadorovsky/workspace-dependencies

cargo: Define dependencies on the workspace level
reviewable/pr629/r42
vadorovsky 1 year ago committed by GitHub
commit f554d42105
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -40,6 +40,48 @@ default-members = [
# CARGO_CFG_BPF_TARGET_ARCH={x86_64,aarch64,arm,riscv64} # CARGO_CFG_BPF_TARGET_ARCH={x86_64,aarch64,arm,riscv64}
] ]
# NOTE(vadorovsky): Neither cargo-udeps nor cargo-machete are able to detect
# unused crates defined in this section. It would be nice to teach either of
# them to do that, but in the meantime we need to be careful.
[workspace.dependencies]
anyhow = { version = "1", default-features = false }
assert_matches = { version = "1.5.0", default-features = false }
async-io = { version = "1.3", default-features = false }
aya = { path = "aya", version = "0.11.0", default-features = false }
aya-bpf = { path = "bpf/aya-bpf", default-features = false }
aya-log = { path = "aya-log", default-features = false }
aya-log-common = { path = "aya-log-common", version = "0.1.13", default-features = false }
aya-log-parser = { path = "aya-log-parser", default-features = false }
aya-obj = { path = "aya-obj", version = "0.1.0", default-features = false }
aya-tool = { path = "aya-tool", default-features = false }
bindgen = { version = "0.66", default-features = false }
bitflags = { version = "2.2.1", default-features = false }
bytes = { version = "1", default-features = false }
cargo_metadata = { version = "0.15.4", default-features = false }
clap = { version = "4", default-features = false }
core-error = { version = "0.0.0", default-features = false }
env_logger = { version = "0.10", default-features = false }
futures = { version = "0.3.12", default-features = false }
hashbrown = { version = "0.14", default-features = false }
indoc = { version = "2.0", default-features = false }
integration-ebpf = { path = "test/integration-ebpf", default-features = false }
lazy_static = { version = "1", default-features = false }
libc = { version = "0.2.105", default-features = false }
log = { version = "0.4", default-features = false }
num_enum = { version = "0.6", default-features = false }
object = { version = "0.31", default-features = false }
parking_lot = { version = "0.12.0", default-features = false }
proc-macro2 = { version = "1", default-features = false }
quote = { version = "1", default-features = false }
rbpf = { version = "0.2.0", default-features = false }
syn = { version = "2", default-features = false }
tempfile = { version = "3", default-features = false }
testing_logger = { version = "0.1.1", default-features = false }
thiserror = { version = "1", default-features = false }
tokio = { version = "1.24.0", default-features = false }
which = { version = "4.4.0", default-features = false }
xtask = { path = "xtask", default-features = false }
[profile.dev] [profile.dev]
panic = "abort" panic = "abort"

@ -8,9 +8,9 @@ edition = "2021"
proc-macro = true proc-macro = true
[dependencies] [dependencies]
proc-macro2 = "1.0" proc-macro2 = { workspace = true }
quote = "1.0" quote = { workspace = true }
syn = { version = "2.0", features = ["full"] } syn = { workspace = true, default-features = true, features = ["full"] }
[dev-dependencies] [dev-dependencies]
aya-bpf = { path = "../bpf/aya-bpf" } aya-bpf = { workspace = true }

@ -10,7 +10,7 @@ documentation = "https://docs.rs/aya-log"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
num_enum = { version = "0.6", default-features = false } num_enum = { workspace = true }
[lib] [lib]
path = "src/lib.rs" path = "src/lib.rs"

@ -4,11 +4,11 @@ version = "0.1.0"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
aya-log-common = { path = "../aya-log-common" } aya-log-common = { workspace = true }
aya-log-parser = { path = "../aya-log-parser" } aya-log-parser = { workspace = true }
proc-macro2 = "1.0" proc-macro2 = { workspace = true }
quote = "1.0" quote = { workspace = true }
syn = "2.0" syn = { workspace = true }
[lib] [lib]
proc-macro = true proc-macro = true

@ -4,7 +4,7 @@ version = "0.1.11-dev.0"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
aya-log-common = { path = "../aya-log-common" } aya-log-common = { workspace = true }
[lib] [lib]
path = "src/lib.rs" path = "src/lib.rs"

@ -11,16 +11,16 @@ documentation = "https://docs.rs/aya-log"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
aya = { path = "../aya", version = "0.11.0", features = ["async_tokio"] } aya = { workspace = true, features = ["async_tokio"] }
aya-log-common = { path = "../aya-log-common", version = "0.1.13" } aya-log-common = { workspace = true }
thiserror = "1" bytes = { workspace = true }
log = "0.4" log = { workspace = true }
bytes = "1.1" thiserror = { workspace = true }
tokio = { version = "1.24" } tokio = { workspace = true, features = ["rt"] }
[dev-dependencies] [dev-dependencies]
env_logger = "0.10" env_logger = { workspace = true }
testing_logger = "0.1.1" testing_logger = { workspace = true }
[lib] [lib]
path = "src/lib.rs" path = "src/lib.rs"

@ -11,19 +11,19 @@ documentation = "https://docs.rs/aya-obj"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
bytes = "1" bytes = { workspace = true }
log = "0.4" core-error = { workspace = true, default-features = true }
object = { version = "0.31", default-features = false, features = [ hashbrown = { workspace = true, default-features = true }
log = { workspace = true }
object = { workspace = true, default-features = false, features = [
"elf", "elf",
"read_core", "read_core",
] } ] }
hashbrown = { version = "0.14" } thiserror = { workspace = true, default-features = false }
thiserror = { version = "1", default-features = false }
core-error = { version = "0.0.0" }
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = { workspace = true }
rbpf = "0.2.0" rbpf = { workspace = true }
[features] [features]
std = [] std = []

@ -5,8 +5,8 @@ authors = ["Alessandro Decina <alessandro.d@gmail.com>"]
edition = "2021" edition = "2021"
[dependencies] [dependencies]
bindgen = "0.66" bindgen = { workspace = true, default-features = true }
clap = { version = "4", features = ["derive"] } clap = { workspace = true, default-features = true, features = ["derive"] }
anyhow = "1" anyhow = { workspace = true, default-features = true }
thiserror = "1" thiserror = { workspace = true }
tempfile = "3" tempfile = { workspace = true }

@ -11,26 +11,26 @@ documentation = "https://docs.rs/aya"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
async-io = { version = "1.3", optional = true } async-io = { workspace = true, optional = true }
aya-obj = { path = "../aya-obj", version = "0.1.0", features = ["std"] } aya-obj = { workspace = true, features = ["std"] }
bitflags = "2.2.1" bitflags = { workspace = true }
bytes = "1" bytes = { workspace = true }
lazy_static = "1" lazy_static = { workspace = true }
libc = { version = "0.2.105" } libc = { workspace = true }
log = "0.4" log = { workspace = true }
object = { version = "0.31", default-features = false, features = [ object = { workspace = true, default-features = false, features = [
"elf", "elf",
"read_core", "read_core",
"std", "std",
] } ] }
parking_lot = { version = "0.12.0", features = ["send_guard"] } parking_lot = { workspace = true }
thiserror = "1" thiserror = { workspace = true }
tokio = { version = "1.24.0", features = ["rt"], optional = true } tokio = { workspace = true, features = ["rt"], optional = true }
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = { workspace = true }
futures = { version = "0.3.12", default-features = false, features = ["std"] } futures = { workspace = true }
tempfile = "3" tempfile = { workspace = true }
[features] [features]
default = [] default = []

@ -5,26 +5,22 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
anyhow = "1" anyhow = { workspace = true, default-features = true }
assert_matches = "1.5.0" assert_matches = { workspace = true }
aya = { path = "../../aya" } aya = { workspace = true }
aya-log = { path = "../../aya-log" } aya-log = { workspace = true }
aya-obj = { path = "../../aya-obj" } aya-obj = { workspace = true }
libc = { version = "0.2.105" } libc = { workspace = true }
log = "0.4" log = { workspace = true }
object = { version = "0.31", default-features = false, features = [ object = { workspace = true }
"elf", rbpf = { workspace = true }
"read_core", tokio = { workspace = true, default-features = false, features = [
"std",
] }
rbpf = "0.2.0"
tokio = { version = "1.24", default-features = false, features = [
"macros", "macros",
"time", "time",
] } ] }
[build-dependencies] [build-dependencies]
cargo_metadata = { version = "0.15.4", default-features = false } cargo_metadata = { workspace = true }
# TODO(https://github.com/rust-lang/cargo/issues/12375): this should be an artifact dependency, but # TODO(https://github.com/rust-lang/cargo/issues/12375): this should be an artifact dependency, but
# it's not possible to tell cargo to use `-Z build-std` to build it. We cargo-in-cargo in the build # it's not possible to tell cargo to use `-Z build-std` to build it. We cargo-in-cargo in the build
# script to build this, but we want to teach cargo about the dependecy so that cache invalidation # script to build this, but we want to teach cargo about the dependecy so that cache invalidation
@ -38,4 +34,4 @@ cargo_metadata = { version = "0.15.4", default-features = false }
# workflows with stable cargo; stable cargo outright refuses to load manifests that use unstable # workflows with stable cargo; stable cargo outright refuses to load manifests that use unstable
# features. # features.
integration-ebpf = { path = "../integration-ebpf" } integration-ebpf = { path = "../integration-ebpf" }
xtask = { path = "../../xtask" } xtask = { workspace = true }

@ -5,13 +5,13 @@ authors = ["Alessandro Decina <alessandro.d@gmail.com>"]
edition = "2021" edition = "2021"
[dependencies] [dependencies]
anyhow = "1" anyhow = { workspace = true, default-features = true }
aya-tool = { path = "../aya-tool" } aya-tool = { workspace = true }
cargo_metadata = "0.15.4" cargo_metadata = { workspace = true }
clap = { version = "4", features = ["derive"] } clap = { workspace = true, default-features = true, features = ["derive"] }
indoc = "2.0" indoc = { workspace = true }
proc-macro2 = "1" proc-macro2 = { workspace = true }
quote = "1" quote = { workspace = true }
syn = "2" syn = { workspace = true }
tempfile = "3" tempfile = { workspace = true }
which = { version = "4.4.0", default-features = false } which = { workspace = true }

Loading…
Cancel
Save