[package]
edition = "2024"
name = "spill"
version = "0.5.2"
build = "build.rs"
include = [
"Cargo.toml",
"Cargo.lock",
"build.rs",
"LICENSE",
"README.md",
"src/**",
"tests/**/*.rs",
"tests/interop/*.py",
"tests/interop/*.md",
"tests/interop/baselines/*.json",
"deploy/**",
"docs/**",
]
publish = ["crates-io"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Modern torrent client"
homepage = "https://spill.rs"
documentation = "https://spill.rs/docs/"
readme = "README.md"
keywords = [
"bittorrent",
"torrent",
"daemon",
]
categories = [
"command-line-utilities",
"network-programming",
]
license = "Apache-2.0"
repository = "https://github.com/spillrs/spill"
[lib]
name = "spill"
path = "src/lib.rs"
[[bin]]
name = "spill"
path = "src/daemon/main.rs"
[[test]]
name = "daemon"
path = "tests/daemon.rs"
[[test]]
name = "protocol"
path = "tests/protocol.rs"
[dependencies.base64]
version = "0.22"
[dependencies.clap]
version = "4.6.7"
features = ["derive"]
[dependencies.getrandom]
version = "0.2"
features = ["std"]
[dependencies.reqwest]
version = "0.12.28"
features = ["rustls-tls-webpki-roots"]
default-features = false
[dependencies.serde]
version = "1"
features = [
"derive",
"rc",
]
[dependencies.sha1]
version = "0.11"
[dependencies.socket2]
version = "0.6"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"fs",
"io-util",
"macros",
"net",
"rt",
"signal",
"sync",
"time",
]
[dependencies.tracing]
version = "0.1"
features = ["std"]
default-features = false
[dependencies.url]
version = "2.5.8"
[dev-dependencies.tokio]
version = "1"
features = [
"process",
"test-util",
]
[target.'cfg(target_os = "macos")'.dependencies.tokio]
version = "1"
features = ["process"]
[target."cfg(unix)".dependencies.axum]
version = "0.8"
features = [
"http1",
"json",
"query",
"tokio",
]
default-features = false
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[target."cfg(unix)".dependencies.rusqlite]
version = "0.32"
features = ["bundled"]
[target."cfg(unix)".dependencies.rustix]
version = "1.1"
features = [
"fs",
"process",
]
[target."cfg(unix)".dependencies.serde_json]
version = "1"
[target."cfg(unix)".dependencies.toml]
version = "0.8"
[lints.rust]
unsafe_code = "forbid"