[package]
edition = "2021"
rust-version = "1.85"
name = "dev-tools"
version = "0.9.6"
authors = ["James Gober <me@jamesgober.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust verification toolkit. Tests, benches, coverage, fuzz, security audit, dep hygiene, mutation, chaos, async, stress — one crate, opt in with feature flags."
homepage = "https://github.com/jamesgober/dev-tools"
documentation = "https://docs.rs/dev-tools"
readme = "README.md"
keywords = [
"testing",
"benchmark",
"coverage",
"fuzz",
"audit",
]
categories = [
"development-tools",
"development-tools::testing",
"development-tools::profiling",
]
license = "Apache-2.0"
repository = "https://github.com/jamesgober/dev-tools"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
async = ["dep:dev-async"]
bench = ["dep:dev-bench"]
chaos = ["dep:dev-chaos"]
ci = ["dep:dev-ci"]
cli = [
"dep:clap",
"coverage",
"security",
"deps",
"ci",
"fuzz",
"flaky",
"mutate",
"bench",
"dev-report/terminal",
"dev-report/markdown",
"dev-report/sarif",
"dev-report/junit",
]
coverage = ["dep:dev-coverage"]
default = [
"fixtures",
"bench",
]
deps = ["dep:dev-deps"]
fixtures = ["dep:dev-fixtures"]
flaky = ["dep:dev-flaky"]
full = [
"fixtures",
"bench",
"async",
"stress",
"chaos",
"coverage",
"security",
"deps",
"ci",
"fuzz",
"flaky",
"mutate",
]
fuzz = ["dep:dev-fuzz"]
mutate = ["dep:dev-mutate"]
security = ["dep:dev-security"]
stress = ["dep:dev-stress"]
[lib]
name = "dev_tools"
path = "src/lib.rs"
[[bin]]
name = "dev"
path = "src/bin/dev.rs"
required-features = ["cli"]
[[example]]
name = "cargo_check_producer"
path = "examples/cargo_check_producer.rs"
[[example]]
name = "cargo_test_producer"
path = "examples/cargo_test_producer.rs"
[[example]]
name = "ci_generate"
path = "examples/ci_generate.rs"
required-features = ["ci"]
[[example]]
name = "clippy_producer"
path = "examples/clippy_producer.rs"
[[example]]
name = "coverage_basic"
path = "examples/coverage_basic.rs"
required-features = ["coverage"]
[[example]]
name = "deps_basic"
path = "examples/deps_basic.rs"
required-features = ["deps"]
[[example]]
name = "flaky_basic"
path = "examples/flaky_basic.rs"
required-features = ["flaky"]
[[example]]
name = "full_pipeline"
path = "examples/full_pipeline.rs"
required-features = [
"coverage",
"security",
"flaky",
"mutate",
]
[[example]]
name = "fuzz_basic"
path = "examples/fuzz_basic.rs"
required-features = ["fuzz"]
[[example]]
name = "html_meta_report"
path = "examples/html_meta_report.rs"
[[example]]
name = "mutate_basic"
path = "examples/mutate_basic.rs"
required-features = ["mutate"]
[[example]]
name = "prelude_demo"
path = "examples/prelude_demo.rs"
[[example]]
name = "report_only_consumer"
path = "examples/report_only_consumer.rs"
[[example]]
name = "security_basic"
path = "examples/security_basic.rs"
required-features = ["security"]
[[test]]
name = "smoke"
path = "tests/smoke.rs"
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.dev-async]
version = "0.9"
optional = true
[dependencies.dev-bench]
version = "0.9"
optional = true
[dependencies.dev-chaos]
version = "0.9"
optional = true
[dependencies.dev-ci]
version = "0.9"
optional = true
[dependencies.dev-coverage]
version = "0.9"
optional = true
[dependencies.dev-deps]
version = "0.9"
optional = true
[dependencies.dev-fixtures]
version = "0.9"
optional = true
[dependencies.dev-flaky]
version = "0.9"
optional = true
[dependencies.dev-fuzz]
version = "0.9"
optional = true
[dependencies.dev-mutate]
version = "0.9"
optional = true
[dependencies.dev-report]
version = "0.9"
[dependencies.dev-security]
version = "0.9"
optional = true
[dependencies.dev-stress]
version = "0.9"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dev-dependencies.chrono]
version = "0.4"
features = ["clock"]
default-features = false
[profile.release]
opt-level = 3
lto = "thin"