blob: 9e8972be29ed37a3490a6bf95f7524b655054b82 [file] [log] [blame]
[workspace]
members = [
"build_scripts",
"cmd_runner",
"derive_fuzztest",
"derive_fuzztest/fuzz",
"derive_fuzztest_macro",
"handle_map",
"lock_adapter",
"pourover",
"pourover_macro",
]
default-members = ["build_scripts"]
resolver = "2"
[workspace.lints.rust]
missing_docs = "deny"
trivial_casts = "deny"
trivial_numeric_casts = "deny"
unsafe_code = "deny"
unsafe_op_in_unsafe_fn = "deny"
unused_extern_crates = "deny"
unused_import_braces = "deny"
unused_results = "deny"
[workspace.lints.clippy]
expect_used = "deny"
indexing_slicing = "deny"
panic = "deny"
unwrap_used = "deny"
[workspace.dependencies]
# local crates
cmd_runner = { path = "cmd_runner" }
derive_fuzztest = { path = "derive_fuzztest" }
derive_fuzztest_macro = { path = "derive_fuzztest_macro" }
lock_adapter = { path = "lock_adapter" }
handle_map = { path = "handle_map" }
pourover = { path = "pourover" }
pourover_macro = { path = "pourover_macro" }
# from crates.io
anyhow = "1.0.75"
arbitrary = "1.3.2"
clap = { version = "4.4.11", features = ["derive"] }
criterion = { version = "0.5.1", features = ["html_reports"] }
jni = "0.21.1"
lazy_static = { version = "1.4.0", features = ["spin_no_std"] }
libfuzzer-sys = "0.4.7"
nom = { version = "7.1.3", default-features = false }
pretty_assertions = "1.4.0"
prettyplease = "0.2.16"
proc-macro2 = "1.0"
proptest = "1.4.0"
proptest-arbitrary-interop = { git = "https://github.com/brson/proptest-arbitrary-interop.git", branch = "incorrect-format" }
quickcheck = "1.0.3"
quote = "1.0"
spin = { version = "0.9.8", features = ["once", "lock_api", "rwlock"] }
syn = { version = "2.0", features = ["full"] }
xshell = "0.2.6"
[workspace.package]
version = "0.1.0"
edition = "2021"
publish = false
[profile.test]
# speed up test execution
opt-level = 3
[profile.bench]
# Since xts, ldt, etc are in separate crates, use LTO to allow cross-crate inlining.
# fat vs thin: thin compiles a lot faster, and doesn't seem any slower.
lto = "thin"
# build profile optimized for size
[profile.release-min-size]
inherits = "release"
panic = "abort"
codegen-units = 1
lto = true
# z optimizes for size
opt-level = "z"
strip = true