Cargo Features

[dependencies]
cachepot = { version = "0.1.0-rc.1", default-features = false, features = ["all", "azure", "s3", "gcs", "memcached", "native-zlib", "unstable", "dist-client", "dist-worker", "dist-tests", "vs_openssl"] }
default = all

The all feature is set by default whenever cachepot is added without default-features = false somewhere in the dependency tree.

all default = azure, dist-client, gcs, memcached, redis, s3
azure all = chrono, hmac, hyper, hyperx, md-5, sha2, url

Affects cache::azure

s3 all = chrono, hmac, hyper, hyper-tls, hyperx, reqwest, rusoto_core, rusoto_s3, sha-1

Affects cache::s3

gcs all = chrono, hyper, hyperx, percent-encoding, reqwest, ring, untrusted, url

Affects cache::gcs

memcached all = memcached-rs

Affects cache::memcached

native-zlib
unstable

Enable features that require unstable features of Nightly Rust.

dist-client all dist-tests? = ar, flate2, hyper, hyperx, sha2, url

Enables distributed support in the cachepot client

Enables stream of reqwest ^0.11.7, fs of tokio

Affects args::IterStrings, compiler::CAN_DIST_DYLIBS, compiler::CAN_DIST_DYLIBS, compiler::DistPackagers, compiler::Compiler.get_toolchain_packager, compiler::Compilation.into_dist_packagers, compiler::OutputsRewriter, compiler::NoopOutputsRewriter, dist::client_auth, dist::pkg, config::HTTPUrl, config::WorkerUrl, config::DistConfig.scheduler_url, dist::http, util::native_tls_no_sni_client_builder

dist-worker dist-tests? vs_openssl? = chrono, crossbeam-utils, flate2, hyperx, jsonwebtoken, libmount, nix, reqwest, sha2, syslog, thiserror, version-compare, void, warp

Enables the cachepot-dist binary

Affects config::scheduler, config::worker, dist::SchedulerOutgoing, dist::WorkerOutgoing, dist::JobAuthorizer, dist::SchedulerIncoming, dist::WorkerIncoming, dist::BuilderIncoming, config::HTTPUrl, config::WorkerUrl, config::DistConfig.scheduler_url, dist::http, util::native_tls_no_sni_client_builder

Required by the cachepot-dist binary

dist-tests = dist-client, dist-worker

Enables dist tests with external requirements

vs_openssl = dist-worker, openssl

Run JWK token crypto against openssl ref impl

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

ar dist-client?

Enables ar ^0.8

chrono azure? dist-worker? gcs? s3?
flate2 dist-client? dist-worker?
hmac azure? s3?

Enables hmac ^0.10

hyper azure? dist-client? gcs? s3?

Enables hyper ^0.14

Affects errors::BadHttpStatusError

hyper-tls s3?

Enables hyper-tls ^0.5

hyperx azure? dist-client? dist-worker? gcs? s3?

Enables hyperx ^0.13

jsonwebtoken dist-worker?

Enables jsonwebtoken ^7

md-5 azure?

Enables md-5 ^0.9

memcached-rs memcached?
percent-encoding gcs?
redis all

Enables redis ^0.21

Affects cache::redis

reqwest dist-client? dist-worker? gcs? s3?

Enables reqwest ^0.11.7

ring gcs?

Enables ring ^0.16

rusoto_core s3?

Enables rusoto_core ^0.47

rusoto_s3 s3?

Enables rusoto_s3 ^0.47

sha-1 s3?

Enables sha-1 ^0.9

sha2 azure? dist-client? dist-worker?

Enables sha2 ^0.9

untrusted gcs?

Enables untrusted ^0.7

url azure? dist-client? gcs?
crossbeam-utils dist-worker?

Enables crossbeam-utils

dist-worker only

libmount dist-worker?
nix dist-worker?

Enables nix ^0.19

syslog dist-worker?

Enables syslog ^5

void dist-worker?
version-compare dist-worker?

Enables version-compare ^0.0.11

warp dist-worker?
thiserror dist-worker?
openssl vs_openssl?

Enables openssl

test only