Cargo Features

[dependencies]
oneio = { version = "0.21.0", default-features = false, features = ["lib-core", "http", "https", "ftp", "s3", "gz", "any_gz", "gz-miniz", "gz-zlib-rs", "gz-zlib-ng", "gz-zlib-cloudflare", "bz", "lz", "xz", "zstd", "json", "digest", "cli", "native-tls", "rustls", "async"] }
default = bz, gz, https

Simple, flat feature structure

lib-core = bz, ftp, gz, http, json, lz, xz, zstd

Backward compatible lib-core feature, no longer default.

http cli? https lib-core? = reqwest

Transport features (TLS handled automatically by libraries)

Affects remote::create_client_with_headers

https default ftp? = http, rustls

https needs http

ftp lib-core? = https, suppaftp

ftp needs https

s3 cli? = rust-s3

Affects oneio::s3

gz default cli? lib-core? = gz-zlib-rs
any_gz gz-miniz? gz-zlib-cloudflare? gz-zlib-ng? gz-zlib-rs?

internal feature to enable gzip support

gz-miniz = any_gz

Enables rust_backend of flate2

feature: compressions
Turn off flate2 default-features so we can explicitly choose backend via features

gz-zlib-rs gz = any_gz

Enables zlib-rs of flate2

gz-zlib-ng = any_gz

Enables zlib-ng of flate2

gz-zlib-cloudflare = any_gz

Enables cloudflare_zlib of flate2

bz default cli? lib-core? = bzip2
lz cli? lib-core? = lz4
xz cli? lib-core? = xz2
zstd lib-core?

Enables zstd

json lib-core? = serde, serde_json

Other features

Affects oneio::read_json_struct

digest cli? = hex, ring

Affects oneio::digest

cli = bz, clap, digest, gz, http, indicatif, lz, s3, tracing, xz

CLI tool (includes common features)

Required by the binary

native-tls

Advanced: TLS selection (only if explicitly needed)

Enables native-tls of optional suppaftp ^7.0 and native-tls of optional reqwest ^0.12

feature: remote

and sync-native-tls of optional rust-s3

feature: s3

rustls https

Enables rustls and optional rust-s3, rustls-tls-native-roots and rustls-tls-webpki-roots of optional reqwest ^0.12, rustls of optional suppaftp ^7.0

Affects crypto::ensure_default_provider, oneio::crypto

async = async-compression, futures, tokio, tokio-util

Future: Async support

Affects async_reader::get_reader_async, async_reader::read_to_string_async, async_reader::download_async, oneio::async_reader, oneio::get_reader_async, oneio::read_to_string_async, oneio::download_async

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.

reqwest http?

Enables reqwest ^0.12

suppaftp ftp?

Enables suppaftp ^7.0

flate2 gz-miniz? gz-zlib-cloudflare? gz-zlib-ng? gz-zlib-rs?
bzip2 bz
lz4 lz?
xz2 xz?
ring digest?

Enables ring

feature: digest

hex digest?
serde json?

Enables serde

feature: json

serde_json json?
rust-s3 s3?
clap cli?

Enables clap

feature: cli

tracing cli?
indicatif cli?
tokio async?

Enables tokio

feature: async (Phase 3)

async-compression async?
futures async?
tokio-util async?