[[bench]]
harness = false
name = "sha256_md5_digest_benchmark"
path = "benches/sha256_md5_digest_benchmark.rs"
[[bin]]
name = "s3m"
path = "src/bin/s3m.rs"
[dependencies.anyhow]
version = "1"
[dependencies.base64ct]
features = ["alloc"]
version = "1.8"
[dependencies.blake3]
version = "1"
[dependencies.bytes]
version = "1"
[dependencies.bytesize]
version = "2"
[dependencies.chacha20poly1305]
features = ["stream"]
version = "0.10.1"
[dependencies.chrono]
version = "0.4"
[dependencies.clap]
features = ["env", "string"]
version = "4"
[dependencies.colored]
version = "3"
[dependencies.crc32c]
version = "0.6"
[dependencies.crc32fast]
version = "1.4"
[dependencies.crossbeam]
version = "0.8"
[dependencies.dirs]
version = "6"
[dependencies.env_logger]
version = "0.11"
[dependencies.futures]
version = "0.3"
[dependencies.http]
version = "1"
[dependencies.indicatif]
version = "0.18"
[dependencies.log]
version = "0.4"
[dependencies.md5]
version = "0.8"
[dependencies.num_cpus]
version = "1.17"
[dependencies.percent-encoding]
version = "2.3"
[dependencies.quick-xml]
features = ["serialize"]
version = "0.38"
[dependencies.rand]
version = "0.9.1"
[dependencies.regex]
version = "1.11"
[dependencies.reqwest]
default-features = false
features = ["stream", "rustls"]
version = "0.13"
[dependencies.ring]
version = "0.17"
[dependencies.rkyv]
features = ["bytecheck"]
version = "0.8"
[dependencies.secrecy]
features = ["serde"]
version = "0.10.3"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde_yaml_ng]
version = "0.10"
[dependencies.sled]
version = "0.34"
[dependencies.temp-env]
version = "0.3.6"
[dependencies.tempfile]
version = "3"
[dependencies.tokio]
features = ["full"]
version = "1"
[dependencies.tokio-stream]
version = "0.1.17"
[dependencies.tokio-util]
features = ["codec"]
version = "0.7"
[dependencies.url]
version = "2.5"
[dependencies.zstd]
version = "0.13"
[dev-dependencies.criterion]
features = ["async_futures"]
version = "0.8"
[dev-dependencies.mockito]
version = "1.7.0"
[dev-dependencies.testcontainers]
version = "0.26"
[lib]
name = "s3m"
path = "src/lib.rs"
[lints.clippy]
all = "deny"
await_holding_lock = "deny"
complexity = "deny"
correctness = "deny"
expect_used = "deny"
indexing_slicing = "deny"
large_stack_arrays = "deny"
needless_borrow = "deny"
needless_collect = "deny"
panic = "deny"
pedantic = "deny"
perf = "deny"
suspicious = "deny"
unwrap_used = "deny"
[lints.clippy.nursery]
level = "allow"
priority = -1
[lints.rust]
warnings = "deny"
[package]
authors = ["Nicolas Embriz <nbari@tequila.io>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["command-line-utilities", "command-line-interface"]
description = "CLI for streams of data in S3 buckets"
documentation = "https://github.com/s3m/s3m/blob/master/README.md"
edition = "2024"
homepage = "https://s3m.stream"
keywords = ["s3", "stream", "upload", "resume", "bucket"]
license = "BSD-3-Clause"
name = "s3m"
readme = "README.md"
repository = "https://github.com/s3m/s3m"
version = "0.14.5"
[package.metadata.deb]
assets = [["target/release/s3m", "/usr/bin/s3m", "755"]]
depends = ""
[[package.metadata.generate-rpm.assets]]
dest = "/usr/bin/s3m"
mode = "0755"
source = "target/release/s3m"
[profile.release]
codegen-units = 1
lto = "fat"
opt-level = 3
panic = "abort"
strip = true
[[test]]
name = "e2e_binary"
path = "tests/e2e_binary.rs"
[[test]]
name = "e2e_cb"
path = "tests/e2e_cb.rs"
[[test]]
name = "e2e_get"
path = "tests/e2e_get.rs"
[[test]]
name = "e2e_ls"
path = "tests/e2e_ls.rs"
[[test]]
name = "e2e_misc"
path = "tests/e2e_misc.rs"
[[test]]
name = "e2e_put"
path = "tests/e2e_put.rs"
[[test]]
name = "e2e_rm"
path = "tests/e2e_rm.rs"
[[test]]
name = "integration_encryption"
path = "tests/integration_encryption.rs"
[[test]]
name = "integration_multipart"
path = "tests/integration_multipart.rs"
[[test]]
name = "integration_stdin"
path = "tests/integration_stdin.rs"