mirror of
https://github.com/rustfs/rustfs.git
synced 2026-07-26 08:18:18 +00:00
chore(deps): localize workspace dependency features (#4888)
Move workspace-level dependency feature lists into the member crates that consume each dependency while keeping required default-features flags at the workspace root. Also refresh starshard to 2.2.2 via cargo update and cargo upgrade --exclude ratelimit. Co-authored-by: heihutu <heihutu@gmail.com>
This commit is contained in:
Generated
+10
-10
@@ -3926,7 +3926,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
|
checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -5336,7 +5336,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"hermit-abi",
|
"hermit-abi",
|
||||||
"libc",
|
"libc",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -8051,7 +8051,7 @@ dependencies = [
|
|||||||
"once_cell",
|
"once_cell",
|
||||||
"socket2",
|
"socket2",
|
||||||
"tracing",
|
"tracing",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -10139,7 +10139,7 @@ dependencies = [
|
|||||||
"errno",
|
"errno",
|
||||||
"libc",
|
"libc",
|
||||||
"linux-raw-sys 0.12.1",
|
"linux-raw-sys 0.12.1",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -10213,7 +10213,7 @@ dependencies = [
|
|||||||
"security-framework",
|
"security-framework",
|
||||||
"security-framework-sys",
|
"security-framework-sys",
|
||||||
"webpki-root-certs",
|
"webpki-root-certs",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -11099,9 +11099,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "starshard"
|
name = "starshard"
|
||||||
version = "2.2.1"
|
version = "2.2.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4dafd0cbefb050fa7a7f95ac229f7978ed4c99866a1a5b62e34a154b52d73d77"
|
checksum = "5d298eb1bb81d6e5ddf447f3d26698d6ac5e5b9502b03004dbc2a2e2f8b572b6"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-trait",
|
"async-trait",
|
||||||
"hashbrown 0.17.1",
|
"hashbrown 0.17.1",
|
||||||
@@ -11373,10 +11373,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
|
checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"fastrand",
|
"fastrand",
|
||||||
"getrandom 0.3.4",
|
"getrandom 0.4.3",
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"rustix 1.1.4",
|
"rustix 1.1.4",
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -12477,7 +12477,7 @@ version = "0.1.11"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
|
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-sys 0.52.0",
|
"windows-sys 0.59.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|||||||
+60
-60
@@ -133,8 +133,8 @@ rustfs-zip = { path = "./crates/zip", version = "1.0.0-beta.9" }
|
|||||||
|
|
||||||
# Async Runtime and Networking
|
# Async Runtime and Networking
|
||||||
async-channel = "2.5.0"
|
async-channel = "2.5.0"
|
||||||
async_zip = { version = "0.0.18", default-features = false, features = ["tokio", "deflate"] }
|
async_zip = { default-features = false, version = "0.0.18" }
|
||||||
mysql_async = { version = "0.37", default-features = false, features = ["default-rustls", "tracing"] }
|
mysql_async = { default-features = false, version = "0.37" }
|
||||||
async-compression = { version = "0.4.42" }
|
async-compression = { version = "0.4.42" }
|
||||||
async-recursion = "1.1.1"
|
async-recursion = "1.1.1"
|
||||||
async-trait = "0.1.89"
|
async-trait = "0.1.89"
|
||||||
@@ -145,32 +145,32 @@ futures-core = "0.3.32"
|
|||||||
futures-lite = "2.6.1"
|
futures-lite = "2.6.1"
|
||||||
futures-util = "0.3.32"
|
futures-util = "0.3.32"
|
||||||
pollster = "1.0.1"
|
pollster = "1.0.1"
|
||||||
pulsar = { version = "6.8.0", default-features = false, features = ["tokio-rustls-runtime", "telemetry"] }
|
pulsar = { default-features = false, version = "6.8.0" }
|
||||||
lapin = { version = "4.10.0", default-features = false, features = ["tokio", "rustls", "rustls--aws_lc_rs"] }
|
lapin = { default-features = false, version = "4.10.0" }
|
||||||
hyper = { version = "1.10.1", features = ["http2", "http1", "server"] }
|
hyper = { version = "1.10.1" }
|
||||||
hyper-rustls = { version = "0.27.9", default-features = false, features = ["native-tokio", "http1", "tls12", "logging", "http2", "aws-lc-rs", "webpki-roots"] }
|
hyper-rustls = { default-features = false, version = "0.27.9" }
|
||||||
hyper-util = { version = "0.1.20", features = ["tokio", "server-auto", "server-graceful", "tracing"] }
|
hyper-util = { version = "0.1.20" }
|
||||||
http = "1.4.2"
|
http = "1.4.2"
|
||||||
http-body = "1.1.0"
|
http-body = "1.1.0"
|
||||||
http-body-util = "0.1.4"
|
http-body-util = "0.1.4"
|
||||||
minlz = "1.2.3"
|
minlz = "1.2.3"
|
||||||
reqwest = { version = "0.13.4", default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
reqwest = { default-features = false, version = "0.13.4" }
|
||||||
rustfs-kafka-async = { version = "1.2.0" }
|
rustfs-kafka-async = { version = "1.2.0" }
|
||||||
socket2 = { version = "0.6.5", features = ["all"] }
|
socket2 = { version = "0.6.5" }
|
||||||
tokio = { version = "1.52.3", features = ["fs", "rt-multi-thread"] }
|
tokio = { version = "1.52.3" }
|
||||||
tokio-rustls = { version = "0.26.4", default-features = false, features = ["logging", "tls12", "aws-lc-rs"] }
|
tokio-rustls = { default-features = false, version = "0.26.4" }
|
||||||
tokio-stream = { version = "0.1.18" }
|
tokio-stream = { version = "0.1.18" }
|
||||||
tokio-test = "0.4.5"
|
tokio-test = "0.4.5"
|
||||||
tokio-util = { version = "0.7.18", features = ["io", "compat"] }
|
tokio-util = { version = "0.7.18" }
|
||||||
tonic = { version = "0.14.6", features = ["gzip", "deflate"] }
|
tonic = { version = "0.14.6" }
|
||||||
tonic-prost = { version = "0.14.6" }
|
tonic-prost = { version = "0.14.6" }
|
||||||
tonic-prost-build = { version = "0.14.6" }
|
tonic-prost-build = { version = "0.14.6" }
|
||||||
tower = { version = "0.5.3", features = ["timeout"] }
|
tower = { version = "0.5.3" }
|
||||||
tower-http = { version = "0.7.0", features = ["cors"] }
|
tower-http = { version = "0.7.0" }
|
||||||
|
|
||||||
# Serialization and Data Formats
|
# Serialization and Data Formats
|
||||||
apache-avro = "0.21.0"
|
apache-avro = "0.21.0"
|
||||||
bytes = { version = "1.12.1", features = ["serde"] }
|
bytes = { version = "1.12.1" }
|
||||||
bytesize = "2.4.2"
|
bytesize = "2.4.2"
|
||||||
byteorder = "1.5.0"
|
byteorder = "1.5.0"
|
||||||
flatbuffers = "25.12.19"
|
flatbuffers = "25.12.19"
|
||||||
@@ -179,8 +179,8 @@ prost = "0.14.4"
|
|||||||
quick-xml = "0.41.0"
|
quick-xml = "0.41.0"
|
||||||
rmp = { version = "0.8.15" }
|
rmp = { version = "0.8.15" }
|
||||||
rmp-serde = { version = "1.3.1" }
|
rmp-serde = { version = "1.3.1" }
|
||||||
serde = { version = "1.0.228", features = ["derive"] }
|
serde = { version = "1.0.228" }
|
||||||
serde_json = { version = "1.0.150", features = ["raw_value"] }
|
serde_json = { version = "1.0.150" }
|
||||||
serde_urlencoded = "0.7.1"
|
serde_urlencoded = "0.7.1"
|
||||||
|
|
||||||
# Cryptography and Security
|
# Cryptography and Security
|
||||||
@@ -188,33 +188,33 @@ serde_urlencoded = "0.7.1"
|
|||||||
# matching stable releases are not available yet, while previous stable lines
|
# matching stable releases are not available yet, while previous stable lines
|
||||||
# have incompatible APIs. Keep them exact-pinned and monitor upstream for stable
|
# have incompatible APIs. Keep them exact-pinned and monitor upstream for stable
|
||||||
# releases.
|
# releases.
|
||||||
aes-gcm = { version = "=0.11.0", features = ["rand_core"] }
|
aes-gcm = { version = "=0.11.0" }
|
||||||
argon2 = { version = "=0.6.0-rc.8" }
|
argon2 = { version = "=0.6.0-rc.8" }
|
||||||
blake2 = "=0.11.0-rc.6"
|
blake2 = "=0.11.0-rc.6"
|
||||||
chacha20poly1305 = { version = "=0.11.0" }
|
chacha20poly1305 = { version = "=0.11.0" }
|
||||||
crc-fast = "1.10.0"
|
crc-fast = "1.10.0"
|
||||||
hmac = { version = "0.13.0" }
|
hmac = { version = "0.13.0" }
|
||||||
jsonwebtoken = { version = "10.4.0", features = ["aws_lc_rs"] }
|
jsonwebtoken = { version = "10.4.0" }
|
||||||
openidconnect = { version = "4.0", default-features = false, features = ["accept-rfc3339-timestamps"] }
|
openidconnect = { default-features = false, version = "4.0" }
|
||||||
pbkdf2 = "0.13.0"
|
pbkdf2 = "0.13.0"
|
||||||
rsa = { version = "=0.10.0-rc.18" }
|
rsa = { version = "=0.10.0-rc.18" }
|
||||||
rustls = { version = "0.23.42", default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
rustls = { default-features = false, version = "0.23.42" }
|
||||||
rustls-native-certs = "0.8"
|
rustls-native-certs = "0.8"
|
||||||
rustls-pki-types = "1.15.0"
|
rustls-pki-types = "1.15.0"
|
||||||
sha1 = "0.11.0"
|
sha1 = "0.11.0"
|
||||||
sha2 = "0.11.0"
|
sha2 = "0.11.0"
|
||||||
subtle = "2.6"
|
subtle = "2.6"
|
||||||
zeroize = { version = "1.9.0", features = ["derive"] }
|
zeroize = { version = "1.9.0" }
|
||||||
|
|
||||||
# Time and Date
|
# Time and Date
|
||||||
chrono = { version = "0.4.45", features = ["serde"] }
|
chrono = { version = "0.4.45" }
|
||||||
humantime = "2.4.0"
|
humantime = "2.4.0"
|
||||||
jiff = { version = "0.2.32", features = ["serde"] }
|
jiff = { version = "0.2.32" }
|
||||||
time = { version = "0.3.53", features = ["std", "parsing", "formatting", "macros", "serde"] }
|
time = { version = "0.3.53" }
|
||||||
|
|
||||||
# Database
|
# Database
|
||||||
deadpool-postgres = { version = "0.14", features = ["rt_tokio_1"] }
|
deadpool-postgres = { version = "0.14" }
|
||||||
tokio-postgres = { version = "0.7.18", default-features = false, features = ["runtime", "with-serde_json-1"] }
|
tokio-postgres = { default-features = false, version = "0.7.18" }
|
||||||
tokio-postgres-rustls = "0.14.0"
|
tokio-postgres-rustls = "0.14.0"
|
||||||
|
|
||||||
# Utilities and Tools
|
# Utilities and Tools
|
||||||
@@ -225,22 +225,22 @@ atoi = "3.1.0"
|
|||||||
atomic_enum = "0.3.0"
|
atomic_enum = "0.3.0"
|
||||||
aws-config = { version = "1.9.0" }
|
aws-config = { version = "1.9.0" }
|
||||||
aws-credential-types = { version = "1.3.0" }
|
aws-credential-types = { version = "1.3.0" }
|
||||||
aws-sdk-s3 = { version = "1.138.0", default-features = false, features = ["sigv4a", "default-https-client", "rt-tokio"] }
|
aws-sdk-s3 = { default-features = false, version = "1.138.0" }
|
||||||
aws-smithy-http-client = { version = "1.2.0", default-features = false, features = ["default-client", "rustls-aws-lc"] }
|
aws-smithy-http-client = { default-features = false, version = "1.2.0" }
|
||||||
aws-smithy-runtime-api = { version = "1.13.0", features = ["http-1x"] }
|
aws-smithy-runtime-api = { version = "1.13.0" }
|
||||||
aws-smithy-types = { version = "1.6.1" }
|
aws-smithy-types = { version = "1.6.1" }
|
||||||
base64 = "0.22.1"
|
base64 = "0.22.1"
|
||||||
base64-simd = "0.8.0"
|
base64-simd = "0.8.0"
|
||||||
brotli = "8.0.4"
|
brotli = "8.0.4"
|
||||||
clap = { version = "4.6.2", features = ["derive", "env"] }
|
clap = { version = "4.6.2" }
|
||||||
const-str = { version = "1.1.0", features = ["std", "proc"] }
|
const-str = { version = "1.1.0" }
|
||||||
convert_case = "0.11.0"
|
convert_case = "0.11.0"
|
||||||
criterion = { version = "0.8", features = ["html_reports"] }
|
criterion = { version = "0.8" }
|
||||||
crossbeam-queue = "0.3.13"
|
crossbeam-queue = "0.3.13"
|
||||||
crossbeam-channel = "0.5.16"
|
crossbeam-channel = "0.5.16"
|
||||||
crossbeam-deque = "0.8.7"
|
crossbeam-deque = "0.8.7"
|
||||||
crossbeam-utils = "0.8.22"
|
crossbeam-utils = "0.8.22"
|
||||||
datafusion = { git = "https://github.com/apache/datafusion.git", rev = "dae03ee062b2abf986de8df12ea82fb1578a2d99", default-features = false }
|
datafusion = { default-features = false, git = "https://github.com/apache/datafusion.git", rev = "dae03ee062b2abf986de8df12ea82fb1578a2d99" }
|
||||||
derive_builder = "0.20.2"
|
derive_builder = "0.20.2"
|
||||||
enumset = "1.1.13"
|
enumset = "1.1.13"
|
||||||
faster-hex = "0.10.0"
|
faster-hex = "0.10.0"
|
||||||
@@ -248,11 +248,11 @@ flate2 = "1.1.9"
|
|||||||
glob = "0.3.3"
|
glob = "0.3.3"
|
||||||
google-cloud-storage = "1.16.0"
|
google-cloud-storage = "1.16.0"
|
||||||
google-cloud-auth = "1.14.0"
|
google-cloud-auth = "1.14.0"
|
||||||
hashbrown = { version = "0.17.1", features = ["serde", "rayon"] }
|
hashbrown = { version = "0.17.1" }
|
||||||
hex = "0.4.3"
|
hex = "0.4.3"
|
||||||
hex-simd = "0.8.0"
|
hex-simd = "0.8.0"
|
||||||
highway = { version = "1.3.0" }
|
highway = { version = "1.3.0" }
|
||||||
ipnetwork = { version = "0.21.1", features = ["serde"] }
|
ipnetwork = { version = "0.21.1" }
|
||||||
lazy_static = "1.5.0"
|
lazy_static = "1.5.0"
|
||||||
libc = "0.2.186"
|
libc = "0.2.186"
|
||||||
libsystemd = "0.7.2"
|
libsystemd = "0.7.2"
|
||||||
@@ -263,7 +263,7 @@ matchit = "0.9.2"
|
|||||||
md-5 = "0.11.0"
|
md-5 = "0.11.0"
|
||||||
md5 = "0.8.1"
|
md5 = "0.8.1"
|
||||||
mime_guess = "2.0.5"
|
mime_guess = "2.0.5"
|
||||||
moka = { version = "0.12.15", features = ["future"] }
|
moka = { version = "0.12.15" }
|
||||||
netif = "0.1.6"
|
netif = "0.1.6"
|
||||||
num_cpus = { version = "1.17.0" }
|
num_cpus = { version = "1.17.0" }
|
||||||
nvml-wrapper = "0.12.1"
|
nvml-wrapper = "0.12.1"
|
||||||
@@ -273,27 +273,27 @@ path-clean = "1.0.1"
|
|||||||
percent-encoding = "2.3.2"
|
percent-encoding = "2.3.2"
|
||||||
pin-project-lite = "0.2.17"
|
pin-project-lite = "0.2.17"
|
||||||
pretty_assertions = "1.4.1"
|
pretty_assertions = "1.4.1"
|
||||||
rand = { version = "0.10.2", features = ["serde"] }
|
rand = { version = "0.10.2" }
|
||||||
ratelimit = "0.10.1"
|
ratelimit = "0.10.1"
|
||||||
rayon = "1.12.0"
|
rayon = "1.12.0"
|
||||||
reed-solomon-erasure = { package = "rustfs-erasure-codec", version = "8.0.0", features = ["simd-accel"] }
|
reed-solomon-erasure = { package = "rustfs-erasure-codec", version = "8.0.0" }
|
||||||
#reed-solomon-erasure = { version = "6.0", features = ["simd-accel"], git = "https://github.com/houseme/reed-solomon-erasure",rev = "main" }
|
#reed-solomon-erasure = { version = "6.0", features = ["simd-accel"], git = "https://github.com/houseme/reed-solomon-erasure",rev = "main" }
|
||||||
reed-solomon-simd = "3.1.0"
|
reed-solomon-simd = "3.1.0"
|
||||||
regex = { version = "1.13.1" }
|
regex = { version = "1.13.1" }
|
||||||
rumqttc = { package = "rumqttc-next", version = "0.33.2", features = ["websocket"] }
|
rumqttc = { package = "rumqttc-next", version = "0.33.2" }
|
||||||
redis = { version = "1.4.0", features = ["connection-manager", "tokio-rustls-comp", "tls-rustls-insecure"] }
|
redis = { version = "1.4.0" }
|
||||||
rustix = { version = "1.1.4", features = ["fs"] }
|
rustix = { version = "1.1.4" }
|
||||||
rust-embed = { version = "8.12.0" }
|
rust-embed = { version = "8.12.0" }
|
||||||
rustc-hash = { version = "2.1.3" }
|
rustc-hash = { version = "2.1.3" }
|
||||||
s3s = { git = "https://github.com/s3s-project/s3s.git", rev = "ce69c3f10824535c7c24b2f71cdb2aaa4dffb5e0", features = ["minio"] }
|
s3s = { git = "https://github.com/s3s-project/s3s.git", rev = "ce69c3f10824535c7c24b2f71cdb2aaa4dffb5e0" }
|
||||||
serial_test = "3.5.0"
|
serial_test = "3.5.0"
|
||||||
shadow-rs = { version = "2.0.0", default-features = false }
|
shadow-rs = { default-features = false, version = "2.0.0" }
|
||||||
siphasher = "1.0.3"
|
siphasher = "1.0.3"
|
||||||
smallvec = { version = "1.15.2", features = ["serde"] }
|
smallvec = { version = "1.15.2" }
|
||||||
smartstring = "1.0.1"
|
smartstring = "1.0.1"
|
||||||
snap = "1.1.2"
|
snap = "1.1.2"
|
||||||
starshard = { version = "2.2.1", features = ["rayon", "async", "serde"] }
|
starshard = { version = "2.2.2" }
|
||||||
strum = { version = "0.28.0", features = ["derive"] }
|
strum = { version = "0.28.0" }
|
||||||
sysinfo = "0.39.6"
|
sysinfo = "0.39.6"
|
||||||
temp-env = "0.3.6"
|
temp-env = "0.3.6"
|
||||||
tempfile = "3.27.0"
|
tempfile = "3.27.0"
|
||||||
@@ -303,15 +303,15 @@ tracing = { version = "0.1.44" }
|
|||||||
tracing-appender = "0.2.5"
|
tracing-appender = "0.2.5"
|
||||||
tracing-error = "0.2.1"
|
tracing-error = "0.2.1"
|
||||||
tracing-opentelemetry = { version = "0.33" }
|
tracing-opentelemetry = { version = "0.33" }
|
||||||
tracing-subscriber = { version = "0.3.23", features = ["env-filter", "time"] }
|
tracing-subscriber = { version = "0.3.23" }
|
||||||
transform-stream = "0.3.1"
|
transform-stream = "0.3.1"
|
||||||
url = "2.5.8"
|
url = "2.5.8"
|
||||||
urlencoding = "2.1.3"
|
urlencoding = "2.1.3"
|
||||||
uuid = { version = "1.24.0", features = ["v4", "fast-rng", "macro-diagnostics"] }
|
uuid = { version = "1.24.0" }
|
||||||
vaultrs = { version = "0.8.0" }
|
vaultrs = { version = "0.8.0" }
|
||||||
walkdir = "2.5.0"
|
walkdir = "2.5.0"
|
||||||
windows = { version = "0.62.2" }
|
windows = { version = "0.62.2" }
|
||||||
xxhash-rust = { version = "0.8.17", features = ["xxh64", "xxh3"] }
|
xxhash-rust = { version = "0.8.17" }
|
||||||
zip = "8.6.0"
|
zip = "8.6.0"
|
||||||
zstd = "0.13.3"
|
zstd = "0.13.3"
|
||||||
|
|
||||||
@@ -319,19 +319,19 @@ zstd = "0.13.3"
|
|||||||
metrics = "0.24.6"
|
metrics = "0.24.6"
|
||||||
dial9-tokio-telemetry = "0.3"
|
dial9-tokio-telemetry = "0.3"
|
||||||
opentelemetry = { version = "0.32.0" }
|
opentelemetry = { version = "0.32.0" }
|
||||||
opentelemetry-appender-tracing = { version = "0.32.0", features = ["experimental_span_attributes", "experimental_metadata_attributes"] }
|
opentelemetry-appender-tracing = { version = "0.32.0" }
|
||||||
opentelemetry-otlp = { version = "0.32.0", features = ["gzip-http", "reqwest-rustls"] }
|
opentelemetry-otlp = { version = "0.32.0" }
|
||||||
opentelemetry_sdk = { version = "0.32.1", features = ["rt-tokio"] }
|
opentelemetry_sdk = { version = "0.32.1" }
|
||||||
opentelemetry-semantic-conventions = { version = "0.32.1", features = ["semconv_experimental"] }
|
opentelemetry-semantic-conventions = { version = "0.32.1" }
|
||||||
opentelemetry-stdout = { version = "0.32.0" }
|
opentelemetry-stdout = { version = "0.32.0" }
|
||||||
pyroscope = { version = "2.1.0", features = ["backend-pprof-rs"] }
|
pyroscope = { version = "2.1.0" }
|
||||||
|
|
||||||
# FTP and SFTP
|
# FTP and SFTP
|
||||||
libunftp = { version = "0.23.0", features = ["experimental"] }
|
libunftp = { version = "0.23.0" }
|
||||||
unftp-core = "0.1.0"
|
unftp-core = "0.1.0"
|
||||||
suppaftp = { version = "10.0.1", features = ["tokio", "tokio-rustls-aws-lc-rs"] }
|
suppaftp = { version = "10.0.1" }
|
||||||
rcgen = "0.14.8"
|
rcgen = "0.14.8"
|
||||||
russh = { version = "0.62.2", features = ["serde"] }
|
russh = { version = "0.62.2" }
|
||||||
russh-sftp = "2.3.0"
|
russh-sftp = "2.3.0"
|
||||||
|
|
||||||
# WebDAV
|
# WebDAV
|
||||||
@@ -341,7 +341,7 @@ dav-server = "0.11.0"
|
|||||||
mimalloc = "0.1"
|
mimalloc = "0.1"
|
||||||
hotpath = "0.21"
|
hotpath = "0.21"
|
||||||
# Snapshot testing for output format regression detection
|
# Snapshot testing for output format regression detection
|
||||||
insta = { version = "1.48", features = ["yaml", "json"] }
|
insta = { version = "1.48" }
|
||||||
|
|
||||||
[workspace.metadata.cargo-shear]
|
[workspace.metadata.cargo-shear]
|
||||||
ignored = ["rustfs"]
|
ignored = ["rustfs"]
|
||||||
|
|||||||
@@ -29,13 +29,13 @@ categories = ["web-programming", "development-tools", "asynchronous", "api-bindi
|
|||||||
rustfs-targets = { workspace = true }
|
rustfs-targets = { workspace = true }
|
||||||
rustfs-config = { workspace = true, features = ["audit", "constants", "server-config-model"] }
|
rustfs-config = { workspace = true, features = ["audit", "constants", "server-config-model"] }
|
||||||
rustfs-s3-types = { workspace = true }
|
rustfs-s3-types = { workspace = true }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
const-str = { workspace = true }
|
const-str = { workspace = true, features = ["std", "proc"] }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
hashbrown = { workspace = true }
|
hashbrown = { workspace = true, features = ["serde", "rayon"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread", "rt", "time", "macros"] }
|
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread", "rt", "time", "macros"] }
|
||||||
tracing = { workspace = true, features = ["std", "attributes"] }
|
tracing = { workspace = true, features = ["std", "attributes"] }
|
||||||
|
|||||||
@@ -26,14 +26,14 @@ categories = ["web-programming", "development-tools", "network-programming"]
|
|||||||
documentation = "https://docs.rs/rustfs-checksums/latest/rustfs_checksum/"
|
documentation = "https://docs.rs/rustfs-checksums/latest/rustfs_checksum/"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
crc-fast = { workspace = true }
|
crc-fast = { workspace = true }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
base64-simd = { workspace = true }
|
base64-simd = { workspace = true }
|
||||||
md-5 = { workspace = true }
|
md-5 = { workspace = true }
|
||||||
sha1 = { workspace = true }
|
sha1 = { workspace = true }
|
||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
xxhash-rust = { workspace = true }
|
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
pretty_assertions = { workspace = true }
|
pretty_assertions = { workspace = true }
|
||||||
|
|||||||
@@ -28,14 +28,14 @@ categories = ["web-programming", "development-tools", "data-structures"]
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
tokio = { workspace = true }
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
tonic = { workspace = true }
|
tonic = { workspace = true, features = ["gzip", "deflate"] }
|
||||||
uuid = { workspace = true }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
rmp-serde = { workspace = true }
|
rmp-serde = { workspace = true }
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
|
|||||||
@@ -13,15 +13,15 @@ categories = ["concurrency", "filesystem"]
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
# Internal crates
|
# Internal crates
|
||||||
rustfs-io-core = { workspace = true }
|
rustfs-io-core = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
|
|
||||||
# Async runtime
|
# Async runtime
|
||||||
tokio = { workspace = true, features = ["sync"] }
|
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
# Logging
|
# Logging
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
insta = { workspace = true }
|
insta = { workspace = true, features = ["yaml", "json"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tokio = { workspace = true, features = ["test-util", "macros", "rt-multi-thread"] }
|
tokio = { workspace = true, features = ["test-util", "macros", "rt-multi-thread", "fs"] }
|
||||||
|
|||||||
@@ -25,9 +25,9 @@ keywords = ["configuration", "settings", "management", "rustfs", "Minio"]
|
|||||||
categories = ["web-programming", "development-tools", "config"]
|
categories = ["web-programming", "development-tools", "config"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
const-str = { workspace = true, optional = true }
|
const-str = { workspace = true, optional = true, features = ["std", "proc"] }
|
||||||
serde = { workspace = true, optional = true }
|
serde = { workspace = true, optional = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true, optional = true }
|
serde_json = { workspace = true, optional = true, features = ["raw_value"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -27,11 +27,11 @@ categories = ["web-programming", "development-tools", "data-structures", "securi
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
base64-simd = { workspace = true }
|
base64-simd = { workspace = true }
|
||||||
hmac = { workspace = true }
|
hmac = { workspace = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
time = { workspace = true, features = ["serde", "parsing", "formatting", "macros"] }
|
time = { workspace = true, features = ["serde", "parsing", "formatting", "macros", "std"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -29,23 +29,23 @@ documentation = "https://docs.rs/rustfs-crypto/latest/rustfs_crypto/"
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
aes-gcm = { workspace = true, optional = true }
|
aes-gcm = { workspace = true, optional = true, features = ["rand_core"] }
|
||||||
argon2 = { workspace = true, optional = true }
|
argon2 = { workspace = true, optional = true }
|
||||||
chacha20poly1305 = { workspace = true, optional = true }
|
chacha20poly1305 = { workspace = true, optional = true }
|
||||||
jsonwebtoken = { workspace = true }
|
jsonwebtoken = { workspace = true, features = ["aws_lc_rs"] }
|
||||||
base64-simd = { workspace = true }
|
base64-simd = { workspace = true }
|
||||||
pbkdf2 = { workspace = true, optional = true }
|
pbkdf2 = { workspace = true, optional = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
rsa = { workspace = true, features = ["sha2"] }
|
rsa = { workspace = true, features = ["sha2"] }
|
||||||
serde = { workspace = true, features = ["derive"] }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
sha2 = { workspace = true, optional = true }
|
sha2 = { workspace = true, optional = true }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
|
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
test-case.workspace = true
|
test-case.workspace = true
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["crypto", "fips"]
|
default = ["crypto", "fips"]
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ categories = ["data-structures", "filesystem"]
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
path-clean = { workspace = true }
|
path-clean = { workspace = true }
|
||||||
rmp-serde = { workspace = true }
|
rmp-serde = { workspace = true }
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
|
|||||||
+20
-20
@@ -38,47 +38,47 @@ futures.workspace = true
|
|||||||
rustfs-lock.workspace = true
|
rustfs-lock.workspace = true
|
||||||
rustfs-protos.workspace = true
|
rustfs-protos.workspace = true
|
||||||
rmp-serde.workspace = true
|
rmp-serde.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tonic = { workspace = true }
|
tonic = { workspace = true, features = ["gzip", "deflate"] }
|
||||||
tokio = { workspace = true }
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
tokio-stream = { workspace = true }
|
tokio-stream = { workspace = true }
|
||||||
rustfs-madmin.workspace = true
|
rustfs-madmin.workspace = true
|
||||||
rustfs-filemeta.workspace = true
|
rustfs-filemeta.workspace = true
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
aws-sdk-s3.workspace = true
|
aws-sdk-s3 = { workspace = true, default-features = false, features = ["sigv4a", "default-https-client", "rt-tokio"] }
|
||||||
aws-config = { workspace = true }
|
aws-config = { workspace = true }
|
||||||
aws-smithy-http-client.workspace = true
|
aws-smithy-http-client = { workspace = true, default-features = false, features = ["default-client", "rustls-aws-lc"] }
|
||||||
async-compression = { workspace = true, features = ["tokio", "bzip2", "xz"] }
|
async-compression = { workspace = true, features = ["tokio", "bzip2", "xz"] }
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
flate2.workspace = true
|
flate2.workspace = true
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
http-body-util.workspace = true
|
http-body-util.workspace = true
|
||||||
hyper.workspace = true
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
hyper-util.workspace = true
|
hyper-util = { workspace = true, features = ["tokio", "server-auto", "server-graceful", "tracing"] }
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
rustfs-signer.workspace = true
|
rustfs-signer.workspace = true
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
uuid = { workspace = true }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
urlencoding.workspace = true
|
urlencoding.workspace = true
|
||||||
walkdir.workspace = true
|
walkdir.workspace = true
|
||||||
base64 = { workspace = true }
|
base64 = { workspace = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
md5 = { workspace = true }
|
md5 = { workspace = true }
|
||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
astral-tokio-tar = { workspace = true }
|
astral-tokio-tar = { workspace = true }
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
zstd.workspace = true
|
zstd.workspace = true
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
suppaftp = { workspace = true, features = ["tokio", "rustls-aws-lc-rs"] }
|
suppaftp = { workspace = true, features = ["tokio", "rustls-aws-lc-rs", "tokio-rustls-aws-lc-rs"] }
|
||||||
rcgen.workspace = true
|
rcgen.workspace = true
|
||||||
local-ip-address.workspace = true
|
local-ip-address.workspace = true
|
||||||
anyhow.workspace = true
|
anyhow.workspace = true
|
||||||
rustls.workspace = true
|
rustls = { workspace = true, default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
russh = { workspace = true }
|
russh = { workspace = true, features = ["serde"] }
|
||||||
russh-sftp = { workspace = true }
|
russh-sftp = { workspace = true }
|
||||||
zip.workspace = true
|
zip.workspace = true
|
||||||
clap.workspace = true
|
clap = { workspace = true, features = ["derive", "env"] }
|
||||||
|
|||||||
+30
-30
@@ -62,9 +62,9 @@ rustfs-s3-types = { workspace = true }
|
|||||||
rustfs-data-usage.workspace = true
|
rustfs-data-usage.workspace = true
|
||||||
rustfs-object-capacity.workspace = true
|
rustfs-object-capacity.workspace = true
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
byteorder = { workspace = true }
|
byteorder = { workspace = true }
|
||||||
chrono.workspace = true
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
glob = { workspace = true }
|
glob = { workspace = true }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
flatbuffers.workspace = true
|
flatbuffers.workspace = true
|
||||||
@@ -72,22 +72,22 @@ futures.workspace = true
|
|||||||
futures-util.workspace = true
|
futures-util.workspace = true
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
tracing-opentelemetry.workspace = true
|
tracing-opentelemetry.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
bytesize.workspace = true
|
bytesize.workspace = true
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
quick-xml = { workspace = true, features = ["serialize", "async-tokio"] }
|
quick-xml = { workspace = true, features = ["serialize", "async-tokio"] }
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
opentelemetry.workspace = true
|
opentelemetry.workspace = true
|
||||||
http-body = { workspace = true }
|
http-body = { workspace = true }
|
||||||
http-body-util.workspace = true
|
http-body-util.workspace = true
|
||||||
url.workspace = true
|
url.workspace = true
|
||||||
uuid = { workspace = true, features = ["v4", "fast-rng", "serde"] }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "serde", "macro-diagnostics"] }
|
||||||
reed-solomon-erasure = { workspace = true }
|
reed-solomon-erasure = { workspace = true, features = ["simd-accel"] }
|
||||||
reed-solomon-simd = { workspace = true }
|
reed-solomon-simd = { workspace = true }
|
||||||
lazy_static.workspace = true
|
lazy_static.workspace = true
|
||||||
moka = { workspace = true }
|
moka = { workspace = true, features = ["future"] }
|
||||||
rustfs-lock.workspace = true
|
rustfs-lock.workspace = true
|
||||||
rustfs-io-metrics.workspace = true
|
rustfs-io-metrics.workspace = true
|
||||||
regex = { workspace = true }
|
regex = { workspace = true }
|
||||||
@@ -101,38 +101,38 @@ sha1 = { workspace = true }
|
|||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
hex-simd = { workspace = true }
|
hex-simd = { workspace = true }
|
||||||
tempfile.workspace = true
|
tempfile.workspace = true
|
||||||
hyper.workspace = true
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
hyper-util.workspace = true
|
hyper-util = { workspace = true, features = ["tokio", "server-auto", "server-graceful", "tracing"] }
|
||||||
hyper-rustls.workspace = true
|
hyper-rustls = { workspace = true, default-features = false, features = ["native-tokio", "http1", "tls12", "logging", "http2", "aws-lc-rs", "webpki-roots"] }
|
||||||
rustls.workspace = true
|
rustls = { workspace = true, default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
rustls-pki-types.workspace = true
|
rustls-pki-types.workspace = true
|
||||||
tokio = { workspace = true, features = ["io-util", "sync", "signal"] }
|
tokio = { workspace = true, features = ["io-util", "sync", "signal", "fs", "rt-multi-thread"] }
|
||||||
tonic.workspace = true
|
tonic = { workspace = true, features = ["gzip", "deflate"] }
|
||||||
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
||||||
tower.workspace = true
|
tower = { workspace = true, features = ["timeout"] }
|
||||||
async-channel.workspace = true
|
async-channel.workspace = true
|
||||||
enumset = { workspace = true }
|
enumset = { workspace = true }
|
||||||
num_cpus = { workspace = true }
|
num_cpus = { workspace = true }
|
||||||
rand.workspace = true
|
rand = { workspace = true, features = ["serde"] }
|
||||||
pin-project-lite.workspace = true
|
pin-project-lite.workspace = true
|
||||||
md-5.workspace = true
|
md-5.workspace = true
|
||||||
memmap2 = { workspace = true }
|
memmap2 = { workspace = true }
|
||||||
libc.workspace = true
|
libc.workspace = true
|
||||||
# "process" adds getrlimit for the io_uring fd-cache RLIMIT_NOFILE gate
|
# "process" adds getrlimit for the io_uring fd-cache RLIMIT_NOFILE gate
|
||||||
# (backlog#1178); "fs" comes from the workspace default.
|
# (backlog#1178); "fs" comes from the workspace default.
|
||||||
rustix = { workspace = true, features = ["process"] }
|
rustix = { workspace = true, features = ["process", "fs"] }
|
||||||
rustfs-madmin.workspace = true
|
rustfs-madmin.workspace = true
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
aes-gcm.workspace = true
|
aes-gcm = { workspace = true, features = ["rand_core"] }
|
||||||
chacha20poly1305.workspace = true
|
chacha20poly1305.workspace = true
|
||||||
aws-sdk-s3 = { workspace = true }
|
aws-sdk-s3 = { workspace = true, default-features = false, features = ["sigv4a", "default-https-client", "rt-tokio"] }
|
||||||
urlencoding = { workspace = true }
|
urlencoding = { workspace = true }
|
||||||
smallvec = { workspace = true }
|
smallvec = { workspace = true, features = ["serde"] }
|
||||||
shadow-rs.workspace = true
|
shadow-rs = { workspace = true, default-features = false }
|
||||||
async-recursion.workspace = true
|
async-recursion.workspace = true
|
||||||
aws-credential-types = { workspace = true }
|
aws-credential-types = { workspace = true }
|
||||||
aws-smithy-types = { workspace = true }
|
aws-smithy-types = { workspace = true }
|
||||||
aws-smithy-runtime-api = { workspace = true }
|
aws-smithy-runtime-api = { workspace = true, features = ["http-1x"] }
|
||||||
parking_lot = { workspace = true }
|
parking_lot = { workspace = true }
|
||||||
base64-simd.workspace = true
|
base64-simd.workspace = true
|
||||||
serde_urlencoded.workspace = true
|
serde_urlencoded.workspace = true
|
||||||
@@ -141,7 +141,7 @@ google-cloud-auth = { workspace = true }
|
|||||||
aws-config = { workspace = true }
|
aws-config = { workspace = true }
|
||||||
faster-hex = { workspace = true }
|
faster-hex = { workspace = true }
|
||||||
ratelimit = { workspace = true }
|
ratelimit = { workspace = true }
|
||||||
aws-smithy-http-client.workspace = true
|
aws-smithy-http-client = { workspace = true, default-features = false, features = ["default-client", "rustls-aws-lc"] }
|
||||||
|
|
||||||
# Observability and Metrics
|
# Observability and Metrics
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
@@ -153,19 +153,19 @@ metrics = { workspace = true }
|
|||||||
rustfs-uring = "0.2.1"
|
rustfs-uring = "0.2.1"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "test-util"] }
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "test-util", "fs"] }
|
||||||
criterion = { workspace = true, features = ["html_reports"] }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
temp-env = { workspace = true, features = ["async_closure"] }
|
temp-env = { workspace = true, features = ["async_closure"] }
|
||||||
tracing-subscriber = { workspace = true, features = ["json"] }
|
tracing-subscriber = { workspace = true, features = ["json", "env-filter", "time"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
opentelemetry_sdk = { workspace = true }
|
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"] }
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
rcgen.workspace = true
|
rcgen.workspace = true
|
||||||
insta = { workspace = true }
|
insta = { workspace = true, features = ["yaml", "json"] }
|
||||||
rustfs-crypto = { workspace = true }
|
rustfs-crypto = { workspace = true }
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
shadow-rs = { workspace = true, features = ["build", "metadata"] }
|
shadow-rs = { workspace = true, default-features = false, features = ["build", "metadata"] }
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
name = "erasure_benchmark"
|
name = "erasure_benchmark"
|
||||||
|
|||||||
@@ -28,11 +28,11 @@ categories = ["web-programming", "development-tools"]
|
|||||||
doctest = false
|
doctest = false
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -34,22 +34,22 @@ hotpath = { workspace = true, optional = true }
|
|||||||
crc-fast = { workspace = true }
|
crc-fast = { workspace = true }
|
||||||
rmp.workspace = true
|
rmp.workspace = true
|
||||||
rmp-serde.workspace = true
|
rmp-serde.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
uuid = { workspace = true, features = ["v4", "fast-rng", "serde"] }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "serde", "macro-diagnostics"] }
|
||||||
tokio = { workspace = true, features = ["io-util", "macros", "sync"] }
|
tokio = { workspace = true, features = ["io-util", "macros", "sync", "fs", "rt-multi-thread"] }
|
||||||
xxhash-rust = { workspace = true, features = ["xxh64"] }
|
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
rustfs-utils = { workspace = true, features = ["hash", "http"] }
|
rustfs-utils = { workspace = true, features = ["hash", "http"] }
|
||||||
byteorder = { workspace = true }
|
byteorder = { workspace = true }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
regex.workspace = true
|
regex.workspace = true
|
||||||
arc-swap.workspace = true
|
arc-swap.workspace = true
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
|
|
||||||
|
|||||||
@@ -34,27 +34,27 @@ rustfs-storage-api = { workspace = true }
|
|||||||
rustfs-common = { workspace = true }
|
rustfs-common = { workspace = true }
|
||||||
rustfs-madmin = { workspace = true }
|
rustfs-madmin = { workspace = true }
|
||||||
rustfs-utils = { workspace = true }
|
rustfs-utils = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["sync","io-util","time","macros"] }
|
tokio = { workspace = true, features = ["sync", "io-util", "time", "macros", "fs", "rt-multi-thread"] }
|
||||||
tokio-util = { workspace = true }
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
serde = { workspace = true, features = ["derive"] }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
uuid = { workspace = true, features = ["v4", "serde"] }
|
uuid = { workspace = true, features = ["v4", "serde", "fast-rng", "macro-diagnostics"] }
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
base64 = { workspace = true }
|
base64 = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
rustfs-test-utils = { workspace = true }
|
rustfs-test-utils = { workspace = true }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
walkdir = { workspace = true }
|
walkdir = { workspace = true }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["test-util","fs"] }
|
tokio = { workspace = true, features = ["test-util", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
doctest = false
|
doctest = false
|
||||||
|
|||||||
@@ -31,29 +31,29 @@ workspace = true
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
rustfs-credentials = { workspace = true }
|
rustfs-credentials = { workspace = true }
|
||||||
rustfs-config = { workspace = true, features = ["constants", "server-config-model"] }
|
rustfs-config = { workspace = true, features = ["constants", "server-config-model"] }
|
||||||
tokio.workspace = true
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
time = { workspace = true, features = ["serde-human-readable"] }
|
time = { workspace = true, features = ["serde-human-readable", "std", "parsing", "formatting", "macros", "serde"] }
|
||||||
serde = { workspace = true, features = ["derive", "rc"] }
|
serde = { workspace = true, features = ["derive", "rc"] }
|
||||||
rustfs-ecstore = { workspace = true }
|
rustfs-ecstore = { workspace = true }
|
||||||
rustfs-storage-api = { workspace = true }
|
rustfs-storage-api = { workspace = true }
|
||||||
rustfs-policy.workspace = true
|
rustfs-policy.workspace = true
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
arc-swap = { workspace = true }
|
arc-swap = { workspace = true }
|
||||||
rustfs-crypto = { workspace = true }
|
rustfs-crypto = { workspace = true }
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
base64-simd = { workspace = true }
|
base64-simd = { workspace = true }
|
||||||
jsonwebtoken = { workspace = true }
|
jsonwebtoken = { workspace = true, features = ["aws_lc_rs"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
rustfs-madmin.workspace = true
|
rustfs-madmin.workspace = true
|
||||||
rustfs-utils = { workspace = true, features = ["path"] }
|
rustfs-utils = { workspace = true, features = ["path"] }
|
||||||
rustfs-io-metrics.workspace = true
|
rustfs-io-metrics.workspace = true
|
||||||
tokio-util.workspace = true
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
pollster.workspace = true
|
pollster.workspace = true
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
moka = { workspace = true }
|
moka = { workspace = true, features = ["future"] }
|
||||||
openidconnect = { workspace = true }
|
openidconnect = { workspace = true, default-features = false, features = ["accept-rfc3339-timestamps"] }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
url = { workspace = true }
|
url = { workspace = true }
|
||||||
|
|
||||||
|
|||||||
@@ -28,15 +28,15 @@ categories = ["development-tools", "filesystem"]
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["io-util", "fs", "rt", "sync"] }
|
tokio = { workspace = true, features = ["io-util", "fs", "rt", "sync", "rt-multi-thread"] }
|
||||||
memmap2 = { workspace = true }
|
memmap2 = { workspace = true }
|
||||||
rustfs-io-metrics = { workspace = true }
|
rustfs-io-metrics = { workspace = true }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "fs"] }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
doctest = false
|
doctest = false
|
||||||
|
|||||||
@@ -33,14 +33,14 @@ metrics = { workspace = true }
|
|||||||
rustfs-s3-ops = { workspace = true }
|
rustfs-s3-ops = { workspace = true }
|
||||||
num_cpus = { workspace = true }
|
num_cpus = { workspace = true }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["sync","rt"] }
|
tokio = { workspace = true, features = ["sync", "rt", "fs", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
sysinfo = { workspace = true }
|
sysinfo = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
metrics-util = { version = "0.20", features = ["debugging"] }
|
metrics-util = { version = "0.20", features = ["debugging"] }
|
||||||
tokio = { workspace = true, features = ["test-util","rt","macros"] }
|
tokio = { workspace = true, features = ["test-util", "rt", "macros", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
+13
-13
@@ -26,32 +26,32 @@ categories = ["authentication", "web-programming"]
|
|||||||
authors.workspace = true
|
authors.workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full", "fs", "rt-multi-thread"] }
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
time = { workspace = true }
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
moka = { workspace = true }
|
moka = { workspace = true, features = ["future"] }
|
||||||
rustfs-credentials = { workspace = true }
|
rustfs-credentials = { workspace = true }
|
||||||
rustfs-policy = { workspace = true }
|
rustfs-policy = { workspace = true }
|
||||||
rustfs-utils = { workspace = true, features = ["egress"] }
|
rustfs-utils = { workspace = true, features = ["egress"] }
|
||||||
url = { workspace = true }
|
url = { workspace = true }
|
||||||
# Middleware dependencies
|
# Middleware dependencies
|
||||||
tower = { workspace = true }
|
tower = { workspace = true, features = ["timeout"] }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
hyper = { workspace = true, features = ["server"] }
|
hyper = { workspace = true, features = ["server", "http2", "http1"] }
|
||||||
http-body = { workspace = true }
|
http-body = { workspace = true }
|
||||||
http-body-util = { workspace = true }
|
http-body-util = { workspace = true }
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["test-util"] }
|
tokio = { workspace = true, features = ["test-util", "fs", "rt-multi-thread"] }
|
||||||
tower = { workspace = true, features = ["util"] }
|
tower = { workspace = true, features = ["util", "timeout"] }
|
||||||
hyper = { workspace = true, features = ["server"] }
|
hyper = { workspace = true, features = ["server", "http2", "http1"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
|
|
||||||
[[test]]
|
[[test]]
|
||||||
|
|||||||
@@ -30,19 +30,19 @@ workspace = true
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
# Core dependencies
|
# Core dependencies
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full", "fs", "rt-multi-thread"] }
|
||||||
uuid = { workspace = true, features = ["serde"] }
|
uuid = { workspace = true, features = ["serde", "v4", "fast-rng", "macro-diagnostics"] }
|
||||||
jiff = { workspace = true }
|
jiff = { workspace = true, features = ["serde"] }
|
||||||
serde = { workspace = true, features = ["derive"] }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
|
|
||||||
# Cryptography
|
# Cryptography
|
||||||
aes-gcm = { workspace = true }
|
aes-gcm = { workspace = true, features = ["rand_core"] }
|
||||||
argon2 = { workspace = true }
|
argon2 = { workspace = true }
|
||||||
chacha20poly1305 = { workspace = true }
|
chacha20poly1305 = { workspace = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
base64 = { workspace = true }
|
base64 = { workspace = true }
|
||||||
zeroize = { workspace = true, features = ["derive"] }
|
zeroize = { workspace = true, features = ["derive"] }
|
||||||
|
|
||||||
@@ -60,11 +60,11 @@ rustfs-utils = { workspace = true }
|
|||||||
rustfs-security-governance = { workspace = true }
|
rustfs-security-governance = { workspace = true }
|
||||||
|
|
||||||
# HTTP client for Vault
|
# HTTP client for Vault
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
vaultrs = { workspace = true }
|
vaultrs = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
insta = { workspace = true }
|
insta = { workspace = true, features = ["yaml", "json"] }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
|
|
||||||
|
|||||||
@@ -31,17 +31,17 @@ rustfs-common.workspace = true
|
|||||||
rustfs-config = { workspace = true, features = ["constants"] }
|
rustfs-config = { workspace = true, features = ["constants"] }
|
||||||
rustfs-replication.workspace = true
|
rustfs-replication.workspace = true
|
||||||
rustfs-storage-api.workspace = true
|
rustfs-storage-api.workspace = true
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
url.workspace = true
|
url.workspace = true
|
||||||
uuid = { workspace = true, features = ["v4", "serde"] }
|
uuid = { workspace = true, features = ["v4", "serde", "fast-rng", "macro-diagnostics"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
serial_test.workspace = true
|
serial_test.workspace = true
|
||||||
temp-env.workspace = true
|
temp-env.workspace = true
|
||||||
tokio = { workspace = true, features = ["macros", "rt"] }
|
tokio = { workspace = true, features = ["macros", "rt", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -33,15 +33,15 @@ rustfs-io-metrics = { workspace = true }
|
|||||||
rustfs-utils = { workspace = true }
|
rustfs-utils = { workspace = true }
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tokio.workspace = true
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
tonic.workspace = true
|
tonic = { workspace = true, features = ["gzip", "deflate"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
uuid.workspace = true
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
parking_lot.workspace = true
|
parking_lot.workspace = true
|
||||||
smallvec.workspace = true
|
smallvec = { workspace = true, features = ["serde"] }
|
||||||
smartstring.workspace = true
|
smartstring.workspace = true
|
||||||
crossbeam-queue = { workspace = true }
|
crossbeam-queue = { workspace = true }
|
||||||
|
|
||||||
|
|||||||
@@ -29,13 +29,13 @@ documentation = "https://docs.rs/rustfs-madmin/latest/rustfs_madmin/"
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
chrono.workspace = true
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
humantime.workspace = true
|
humantime.workspace = true
|
||||||
hyper.workspace = true
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
sysinfo.workspace = true
|
sysinfo.workspace = true
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
doctest = false
|
doctest = false
|
||||||
|
|||||||
@@ -36,14 +36,14 @@ arc-swap = { workspace = true }
|
|||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
chrono = { workspace = true, features = ["serde"] }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
form_urlencoded = { workspace = true }
|
form_urlencoded = { workspace = true }
|
||||||
hashbrown = { workspace = true }
|
hashbrown = { workspace = true, features = ["serde", "rayon"] }
|
||||||
percent-encoding = { workspace = true }
|
percent-encoding = { workspace = true }
|
||||||
rayon = { workspace = true }
|
rayon = { workspace = true }
|
||||||
rustc-hash = { workspace = true }
|
rustc-hash = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
starshard = { workspace = true }
|
starshard = { workspace = true, features = ["rayon", "async", "serde"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["rt-multi-thread", "sync", "time"] }
|
tokio = { workspace = true, features = ["rt-multi-thread", "sync", "time", "fs"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
url = { workspace = true }
|
url = { workspace = true }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
@@ -56,12 +56,12 @@ metrics = { workspace = true }
|
|||||||
quick-xml = { workspace = true, features = ["serialize", "serde-types", "encoding"] }
|
quick-xml = { workspace = true, features = ["serialize", "serde-types", "encoding"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["test-util"] }
|
tokio = { workspace = true, features = ["test-util", "fs", "rt-multi-thread"] }
|
||||||
tracing-subscriber = { workspace = true, features = ["env-filter"] }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
axum = { workspace = true }
|
axum = { workspace = true }
|
||||||
rustfs-utils = { workspace = true, features = ["path"] }
|
rustfs-utils = { workspace = true, features = ["path"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -39,14 +39,14 @@ rustfs-config = { workspace = true, features = ["constants"] }
|
|||||||
rustfs-io-metrics = { workspace = true }
|
rustfs-io-metrics = { workspace = true }
|
||||||
rustfs-utils = { workspace = true, features = ["os"] }
|
rustfs-utils = { workspace = true, features = ["os"] }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["sync", "time"] }
|
tokio = { workspace = true, features = ["sync", "time", "fs", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
uuid = { workspace = true }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
walkdir = { workspace = true }
|
walkdir = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
temp-env = { workspace = true, features = ["async_closure"] }
|
temp-env = { workspace = true, features = ["async_closure"] }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["test-util", "macros", "rt"] }
|
tokio = { workspace = true, features = ["test-util", "macros", "rt", "fs", "rt-multi-thread"] }
|
||||||
|
|||||||
@@ -28,22 +28,22 @@ categories = ["web-programming", "development-tools"]
|
|||||||
doctest = false
|
doctest = false
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
moka = { workspace = true, features = ["future"] }
|
moka = { workspace = true, features = ["future"] }
|
||||||
starshard.workspace = true
|
starshard = { workspace = true, features = ["rayon", "async", "serde"] }
|
||||||
sysinfo = { workspace = true, features = ["multithread"] }
|
sysinfo = { workspace = true, features = ["multithread"] }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
tokio = { workspace = true, features = ["sync", "rt", "time"] }
|
tokio = { workspace = true, features = ["sync", "rt", "time", "fs", "rt-multi-thread"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
metrics-util = { version = "0.20", features = ["debugging"] }
|
metrics-util = { version = "0.20", features = ["debugging"] }
|
||||||
# `rt-multi-thread` lets the concurrency stress tests run tasks on real worker
|
# `rt-multi-thread` lets the concurrency stress tests run tasks on real worker
|
||||||
# threads, so they exercise true parallelism on the shared singleflight/index
|
# threads, so they exercise true parallelism on the shared singleflight/index
|
||||||
# state rather than only cooperative interleaving.
|
# state rather than only cooperative interleaving.
|
||||||
tokio = { workspace = true, features = ["macros", "rt", "rt-multi-thread", "time"] }
|
tokio = { workspace = true, features = ["macros", "rt", "rt-multi-thread", "time", "fs"] }
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
name = "cache_bench"
|
name = "cache_bench"
|
||||||
|
|||||||
+11
-11
@@ -75,10 +75,10 @@ rustfs-security-governance = { workspace = true }
|
|||||||
rustfs-storage-api = { workspace = true }
|
rustfs-storage-api = { workspace = true }
|
||||||
rustfs-utils = { workspace = true, features = ["ip"] }
|
rustfs-utils = { workspace = true, features = ["ip"] }
|
||||||
rustix = { workspace = true, features = ["fs", "stdio"] }
|
rustix = { workspace = true, features = ["fs", "stdio"] }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
flate2 = { workspace = true }
|
flate2 = { workspace = true }
|
||||||
glob = { workspace = true }
|
glob = { workspace = true }
|
||||||
jiff = { workspace = true }
|
jiff = { workspace = true, features = ["serde"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
crossbeam-channel = { workspace = true }
|
crossbeam-channel = { workspace = true }
|
||||||
crossbeam-deque = { workspace = true }
|
crossbeam-deque = { workspace = true }
|
||||||
@@ -86,21 +86,21 @@ crossbeam-utils = { workspace = true }
|
|||||||
futures-util = { workspace = true }
|
futures-util = { workspace = true }
|
||||||
num_cpus = { workspace = true }
|
num_cpus = { workspace = true }
|
||||||
opentelemetry = { workspace = true }
|
opentelemetry = { workspace = true }
|
||||||
opentelemetry-appender-tracing = { workspace = true }
|
opentelemetry-appender-tracing = { workspace = true, features = ["experimental_span_attributes", "experimental_metadata_attributes"] }
|
||||||
opentelemetry_sdk = { workspace = true }
|
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"] }
|
||||||
opentelemetry-stdout = { workspace = true }
|
opentelemetry-stdout = { workspace = true }
|
||||||
opentelemetry-otlp = { workspace = true }
|
opentelemetry-otlp = { workspace = true, features = ["gzip-http", "reqwest-rustls"] }
|
||||||
opentelemetry-semantic-conventions = { workspace = true }
|
opentelemetry-semantic-conventions = { workspace = true, features = ["semconv_experimental"] }
|
||||||
percent-encoding = { workspace = true }
|
percent-encoding = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tracing = { workspace = true, features = ["std", "attributes"] }
|
tracing = { workspace = true, features = ["std", "attributes"] }
|
||||||
tracing-appender = { workspace = true }
|
tracing-appender = { workspace = true }
|
||||||
tracing-error = { workspace = true }
|
tracing-error = { workspace = true }
|
||||||
tracing-opentelemetry = { workspace = true }
|
tracing-opentelemetry = { workspace = true }
|
||||||
tracing-subscriber = { workspace = true, features = ["registry", "std", "fmt", "env-filter", "tracing-log", "time", "local-time", "json"] }
|
tracing-subscriber = { workspace = true, features = ["registry", "std", "fmt", "env-filter", "tracing-log", "time", "local-time", "json"] }
|
||||||
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread", "rt", "time", "macros"] }
|
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread", "rt", "time", "macros"] }
|
||||||
tokio-util = { workspace = true }
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
dial9-tokio-telemetry = { workspace = true, optional = true }
|
dial9-tokio-telemetry = { workspace = true, optional = true }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
zstd = { workspace = true, features = ["zstdmt"] }
|
zstd = { workspace = true, features = ["zstdmt"] }
|
||||||
@@ -108,13 +108,13 @@ sysinfo = { workspace = true }
|
|||||||
nvml-wrapper = { workspace = true, optional = true }
|
nvml-wrapper = { workspace = true, optional = true }
|
||||||
|
|
||||||
[target.'cfg(any(target_os = "macos", all(target_os = "linux", target_env = "gnu", target_arch = "x86_64")))'.dependencies]
|
[target.'cfg(any(target_os = "macos", all(target_os = "linux", target_env = "gnu", target_arch = "x86_64")))'.dependencies]
|
||||||
pyroscope = { workspace = true, features = ["backend-pprof-rs"], optional = true }
|
pyroscope = { workspace = true, optional = true, features = ["backend-pprof-rs"] }
|
||||||
|
|
||||||
[target.'cfg(unix)'.dependencies]
|
[target.'cfg(unix)'.dependencies]
|
||||||
libc = { workspace = true }
|
libc = { workspace = true }
|
||||||
|
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full", "fs", "rt-multi-thread"] }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
|
|||||||
@@ -31,21 +31,21 @@ workspace = true
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
rustfs-credentials = { workspace = true }
|
rustfs-credentials = { workspace = true }
|
||||||
rustfs-config = { workspace = true, features = ["constants", "opa"] }
|
rustfs-config = { workspace = true, features = ["constants", "opa"] }
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full", "fs", "rt-multi-thread"] }
|
||||||
time = { workspace = true, features = ["serde", "parsing", "formatting", "macros"] }
|
time = { workspace = true, features = ["serde", "parsing", "formatting", "macros", "std"] }
|
||||||
serde = { workspace = true, features = ["derive", "rc"] }
|
serde = { workspace = true, features = ["derive", "rc"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
strum = { workspace = true, features = ["derive"] }
|
strum = { workspace = true, features = ["derive"] }
|
||||||
rustfs-crypto = { workspace = true }
|
rustfs-crypto = { workspace = true }
|
||||||
ipnetwork = { workspace = true, features = ["serde"] }
|
ipnetwork = { workspace = true, features = ["serde"] }
|
||||||
base64-simd = { workspace = true }
|
base64-simd = { workspace = true }
|
||||||
jsonwebtoken = { workspace = true }
|
jsonwebtoken = { workspace = true, features = ["aws_lc_rs"] }
|
||||||
regex = { workspace = true }
|
regex = { workspace = true }
|
||||||
reqwest.workspace = true
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
chrono.workspace = true
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
moka.workspace = true
|
moka = { workspace = true, features = ["future"] }
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
pollster.workspace = true
|
pollster.workspace = true
|
||||||
|
|||||||
+18
-18
@@ -67,7 +67,7 @@ rustfs-storage-api = { workspace = true }
|
|||||||
rustfs-tls-runtime = { workspace = true, optional = true }
|
rustfs-tls-runtime = { workspace = true, optional = true }
|
||||||
|
|
||||||
# Async dependencies
|
# Async dependencies
|
||||||
tokio = { workspace = true, features = ["fs", "io-util", "sync", "time"] }
|
tokio = { workspace = true, features = ["fs", "io-util", "sync", "time", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
futures-util = { workspace = true }
|
futures-util = { workspace = true }
|
||||||
|
|
||||||
@@ -75,20 +75,20 @@ futures-util = { workspace = true }
|
|||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
|
|
||||||
# Serialization
|
# Serialization
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
|
|
||||||
# Utilities
|
# Utilities
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
time = { workspace = true }
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
|
|
||||||
# S3 API dependencies
|
# S3 API dependencies
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
|
|
||||||
# FTPS specific dependencies (optional)
|
# FTPS specific dependencies (optional)
|
||||||
libunftp = { workspace = true, optional = true }
|
libunftp = { workspace = true, optional = true, features = ["experimental"] }
|
||||||
unftp-core = { workspace = true, optional = true }
|
unftp-core = { workspace = true, optional = true }
|
||||||
rustls = { workspace = true, optional = true }
|
rustls = { workspace = true, default-features = false, optional = true, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
|
|
||||||
# Swift specific dependencies (optional)
|
# Swift specific dependencies (optional)
|
||||||
rustfs-keystone = { workspace = true, optional = true }
|
rustfs-keystone = { workspace = true, optional = true }
|
||||||
@@ -96,15 +96,15 @@ rustfs-ecstore = { workspace = true, optional = true }
|
|||||||
rustfs-rio = { workspace = true, optional = true }
|
rustfs-rio = { workspace = true, optional = true }
|
||||||
axum = { workspace = true, optional = true }
|
axum = { workspace = true, optional = true }
|
||||||
http = { workspace = true, optional = true }
|
http = { workspace = true, optional = true }
|
||||||
tower = { workspace = true, optional = true }
|
tower = { workspace = true, optional = true, features = ["timeout"] }
|
||||||
regex = { workspace = true, optional = true }
|
regex = { workspace = true, optional = true }
|
||||||
percent-encoding = { workspace = true, optional = true }
|
percent-encoding = { workspace = true, optional = true }
|
||||||
sha2 = { workspace = true, optional = true }
|
sha2 = { workspace = true, optional = true }
|
||||||
uuid = { workspace = true, optional = true }
|
uuid = { workspace = true, optional = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
futures = { workspace = true, optional = true }
|
futures = { workspace = true, optional = true }
|
||||||
http-body-util = { workspace = true, optional = true }
|
http-body-util = { workspace = true, optional = true }
|
||||||
tokio-util = { workspace = true, optional = true, features = ["rt"] }
|
tokio-util = { workspace = true, optional = true, features = ["rt", "io", "compat"] }
|
||||||
serde = { workspace = true, optional = true }
|
serde = { workspace = true, optional = true, features = ["derive"] }
|
||||||
urlencoding = { workspace = true, optional = true }
|
urlencoding = { workspace = true, optional = true }
|
||||||
md5 = { workspace = true, optional = true }
|
md5 = { workspace = true, optional = true }
|
||||||
quick-xml = { workspace = true, optional = true, features = ["serialize"] }
|
quick-xml = { workspace = true, optional = true, features = ["serialize"] }
|
||||||
@@ -117,21 +117,21 @@ async-compression = { workspace = true, optional = true, features = ["tokio", "g
|
|||||||
|
|
||||||
# WebDAV specific dependencies (optional)
|
# WebDAV specific dependencies (optional)
|
||||||
dav-server = { workspace = true, optional = true }
|
dav-server = { workspace = true, optional = true }
|
||||||
hyper = { workspace = true, optional = true }
|
hyper = { workspace = true, optional = true, features = ["http2", "http1", "server"] }
|
||||||
hyper-util = { workspace = true, optional = true }
|
hyper-util = { workspace = true, optional = true, features = ["tokio", "server-auto", "server-graceful", "tracing"] }
|
||||||
tokio-rustls = { workspace = true, optional = true }
|
tokio-rustls = { workspace = true, default-features = false, optional = true, features = ["logging", "tls12", "aws-lc-rs"] }
|
||||||
|
|
||||||
# SFTP specific dependencies (optional)
|
# SFTP specific dependencies (optional)
|
||||||
russh = { workspace = true, optional = true }
|
russh = { workspace = true, optional = true, features = ["serde"] }
|
||||||
russh-sftp = { workspace = true, optional = true }
|
russh-sftp = { workspace = true, optional = true }
|
||||||
subtle = { workspace = true, optional = true }
|
subtle = { workspace = true, optional = true }
|
||||||
socket2 = { workspace = true, optional = true }
|
socket2 = { workspace = true, optional = true, features = ["all"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
tokio = { workspace = true, features = ["test-util", "macros", "rt"] }
|
tokio = { workspace = true, features = ["test-util", "macros", "rt", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[package.metadata.docs.rs]
|
[package.metadata.docs.rs]
|
||||||
all-features = true
|
all-features = true
|
||||||
|
|||||||
@@ -40,10 +40,10 @@ rustfs-tls-runtime.workspace = true
|
|||||||
rustfs-utils.workspace = true
|
rustfs-utils.workspace = true
|
||||||
flatbuffers = { workspace = true }
|
flatbuffers = { workspace = true }
|
||||||
prost = { workspace = true }
|
prost = { workspace = true }
|
||||||
tonic = { workspace = true, features = ["transport", "tls-native-roots", "tls-aws-lc"] }
|
tonic = { workspace = true, features = ["transport", "tls-native-roots", "tls-aws-lc", "gzip", "deflate"] }
|
||||||
tonic-prost = { workspace = true }
|
tonic-prost = { workspace = true }
|
||||||
tonic-prost-build = { workspace = true }
|
tonic-prost-build = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["sync"] }
|
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
|
|||||||
@@ -26,17 +26,17 @@ categories = ["web-programming", "development-tools", "filesystem"]
|
|||||||
documentation = "https://docs.rs/rustfs-replication/latest/rustfs_replication/"
|
documentation = "https://docs.rs/rustfs-replication/latest/rustfs_replication/"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
byteorder.workspace = true
|
byteorder.workspace = true
|
||||||
regex.workspace = true
|
regex.workspace = true
|
||||||
rmp.workspace = true
|
rmp.workspace = true
|
||||||
rmp-serde.workspace = true
|
rmp-serde.workspace = true
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
tokio = { workspace = true, features = ["sync"] }
|
tokio = { workspace = true, features = ["sync", "fs", "rt-multi-thread"] }
|
||||||
url.workspace = true
|
url.workspace = true
|
||||||
uuid = { workspace = true, features = ["v4", "serde"] }
|
uuid = { workspace = true, features = ["v4", "serde", "fast-rng", "macro-diagnostics"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -29,20 +29,20 @@ documentation = "https://docs.rs/rustfs-rio-v2/latest/rustfs_rio_v2/"
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
aes-gcm.workspace = true
|
aes-gcm = { workspace = true, features = ["rand_core"] }
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
chacha20poly1305.workspace = true
|
chacha20poly1305.workspace = true
|
||||||
hex.workspace = true
|
hex.workspace = true
|
||||||
hmac.workspace = true
|
hmac.workspace = true
|
||||||
minlz.workspace = true
|
minlz.workspace = true
|
||||||
pin-project-lite.workspace = true
|
pin-project-lite.workspace = true
|
||||||
rand.workspace = true
|
rand = { workspace = true, features = ["serde"] }
|
||||||
rustfs-rio.workspace = true
|
rustfs-rio.workspace = true
|
||||||
rustfs-utils.workspace = true
|
rustfs-utils.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
sha2.workspace = true
|
sha2.workspace = true
|
||||||
tokio.workspace = true
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
rustfs-filemeta.workspace = true
|
rustfs-filemeta.workspace = true
|
||||||
|
|||||||
+10
-10
@@ -35,32 +35,32 @@ hotpath = ["dep:hotpath", "hotpath/hotpath"]
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
hotpath = { workspace = true, optional = true }
|
hotpath = { workspace = true, optional = true }
|
||||||
arc-swap.workspace = true
|
arc-swap.workspace = true
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full", "fs", "rt-multi-thread"] }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
aes-gcm = { workspace = true }
|
aes-gcm = { workspace = true, features = ["rand_core"] }
|
||||||
crc-fast = { workspace = true }
|
crc-fast = { workspace = true }
|
||||||
pin-project-lite.workspace = true
|
pin-project-lite.workspace = true
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
reqwest.workspace = true
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
rustls-pki-types.workspace = true
|
rustls-pki-types.workspace = true
|
||||||
tokio-util.workspace = true
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
faster-hex.workspace = true
|
faster-hex.workspace = true
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
rustfs-config = { workspace = true, features = ["constants"] }
|
rustfs-config = { workspace = true, features = ["constants"] }
|
||||||
rustfs-io-metrics.workspace = true
|
rustfs-io-metrics.workspace = true
|
||||||
rustfs-tls-runtime.workspace = true
|
rustfs-tls-runtime.workspace = true
|
||||||
rustfs-utils = { workspace = true, features = ["io", "hash", "compress"] }
|
rustfs-utils = { workspace = true, features = ["io", "hash", "compress"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
md-5 = { workspace = true }
|
md-5 = { workspace = true }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
base64.workspace = true
|
base64.workspace = true
|
||||||
sha1.workspace = true
|
sha1.workspace = true
|
||||||
sha2.workspace = true
|
sha2.workspace = true
|
||||||
xxhash-rust = { workspace = true }
|
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
hex-simd.workspace = true
|
hex-simd.workspace = true
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ categories = ["data-structures"]
|
|||||||
workspace = true
|
workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
doctest = false
|
doctest = false
|
||||||
|
|||||||
@@ -28,22 +28,22 @@ documentation = "https://docs.rs/rustfs-s3select-api/latest/rustfs_s3select_api/
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
bytes.workspace = true
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
chrono.workspace = true
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
rustfs-common.workspace = true
|
rustfs-common.workspace = true
|
||||||
datafusion = { workspace = true, features = ["parquet", "recursive_protection", "sql"] }
|
datafusion = { workspace = true, default-features = false, features = ["parquet", "recursive_protection", "sql"] }
|
||||||
rustfs-ecstore.workspace = true
|
rustfs-ecstore.workspace = true
|
||||||
rustfs-storage-api.workspace = true
|
rustfs-storage-api.workspace = true
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
futures-core = { workspace = true }
|
futures-core = { workspace = true }
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
pin-project-lite.workspace = true
|
pin-project-lite.workspace = true
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
parking_lot.workspace = true
|
parking_lot.workspace = true
|
||||||
tokio.workspace = true
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
tokio-util.workspace = true
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
transform-stream.workspace = true
|
transform-stream.workspace = true
|
||||||
url.workspace = true
|
url.workspace = true
|
||||||
|
|||||||
@@ -29,12 +29,12 @@ documentation = "https://docs.rs/rustfs-s3select-query/latest/rustfs_s3select_qu
|
|||||||
rustfs-s3select-api = { workspace = true }
|
rustfs-s3select-api = { workspace = true }
|
||||||
async-recursion = { workspace = true }
|
async-recursion = { workspace = true }
|
||||||
async-trait.workspace = true
|
async-trait.workspace = true
|
||||||
datafusion = { workspace = true, features = ["parquet", "recursive_protection", "sql"] }
|
datafusion = { workspace = true, default-features = false, features = ["parquet", "recursive_protection", "sql"] }
|
||||||
derive_builder = { workspace = true }
|
derive_builder = { workspace = true }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
parking_lot = { workspace = true }
|
parking_lot = { workspace = true }
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
tokio = { workspace = true }
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
|
|||||||
+10
-10
@@ -33,32 +33,32 @@ workspace = true
|
|||||||
rustfs-config = { workspace = true, features = ["server-config-model"] }
|
rustfs-config = { workspace = true, features = ["server-config-model"] }
|
||||||
rustfs-common = { workspace = true }
|
rustfs-common = { workspace = true }
|
||||||
rustfs-utils = { workspace = true }
|
rustfs-utils = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["fs","sync","rt","time","macros"] }
|
tokio = { workspace = true, features = ["fs", "sync", "rt", "time", "macros", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
serde = { workspace = true, features = ["derive"] }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
futures = { workspace = true }
|
futures = { workspace = true }
|
||||||
time = { workspace = true }
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
rmp-serde = { workspace = true }
|
rmp-serde = { workspace = true }
|
||||||
rustfs-filemeta = { workspace = true }
|
rustfs-filemeta = { workspace = true }
|
||||||
tokio-util = { workspace = true }
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
rustfs-ecstore = { workspace = true }
|
rustfs-ecstore = { workspace = true }
|
||||||
rustfs-storage-api = { workspace = true }
|
rustfs-storage-api = { workspace = true }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
rustfs-data-usage = { workspace = true }
|
rustfs-data-usage = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
uuid = { workspace = true, features = ["v4", "serde"] }
|
uuid = { workspace = true, features = ["v4", "serde", "fast-rng", "macro-diagnostics"] }
|
||||||
tokio = { workspace = true, features = ["test-util"] }
|
tokio = { workspace = true, features = ["test-util", "fs", "rt-multi-thread"] }
|
||||||
# Enables the shared MockWarmBackend / xl.meta assertion helpers exposed via
|
# Enables the shared MockWarmBackend / xl.meta assertion helpers exposed via
|
||||||
# the ecstore `api::tier::test_util` facade module (rustfs/backlog#1148 ilm-6).
|
# the ecstore `api::tier::test_util` facade module (rustfs/backlog#1148 ilm-6).
|
||||||
rustfs-ecstore = { workspace = true, features = ["test-util"] }
|
rustfs-ecstore = { workspace = true, features = ["test-util"] }
|
||||||
|
|||||||
@@ -27,13 +27,13 @@ documentation = "https://docs.rs/rustfs-signer/latest/rustfs_signer/"
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
hyper.workspace = true
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
serde_urlencoded.workspace = true
|
serde_urlencoded.workspace = true
|
||||||
rustfs-utils = { workspace = true, features = ["full"] }
|
rustfs-utils = { workspace = true, features = ["full"] }
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
base64-simd.workspace = true
|
base64-simd.workspace = true
|
||||||
thiserror.workspace = true
|
thiserror.workspace = true
|
||||||
|
|
||||||
|
|||||||
@@ -32,14 +32,14 @@ async-trait.workspace = true
|
|||||||
# Storage-facing replication contracts are isolated in src/replication.rs until
|
# Storage-facing replication contracts are isolated in src/replication.rs until
|
||||||
# the underlying wire types can move without creating a replication/storage-api cycle.
|
# the underlying wire types can move without creating a replication/storage-api cycle.
|
||||||
rustfs-filemeta.workspace = true
|
rustfs-filemeta.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
time.workspace = true
|
time = { workspace = true, features = ["std", "parsing", "formatting", "macros", "serde"] }
|
||||||
uuid.workspace = true
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
insta = { workspace = true }
|
insta = { workspace = true, features = ["yaml", "json"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tokio = { workspace = true, features = ["macros", "rt"] }
|
tokio = { workspace = true, features = ["macros", "rt", "fs", "rt-multi-thread"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
+19
-19
@@ -19,45 +19,45 @@ rustfs-s3-types = { workspace = true }
|
|||||||
rustfs-utils = { workspace = true, features = ["egress"] }
|
rustfs-utils = { workspace = true, features = ["egress"] }
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
async-nats = { workspace = true }
|
async-nats = { workspace = true }
|
||||||
deadpool-postgres = { workspace = true }
|
deadpool-postgres = { workspace = true, features = ["rt_tokio_1"] }
|
||||||
hyper = { workspace = true }
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
hyper-rustls = { workspace = true }
|
hyper-rustls = { workspace = true, default-features = false, features = ["native-tokio", "http1", "tls12", "logging", "http2", "aws-lc-rs", "webpki-roots"] }
|
||||||
lapin = { workspace = true }
|
lapin = { workspace = true, default-features = false, features = ["tokio", "rustls", "rustls--aws_lc_rs"] }
|
||||||
libc = { workspace = true }
|
libc = { workspace = true }
|
||||||
pulsar = { workspace = true }
|
pulsar = { workspace = true, default-features = false, features = ["tokio-rustls-runtime", "telemetry"] }
|
||||||
regex = { workspace = true }
|
regex = { workspace = true }
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
rumqttc = { workspace = true }
|
rumqttc = { workspace = true, features = ["websocket"] }
|
||||||
redis = { workspace = true }
|
redis = { workspace = true, features = ["connection-manager", "tokio-rustls-comp", "tls-rustls-insecure"] }
|
||||||
rustls = { workspace = true }
|
rustls = { workspace = true, default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
rustls-native-certs = { workspace = true }
|
rustls-native-certs = { workspace = true }
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json = { workspace = true }
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
snap = { workspace = true }
|
snap = { workspace = true }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["fs", "rt-multi-thread", "sync", "time"] }
|
tokio = { workspace = true, features = ["fs", "rt-multi-thread", "sync", "time"] }
|
||||||
tokio-postgres = { workspace = true }
|
tokio-postgres = { workspace = true, default-features = false, features = ["runtime", "with-serde_json-1"] }
|
||||||
tokio-postgres-rustls = { workspace = true }
|
tokio-postgres-rustls = { workspace = true }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
url = { workspace = true }
|
url = { workspace = true }
|
||||||
urlencoding = { workspace = true }
|
urlencoding = { workspace = true }
|
||||||
uuid = { workspace = true, features = ["v4", "v7", "serde"] }
|
uuid = { workspace = true, features = ["v4", "v7", "serde", "fast-rng", "macro-diagnostics"] }
|
||||||
sysinfo = { workspace = true, features = ["multithread"] }
|
sysinfo = { workspace = true, features = ["multithread"] }
|
||||||
rustfs-kafka-async = { workspace = true }
|
rustfs-kafka-async = { workspace = true }
|
||||||
mysql_async = { workspace = true }
|
mysql_async = { workspace = true, default-features = false, features = ["default-rustls", "tracing"] }
|
||||||
chrono = { workspace = true }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
parking_lot = { workspace = true }
|
parking_lot = { workspace = true }
|
||||||
hashbrown = { workspace = true }
|
hashbrown = { workspace = true, features = ["serde", "rayon"] }
|
||||||
arc-swap = { workspace = true }
|
arc-swap = { workspace = true }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = { workspace = true }
|
criterion = { workspace = true, features = ["html_reports"] }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
rcgen = { workspace = true }
|
rcgen = { workspace = true }
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
name = "queue_store_benchmark"
|
name = "queue_store_benchmark"
|
||||||
|
|||||||
@@ -28,10 +28,10 @@ documentation = "https://docs.rs/rustfs-test-utils/latest/rustfs_test_utils/"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
rustfs-ecstore = { workspace = true }
|
rustfs-ecstore = { workspace = true }
|
||||||
rustfs-storage-api = { workspace = true }
|
rustfs-storage-api = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["fs", "rt"] }
|
tokio = { workspace = true, features = ["fs", "rt", "rt-multi-thread"] }
|
||||||
tokio-util = { workspace = true }
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
uuid = { workspace = true, features = ["v4"] }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ rustfs-common.workspace = true
|
|||||||
rustfs-config.workspace = true
|
rustfs-config.workspace = true
|
||||||
arc-swap.workspace = true
|
arc-swap.workspace = true
|
||||||
metrics.workspace = true
|
metrics.workspace = true
|
||||||
rustls.workspace = true
|
rustls = { workspace = true, default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
rustls-pki-types.workspace = true
|
rustls-pki-types.workspace = true
|
||||||
serde = { workspace = true, features = ["derive"] }
|
serde = { workspace = true, features = ["derive"] }
|
||||||
sha2.workspace = true
|
sha2.workspace = true
|
||||||
@@ -42,9 +42,9 @@ tracing.workspace = true
|
|||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
rcgen.workspace = true
|
rcgen.workspace = true
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
tempfile.workspace = true
|
tempfile.workspace = true
|
||||||
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "fs"] }
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
doctest = false
|
doctest = false
|
||||||
|
|||||||
@@ -28,23 +28,23 @@ categories = ["network-programming", "security", "web-programming"]
|
|||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
axum = { workspace = true }
|
axum = { workspace = true }
|
||||||
http = { workspace = true }
|
http = { workspace = true }
|
||||||
ipnetwork = { workspace = true }
|
ipnetwork = { workspace = true, features = ["serde"] }
|
||||||
metrics = { workspace = true }
|
metrics = { workspace = true }
|
||||||
moka = { workspace = true, features = ["future", "sync"] }
|
moka = { workspace = true, features = ["future", "sync"] }
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
rustfs-config = { workspace = true }
|
rustfs-config = { workspace = true }
|
||||||
rustfs-utils = { workspace = true, features = ["net"] }
|
rustfs-utils = { workspace = true, features = ["net"] }
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "sync", "time", "test-util"] }
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "sync", "time", "test-util", "fs"] }
|
||||||
tower = { workspace = true }
|
tower = { workspace = true, features = ["timeout"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
regex = { workspace = true }
|
regex = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tokio = { workspace = true, features = ["full", "test-util"] }
|
tokio = { workspace = true, features = ["full", "test-util", "fs", "rt-multi-thread"] }
|
||||||
tower = { workspace = true, features = ["util"] }
|
tower = { workspace = true, features = ["util", "timeout"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
|
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ categories = ["web-programming", "development-tools", "cryptography"]
|
|||||||
base64-simd = { workspace = true, optional = true }
|
base64-simd = { workspace = true, optional = true }
|
||||||
blake2 = { workspace = true, optional = true }
|
blake2 = { workspace = true, optional = true }
|
||||||
brotli = { workspace = true, optional = true }
|
brotli = { workspace = true, optional = true }
|
||||||
bytes = { workspace = true, optional = true }
|
bytes = { workspace = true, optional = true, features = ["serde"] }
|
||||||
crc-fast = { workspace = true, optional = true }
|
crc-fast = { workspace = true, optional = true }
|
||||||
flate2 = { workspace = true, optional = true }
|
flate2 = { workspace = true, optional = true }
|
||||||
futures = { workspace = true, optional = true }
|
futures = { workspace = true, optional = true }
|
||||||
@@ -36,21 +36,21 @@ hex-simd = { workspace = true, optional = true }
|
|||||||
highway = { workspace = true, optional = true }
|
highway = { workspace = true, optional = true }
|
||||||
hmac = { workspace = true, optional = true }
|
hmac = { workspace = true, optional = true }
|
||||||
http = { workspace = true, optional = true }
|
http = { workspace = true, optional = true }
|
||||||
hyper = { workspace = true, optional = true }
|
hyper = { workspace = true, optional = true, features = ["http2", "http1", "server"] }
|
||||||
local-ip-address = { workspace = true, optional = true }
|
local-ip-address = { workspace = true, optional = true }
|
||||||
lz4 = { workspace = true, optional = true }
|
lz4 = { workspace = true, optional = true }
|
||||||
md-5 = { workspace = true, optional = true }
|
md-5 = { workspace = true, optional = true }
|
||||||
netif = { workspace = true, optional = true }
|
netif = { workspace = true, optional = true }
|
||||||
regex = { workspace = true, optional = true }
|
regex = { workspace = true, optional = true }
|
||||||
rustix = { workspace = true, optional = true }
|
rustix = { workspace = true, optional = true, features = ["fs"] }
|
||||||
serde = { workspace = true, optional = true }
|
serde = { workspace = true, optional = true, features = ["derive"] }
|
||||||
sha1 = { workspace = true, optional = true }
|
sha1 = { workspace = true, optional = true }
|
||||||
sha2 = { workspace = true, optional = true }
|
sha2 = { workspace = true, optional = true }
|
||||||
convert_case = { workspace = true, optional = true }
|
convert_case = { workspace = true, optional = true }
|
||||||
siphasher = { workspace = true, optional = true }
|
siphasher = { workspace = true, optional = true }
|
||||||
snap = { workspace = true, optional = true }
|
snap = { workspace = true, optional = true }
|
||||||
tempfile = { workspace = true, optional = true }
|
tempfile = { workspace = true, optional = true }
|
||||||
tokio = { workspace = true, optional = true, features = ["io-util", "macros"] }
|
tokio = { workspace = true, optional = true, features = ["io-util", "macros", "fs", "rt-multi-thread"] }
|
||||||
tracing = { workspace = true }
|
tracing = { workspace = true }
|
||||||
transform-stream = { workspace = true, optional = true }
|
transform-stream = { workspace = true, optional = true }
|
||||||
url = { workspace = true, optional = true }
|
url = { workspace = true, optional = true }
|
||||||
@@ -58,7 +58,7 @@ zstd = { workspace = true, optional = true }
|
|||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "fs"] }
|
||||||
temp-env = { workspace = true }
|
temp-env = { workspace = true }
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ async-compression = { workspace = true, features = [
|
|||||||
"zstd",
|
"zstd",
|
||||||
"xz",
|
"xz",
|
||||||
] }
|
] }
|
||||||
tokio = { workspace = true, features = ["fs","io-util","macros"] }
|
tokio = { workspace = true, features = ["fs", "io-util", "macros", "rt-multi-thread"] }
|
||||||
tokio-stream = { workspace = true }
|
tokio-stream = { workspace = true }
|
||||||
astral-tokio-tar = { workspace = true }
|
astral-tokio-tar = { workspace = true }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
|
|||||||
+36
-35
@@ -104,7 +104,7 @@ rustfs-object-data-cache = { workspace = true }
|
|||||||
rustfs-concurrency = { workspace = true }
|
rustfs-concurrency = { workspace = true }
|
||||||
rustfs-scanner = { workspace = true }
|
rustfs-scanner = { workspace = true }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
starshard = { workspace = true }
|
starshard = { workspace = true, features = ["rayon", "async", "serde"] }
|
||||||
|
|
||||||
# Async Runtime and Networking
|
# Async Runtime and Networking
|
||||||
async-trait = { workspace = true }
|
async-trait = { workspace = true }
|
||||||
@@ -112,53 +112,53 @@ axum.workspace = true
|
|||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
futures-lite.workspace = true
|
futures-lite.workspace = true
|
||||||
futures-util.workspace = true
|
futures-util.workspace = true
|
||||||
hyper.workspace = true
|
hyper = { workspace = true, features = ["http2", "http1", "server"] }
|
||||||
hyper-util.workspace = true
|
hyper-util = { workspace = true, features = ["tokio", "server-auto", "server-graceful", "tracing"] }
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
http-body.workspace = true
|
http-body.workspace = true
|
||||||
http-body-util.workspace = true
|
http-body-util.workspace = true
|
||||||
reqwest = { workspace = true }
|
reqwest = { workspace = true, default-features = false, features = ["rustls", "charset", "http2", "system-proxy", "stream", "json", "blocking", "query", "form"] }
|
||||||
socket2 = { workspace = true }
|
socket2 = { workspace = true, features = ["all"] }
|
||||||
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "net", "signal", "process", "io-util"] }
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "net", "signal", "process", "io-util", "fs"] }
|
||||||
tokio-rustls = { workspace = true }
|
tokio-rustls = { workspace = true, default-features = false, features = ["logging", "tls12", "aws-lc-rs"] }
|
||||||
aws-sdk-s3 = { workspace = true }
|
aws-sdk-s3 = { workspace = true, default-features = false, features = ["sigv4a", "default-https-client", "rt-tokio"] }
|
||||||
tokio-stream.workspace = true
|
tokio-stream.workspace = true
|
||||||
tokio-util.workspace = true
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
||||||
tonic = { workspace = true }
|
tonic = { workspace = true, features = ["gzip", "deflate"] }
|
||||||
tower.workspace = true
|
tower = { workspace = true, features = ["timeout"] }
|
||||||
tower-http = { workspace = true, features = ["trace", "compression-full", "cors", "catch-panic", "timeout", "limit", "request-id", "add-extension"] }
|
tower-http = { workspace = true, features = ["trace", "compression-full", "cors", "catch-panic", "timeout", "limit", "request-id", "add-extension"] }
|
||||||
|
|
||||||
# Serialization and Data Formats
|
# Serialization and Data Formats
|
||||||
apache-avro = { workspace = true }
|
apache-avro = { workspace = true }
|
||||||
bytes = { workspace = true }
|
bytes = { workspace = true, features = ["serde"] }
|
||||||
chrono = { workspace = true, features = ["serde"] }
|
chrono = { workspace = true, features = ["serde"] }
|
||||||
flatbuffers.workspace = true
|
flatbuffers.workspace = true
|
||||||
rmp-serde.workspace = true
|
rmp-serde.workspace = true
|
||||||
quick-xml.workspace = true
|
quick-xml.workspace = true
|
||||||
rustfs-signer.workspace = true
|
rustfs-signer.workspace = true
|
||||||
serde.workspace = true
|
serde = { workspace = true, features = ["derive"] }
|
||||||
serde_json.workspace = true
|
serde_json = { workspace = true, features = ["raw_value"] }
|
||||||
serde_urlencoded = { workspace = true }
|
serde_urlencoded = { workspace = true }
|
||||||
|
|
||||||
# Cryptography and Security
|
# Cryptography and Security
|
||||||
rustls = { workspace = true }
|
rustls = { workspace = true, default-features = false, features = ["aws-lc-rs", "logging", "tls12", "prefer-post-quantum", "std"] }
|
||||||
rustls-pki-types = { workspace = true }
|
rustls-pki-types = { workspace = true }
|
||||||
subtle = { workspace = true }
|
subtle = { workspace = true }
|
||||||
jiff = { workspace = true }
|
jiff = { workspace = true, features = ["serde"] }
|
||||||
time = { workspace = true, features = ["parsing", "formatting", "serde"] }
|
time = { workspace = true, features = ["parsing", "formatting", "serde", "std", "macros"] }
|
||||||
|
|
||||||
# Utilities and Tools
|
# Utilities and Tools
|
||||||
astral-tokio-tar = { workspace = true }
|
astral-tokio-tar = { workspace = true }
|
||||||
atoi = { workspace = true }
|
atoi = { workspace = true }
|
||||||
atomic_enum = { workspace = true }
|
atomic_enum = { workspace = true }
|
||||||
async_zip = { workspace = true }
|
async_zip = { workspace = true, default-features = false, features = ["tokio", "deflate"] }
|
||||||
base64 = { workspace = true }
|
base64 = { workspace = true }
|
||||||
hmac = { workspace = true }
|
hmac = { workspace = true }
|
||||||
sha2 = { workspace = true }
|
sha2 = { workspace = true }
|
||||||
base64-simd.workspace = true
|
base64-simd.workspace = true
|
||||||
clap = { workspace = true }
|
clap = { workspace = true, features = ["derive", "env"] }
|
||||||
const-str = { workspace = true }
|
const-str = { workspace = true, features = ["std", "proc"] }
|
||||||
datafusion = { workspace = true, features = ["parquet", "recursive_protection", "sql"] }
|
datafusion = { workspace = true, default-features = false, features = ["parquet", "recursive_protection", "sql"] }
|
||||||
hex-simd.workspace = true
|
hex-simd.workspace = true
|
||||||
matchit = { workspace = true }
|
matchit = { workspace = true }
|
||||||
md5.workspace = true
|
md5.workspace = true
|
||||||
@@ -167,18 +167,18 @@ percent-encoding = { workspace = true }
|
|||||||
pin-project-lite.workspace = true
|
pin-project-lite.workspace = true
|
||||||
parking_lot = { workspace = true }
|
parking_lot = { workspace = true }
|
||||||
rust-embed = { workspace = true, features = ["interpolate-folder-path"] }
|
rust-embed = { workspace = true, features = ["interpolate-folder-path"] }
|
||||||
s3s.workspace = true
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
shadow-rs = { workspace = true, features = ["build", "metadata"] }
|
shadow-rs = { workspace = true, default-features = false, features = ["build", "metadata"] }
|
||||||
sysinfo = { workspace = true, features = ["multithread"] }
|
sysinfo = { workspace = true, features = ["multithread"] }
|
||||||
thiserror = { workspace = true }
|
thiserror = { workspace = true }
|
||||||
tracing.workspace = true
|
tracing.workspace = true
|
||||||
url = { workspace = true }
|
url = { workspace = true }
|
||||||
urlencoding = { workspace = true }
|
urlencoding = { workspace = true }
|
||||||
uuid = { workspace = true }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
zip = { workspace = true }
|
zip = { workspace = true }
|
||||||
libc = { workspace = true }
|
libc = { workspace = true }
|
||||||
rand = { workspace = true }
|
rand = { workspace = true, features = ["serde"] }
|
||||||
aes-gcm = { workspace = true }
|
aes-gcm = { workspace = true, features = ["rand_core"] }
|
||||||
chacha20poly1305 = { workspace = true }
|
chacha20poly1305 = { workspace = true }
|
||||||
|
|
||||||
# Observability and Metrics
|
# Observability and Metrics
|
||||||
@@ -186,7 +186,7 @@ metrics = { workspace = true }
|
|||||||
opentelemetry = { workspace = true }
|
opentelemetry = { workspace = true }
|
||||||
tracing-opentelemetry = { workspace = true }
|
tracing-opentelemetry = { workspace = true }
|
||||||
# Data structures
|
# Data structures
|
||||||
hashbrown = { workspace = true }
|
hashbrown = { workspace = true, features = ["serde", "rayon"] }
|
||||||
mimalloc = { workspace = true }
|
mimalloc = { workspace = true }
|
||||||
|
|
||||||
[target.'cfg(target_os = "linux")'.dependencies]
|
[target.'cfg(target_os = "linux")'.dependencies]
|
||||||
@@ -196,17 +196,17 @@ libsystemd.workspace = true
|
|||||||
libmimalloc-sys = { version = "0.1.49", features = ["extended"] }
|
libmimalloc-sys = { version = "0.1.49", features = ["extended"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
uuid = { workspace = true, features = ["v4"] }
|
uuid = { workspace = true, features = ["v4", "fast-rng", "macro-diagnostics"] }
|
||||||
serial_test = { workspace = true }
|
serial_test = { workspace = true }
|
||||||
tempfile = { workspace = true }
|
tempfile = { workspace = true }
|
||||||
aws-config = { workspace = true }
|
aws-config = { workspace = true }
|
||||||
anyhow = { workspace = true }
|
anyhow = { workspace = true }
|
||||||
insta = { workspace = true }
|
insta = { workspace = true, features = ["yaml", "json"] }
|
||||||
proptest = "1"
|
proptest = "1"
|
||||||
tokio = { workspace = true, features = ["test-util"] }
|
tokio = { workspace = true, features = ["test-util", "fs", "rt-multi-thread"] }
|
||||||
temp-env = { workspace = true, features = ["async_closure"] }
|
temp-env = { workspace = true, features = ["async_closure"] }
|
||||||
tracing-subscriber = { workspace = true }
|
tracing-subscriber = { workspace = true, features = ["env-filter", "time"] }
|
||||||
opentelemetry_sdk = { workspace = true }
|
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"] }
|
||||||
rsa = { workspace = true }
|
rsa = { workspace = true }
|
||||||
rcgen = { workspace = true }
|
rcgen = { workspace = true }
|
||||||
# Enables the shared MockWarmBackend / xl.meta assertion helpers exposed via
|
# Enables the shared MockWarmBackend / xl.meta assertion helpers exposed via
|
||||||
@@ -216,11 +216,12 @@ rustfs-ecstore = { workspace = true, features = ["test-util"] }
|
|||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
http.workspace = true
|
http.workspace = true
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
s3s = { workspace = true }
|
s3s = { workspace = true, features = ["minio"] }
|
||||||
clap = { workspace = true }
|
clap = { workspace = true, features = ["derive", "env"] }
|
||||||
hyper-util = { workspace = true, features = [
|
hyper-util = { workspace = true, features = [
|
||||||
"tokio",
|
"tokio",
|
||||||
"server-auto",
|
"server-auto",
|
||||||
"server-graceful",
|
"server-graceful",
|
||||||
|
"tracing",
|
||||||
] }
|
] }
|
||||||
shadow-rs = { workspace = true, features = ["build"] }
|
shadow-rs = { workspace = true, default-features = false, features = ["build"] }
|
||||||
|
|||||||
Reference in New Issue
Block a user