mirror of
https://github.com/rustfs/rustfs.git
synced 2026-01-17 01:30:33 +00:00
- Remove reed-solomon-erasure dependency and all related code - Simplify ReedSolomonEncoder from enum to struct with SIMD-only implementation - Eliminate all conditional compilation (#[cfg(feature = ...)]) - Add instance caching with RwLock-based encoder/decoder reuse - Implement reset mechanism to avoid unnecessary allocations - Ensure thread safety with proper cache management - Update documentation and benchmark scripts for SIMD-only approach - Apply code formatting across all files Breaking Changes: - Removes support for reed-solomon-erasure feature flag - API remains compatible but implementation is now SIMD-only Performance Impact: - Improved encoding/decoding performance through SIMD optimization - Reduced memory allocations via instance caching - Enhanced thread safety and concurrency support
106 lines
2.9 KiB
TOML
106 lines
2.9 KiB
TOML
[package]
|
|
name = "ecstore"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
[lints]
|
|
workspace = true
|
|
|
|
[features]
|
|
default = []
|
|
|
|
[dependencies]
|
|
rustfs-config = { workspace = true, features = ["constants"] }
|
|
async-trait.workspace = true
|
|
backon.workspace = true
|
|
blake2 = { workspace = true }
|
|
bytes.workspace = true
|
|
byteorder = { workspace = true }
|
|
common.workspace = true
|
|
policy.workspace = true
|
|
chrono.workspace = true
|
|
glob = { workspace = true }
|
|
thiserror.workspace = true
|
|
flatbuffers.workspace = true
|
|
futures.workspace = true
|
|
tracing.workspace = true
|
|
serde.workspace = true
|
|
time.workspace = true
|
|
bytesize.workspace = true
|
|
serde_json.workspace = true
|
|
tracing-error.workspace = true
|
|
s3s.workspace = true
|
|
http.workspace = true
|
|
highway = { workspace = true }
|
|
url.workspace = true
|
|
uuid = { workspace = true, features = ["v4", "fast-rng", "serde"] }
|
|
reed-solomon-simd = { version = "3.0.0" }
|
|
transform-stream = "0.3.1"
|
|
lazy_static.workspace = true
|
|
lock.workspace = true
|
|
regex = { workspace = true }
|
|
netif = { workspace = true }
|
|
nix = { workspace = true }
|
|
path-absolutize = { workspace = true }
|
|
protos.workspace = true
|
|
rmp.workspace = true
|
|
rmp-serde.workspace = true
|
|
tokio-util = { workspace = true, features = ["io", "compat"] }
|
|
crc32fast = { workspace = true }
|
|
siphasher = { workspace = true }
|
|
base64-simd = { workspace = true }
|
|
base64 = { workspace = true }
|
|
hmac = { workspace = true }
|
|
sha2 = { workspace = true }
|
|
hex-simd = { workspace = true }
|
|
path-clean = { workspace = true }
|
|
tempfile.workspace = true
|
|
tokio = { workspace = true, features = ["io-util", "sync", "signal"] }
|
|
tokio-stream = { workspace = true }
|
|
tonic.workspace = true
|
|
xxhash-rust = { workspace = true, features = ["xxh64", "xxh3"] }
|
|
num_cpus = { workspace = true }
|
|
rand.workspace = true
|
|
pin-project-lite.workspace = true
|
|
md-5.workspace = true
|
|
madmin.workspace = true
|
|
workers.workspace = true
|
|
reqwest = { workspace = true }
|
|
aws-sdk-s3 = { workspace = true }
|
|
once_cell = { workspace = true }
|
|
rustfs-rsc = { workspace = true }
|
|
urlencoding = { workspace = true }
|
|
smallvec = { workspace = true }
|
|
shadow-rs.workspace = true
|
|
rustfs-filemeta.workspace = true
|
|
rustfs-utils = { workspace = true, features = ["full"] }
|
|
rustfs-rio.workspace = true
|
|
futures-util.workspace = true
|
|
serde_urlencoded.workspace = true
|
|
|
|
[target.'cfg(not(windows))'.dependencies]
|
|
nix = { workspace = true }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
winapi = { workspace = true }
|
|
|
|
|
|
[dev-dependencies]
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
|
|
criterion = { version = "0.5", features = ["html_reports"] }
|
|
temp-env = "0.2.0"
|
|
|
|
[build-dependencies]
|
|
shadow-rs = { workspace = true, features = ["build", "metadata"] }
|
|
|
|
[[bench]]
|
|
name = "erasure_benchmark"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "comparison_benchmark"
|
|
harness = false |