| [package] |
| name = "sccache" |
| version = "0.4.1" |
| license = "Apache-2.0" |
| description = "Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible, storing a cache in a remote storage using various cloud storage." |
| repository = "https://github.com/mozilla/sccache/" |
| readme = "README.md" |
| categories = ["command-line-utilities", "development-tools::build-utils"] |
| keywords = ["ccache"] |
| edition = "2021" |
| rust-version = "1.64" |
| |
| [[bin]] |
| name = "sccache" |
| |
| [[bin]] |
| name = "sccache-dist" |
| required-features = ["dist-server"] |
| |
| [profile.release] |
| codegen-units = 1 |
| lto = true |
| strip = true |
| |
| [dependencies] |
| anyhow = "1.0" |
| ar = "0.9" |
| async-trait = "0.1" |
| base64 = "0.21" |
| bincode = "1" |
| blake3 = "1" |
| byteorder = "1.0" |
| bytes = "1" |
| opendal = { version= "0.29.1", optional=true } |
| reqsign = {version="0.8.5", optional=true} |
| clap = { version = "4.1.11", features = ["derive", "env", "wrap_help"] } |
| directories = "4.0.1" |
| encoding = "0.2" |
| env_logger = "0.10" |
| filetime = "0.2" |
| flate2 = { version = "1.0", optional = true, default-features = false, features = ["rust_backend"] } |
| fs-err = "2.9" |
| futures = "0.3" |
| gzp = { version = "0.11.3", default-features = false, features = ["deflate_rust"] } |
| http = "0.2" |
| hyper = { version = "0.14.24", optional = true, features = ["server"] } |
| is-terminal = "0.4.5" |
| jobserver = "0.1" |
| jwt = { package = "jsonwebtoken", version = "8", optional = true } |
| lazy_static = "1.0.0" |
| libc = "0.2.140" |
| linked-hash-map = "0.5" |
| log = "0.4" |
| num_cpus = "1.15" |
| number_prefix = "0.4" |
| openssl = { version = "0.10.48", optional = true } |
| rand = "0.8.4" |
| regex = "1.7.3" |
| reqwest = { version = "0.11", features = ["json", "blocking", "stream", "rustls-tls", "trust-dns"], optional = true } |
| retry = "2" |
| semver = "1.0" |
| sha2 = { version = "0.10.6", optional = true } |
| serde = { version = "1.0", features = ["derive"] } |
| serde_json = "1.0" |
| strip-ansi-escapes = "0.1" |
| tar = "0.4.36" |
| tempfile = "3" |
| # trust-dns-resolver must be kept in sync with the version reqwest uses |
| trust-dns-resolver = { version = "0.22.0", features = ["dnssec-ring", "dns-over-rustls", "dns-over-https-rustls"] } |
| mime = "0.3" |
| tokio = { version = "1", features = ["rt-multi-thread", "io-util", "time", "net", "process", "macros"] } |
| tokio-serde = "0.8" |
| tokio-util = { version = "0.7", features = ["codec", "io"] } |
| tower = "0.4" |
| toml = "0.7" |
| url = { version = "2", optional = true } |
| uuid = { version = "1.3", features = ["v4"] } |
| walkdir = "2" |
| # by default which pulls in an outdated failure version |
| which = { version = "4", default-features = false } |
| zip = { version = "0.6", default-features = false } |
| zstd = "0.12" |
| |
| # dist-server only |
| nix = { version = "0.26.2", optional = true } |
| rouille = { version = "3.5", optional = true, default-features = false, features = ["ssl"] } |
| syslog = { version = "6", optional = true } |
| void = { version = "1", optional = true } |
| version-compare = { version = "0.1.1", optional = true } |
| |
| [dev-dependencies] |
| assert_cmd = "2.0.10" |
| cc = "1.0" |
| chrono = "0.4.24" |
| itertools = "0.10" |
| predicates = "=3.0.2" |
| thirtyfour_sync = "0.27" |
| once_cell = "1.17" |
| serial_test = "2.0" |
| |
| [target.'cfg(unix)'.dependencies] |
| daemonize = "0.5" |
| |
| [target.'cfg(not(target_os = "freebsd"))'.dependencies.libmount] |
| optional = true |
| version = "0.1.10" |
| |
| [target.'cfg(windows)'.dependencies] |
| parity-tokio-ipc = "0.9" |
| |
| [target.'cfg(windows)'.dependencies.winapi] |
| version = "0.3" |
| features = [ |
| "fileapi", |
| "handleapi", |
| "stringapiset", |
| "winnls", |
| ] |
| |
| [features] |
| default = ["all"] |
| all = ["dist-client", "redis", "s3", "memcached", "gcs", "azure", "gha", "webdav"] |
| azure = ["opendal","reqsign"] |
| s3 = ["opendal","reqsign"] |
| gcs = ["opendal","reqsign", "url", "reqwest/blocking"] |
| gha = ["opendal"] |
| webdav = ["opendal"] |
| memcached = ["opendal/services-memcached"] |
| native-zlib = [] |
| redis = ["url", "opendal/services-redis"] |
| # Enable features that will build a vendored version of openssl and |
| # statically linked with it, instead of linking against the system-wide openssl |
| # dynamically or statically. |
| vendored-openssl = ["openssl?/vendored"] |
| # Enable features that require unstable features of Nightly Rust. |
| unstable = [] |
| # Enables distributed support in the sccache client |
| dist-client = ["flate2", "hyper", "reqwest", "url", "sha2"] |
| # Enables the sccache-dist binary |
| dist-server = ["jwt", "flate2", "libmount", "nix", "openssl", "reqwest", "rouille", "syslog", "void", "version-compare"] |
| # Enables dist tests with external requirements |
| dist-tests = ["dist-client", "dist-server"] |
| |
| [workspace] |
| exclude = ["tests/test-crate"] |