[package]
edition = "2024"
rust-version = "1.98.1"
name = "rustfs-scanner"
version = "1.0.0"
authors = ["RustFS Team"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "RustFS Scanner provides scanning capabilities for data integrity checks, health monitoring, and storage analysis."
homepage = "https://rustfs.com"
documentation = "https://docs.rs/rustfs-scanner/latest/rustfs_scanner/"
readme = "README.md"
keywords = [
"RustFS",
"scanner",
"health-monitoring",
"data-integrity",
"storage-analysis",
]
categories = [
"web-programming",
"development-tools",
"filesystem",
]
license = "Apache-2.0"
repository = "https://github.com/rustfs/rustfs"
[features]
default = []
hotpath = [
"hotpath/hotpath",
"hotpath/tokio",
"hotpath/futures",
"rustfs-common/hotpath",
"rustfs-config/hotpath",
"rustfs-credentials/hotpath",
"rustfs-data-usage/hotpath",
"rustfs-ecstore/hotpath",
"rustfs-filemeta/hotpath",
"rustfs-storage-api/hotpath",
"rustfs-utils/hotpath",
]
hotpath-alloc = [
"hotpath",
"hotpath/hotpath-alloc",
"rustfs-common/hotpath-alloc",
"rustfs-config/hotpath-alloc",
"rustfs-credentials/hotpath-alloc",
"rustfs-data-usage/hotpath-alloc",
"rustfs-ecstore/hotpath-alloc",
"rustfs-filemeta/hotpath-alloc",
"rustfs-storage-api/hotpath-alloc",
"rustfs-utils/hotpath-alloc",
]
hotpath-cpu = [
"hotpath",
"hotpath/hotpath-cpu",
"rustfs-common/hotpath-cpu",
"rustfs-config/hotpath-cpu",
"rustfs-credentials/hotpath-cpu",
"rustfs-data-usage/hotpath-cpu",
"rustfs-ecstore/hotpath-cpu",
"rustfs-filemeta/hotpath-cpu",
"rustfs-storage-api/hotpath-cpu",
"rustfs-utils/hotpath-cpu",
]
[lib]
name = "rustfs_scanner"
path = "src/lib.rs"
doctest = false
[[test]]
name = "lifecycle_integration_test"
path = "tests/lifecycle_integration_test.rs"
[dependencies.async-trait]
version = "0.1.92"
[dependencies.bytes]
version = "1.12.1"
[dependencies.chrono]
version = "0.4.45"
features = ["serde"]
[dependencies.futures]
version = "0.3.34"
[dependencies.hex-simd]
version = "0.8.0"
[dependencies.hmac]
version = "0.13.0"
[dependencies.hotpath]
version = "0.25.1"
default-features = false
[dependencies.http]
version = "1.5.0"
[dependencies.metrics]
version = "0.24.6"
[dependencies.rand]
version = "0.10.2"
features = ["serde"]
[dependencies.rmp-serde]
version = "1.3.1"
[dependencies.rustfs-common]
version = "1.0.0"
[dependencies.rustfs-concurrency]
version = "1.0.0"
[dependencies.rustfs-config]
version = "1.0.0"
features = ["server-config-model"]
[dependencies.rustfs-credentials]
version = "1.0.0"
[dependencies.rustfs-data-usage]
version = "1.0.0"
[dependencies.rustfs-ecstore]
version = "1.0.0"
[dependencies.rustfs-filemeta]
version = "1.0.0"
[dependencies.rustfs-heal-contracts]
version = "1.0.0"
[dependencies.rustfs-lifecycle]
version = "1.0.0"
[dependencies.rustfs-lock]
version = "1.0.0"
[dependencies.rustfs-scanner-metrics]
version = "1.0.0"
[dependencies.rustfs-storage-api]
version = "1.0.0"
[dependencies.rustfs-utils]
version = "1.0.0"
[dependencies.s3s]
version = "0.16.0"
features = [
"minio",
"minio",
]
[dependencies.serde]
version = "1.0.229"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.151"
features = ["raw_value"]
[dependencies.sha2]
version = "0.11.0"
[dependencies.thiserror]
version = "2.0.20"
[dependencies.time]
version = "0.3.55"
features = [
"parsing",
"formatting",
"macros",
"serde",
]
[dependencies.tokio]
version = "1.53.1"
features = [
"fs",
"sync",
"time",
"macros",
"rt-multi-thread",
]
[dependencies.tokio-util]
version = "0.7.19"
features = [
"io",
"compat",
"rt",
]
[dependencies.tracing]
version = "0.1.44"
[dependencies.uuid]
version = "1.26.1"
features = [
"v4",
"serde",
"fast-rng",
]
[dev-dependencies.rustfs-ecstore]
version = "1.0.0"
features = ["test-util"]
[dev-dependencies.rustfs-heal]
version = "1.0.0"
[dev-dependencies.rustfs-s3-types]
version = "1.0.0"
[dev-dependencies.rustfs-test-utils]
version = "1.0.0"
[dev-dependencies.serial_test]
version = "4.0.1"
[dev-dependencies.temp-env]
version = "0.3.6"
features = ["async_closure"]
[dev-dependencies.tempfile]
version = "3.27.0"
[dev-dependencies.tokio]
version = "1.53.1"
features = [
"test-util",
"fs",
"rt-multi-thread",
]
[dev-dependencies.tracing-subscriber]
version = "0.3.23"
features = [
"json",
"env-filter",
"time",
]
[dev-dependencies.uuid]
version = "1.26.1"
features = [
"v4",
"serde",
"fast-rng",
"macro-diagnostics",
]
[lints.clippy]
all = "warn"
needless_collect = "warn"
redundant_clone = "warn"
[lints.rust]
unsafe_code = "deny"