diff --git a/s3/Cargo.toml b/s3/Cargo.toml index f1640e3663..2ebf10bd94 100644 --- a/s3/Cargo.toml +++ b/s3/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rust-s3" -version = "0.36.0-alpha.4" +version = "0.36.0-alpha.5" authors = ["Drazen Urch"] description = "Rust library for working with AWS S3 and compatible object storage APIs" repository = "https://github.com/durch/rust-s3" @@ -68,9 +68,7 @@ serde = "1" serde_derive = "1" serde_json = "1" sha2 = "0.10" -surf = { version = "2", optional = true, default-features = false, features = [ - "h1-client-rustls", -] } +surf = { version = "2", optional = true, default-features = false } thiserror = { version = "1", default-features = false } time = { version = "^0.3.6", features = [ "formatting", @@ -79,17 +77,16 @@ time = { version = "^0.3.6", features = [ tokio = { version = "1", features = [ "io-util", ], optional = true, default-features = false } -tokio-native-tls = { version = "0.3", optional = true } -tokio-rustls = { version = "0.26", optional = true } tokio-stream = { version = "0.1", optional = true } url = "2" [features] -default = ["tags", "tokio-native-tls", "fail-on-err"] +default = ["fail-on-err", "tags", "tokio-native-tls"] sync = ["attohttpc", "maybe-async/is_sync"] -with-async-std = ["async-std", "surf", "futures"] -with-tokio = ["reqwest", "tokio", "tokio/fs", "tokio-stream", "futures"] +with-async-std-hyper = ["with-async-std", "surf/hyper-client"] +with-async-std = ["async-std", "futures"] +with-tokio = ["futures", "reqwest", "tokio", "tokio/fs", "tokio-stream"] blocking = ["block_on_proc", "tokio/rt", "tokio/rt-multi-thread"] fail-on-err = [] @@ -97,28 +94,27 @@ tags = ["minidom"] http-credentials = ["aws-creds/http-credentials"] -tokio-native-tls = [ +tokio-native-tls = ["aws-creds/native-tls", "reqwest/native-tls", "with-tokio"] +tokio-rustls-tls = ["aws-creds/rustls-tls", "reqwest/rustls-tls", "with-tokio"] + +async-std-native-tls = [ "aws-creds/native-tls", - "reqwest/native-tls", - "dep:tokio-native-tls", - "with-tokio", + "with-async-std", + "surf/h1-client", ] -tokio-rustls-tls = [ +async-std-rustls-tls = [ "aws-creds/rustls-tls", - "reqwest/rustls-tls", - "tokio-rustls", - "with-tokio", + "with-async-std", + "surf/h1-client-rustls", ] -async-std-native-tls = ["with-async-std", "aws-creds/native-tls"] - -sync-native-tls = ["sync", "aws-creds/native-tls", "attohttpc/tls"] +sync-native-tls = ["attohttpc/tls", "aws-creds/native-tls", "sync"] sync-native-tls-vendored = [ - "sync", - "aws-creds/native-tls-vendored", "attohttpc/tls-vendored", + "aws-creds/native-tls-vendored", + "sync", ] -sync-rustls-tls = ["sync", "aws-creds/rustls-tls", "attohttpc/tls-rustls"] +sync-rustls-tls = ["attohttpc/tls-rustls", "aws-creds/rustls-tls", "sync"] disable-call-for-funding = [] diff --git a/s3/Makefile b/s3/Makefile index d5c96de275..b7dd409bbe 100644 --- a/s3/Makefile +++ b/s3/Makefile @@ -37,16 +37,41 @@ tokio-rustlstls-test-ignored: cargo test --no-default-features --features with-tokio --features tokio-rustls-tls --features aws-creds/http-credentials -- --ignored # async-std -async-std: async-std-clippy async-std-test async-std-clippy +async-std: async-std-clippy async-std-test async-std-clippy async-std-native-tls async-std-rustls-tls async-std-clippy: - cargo clippy --no-default-features --features with-async-std --features aws-creds/http-credentials -- -D warnings + cargo clippy --no-default-features --features with-async-std-hyper --features aws-creds/http-credentials -- -D warnings async-std-test: async-std-test-not-ignored async-std-test-ignored async-std-test-blocking-ignored async-std-test-not-ignored: - cargo test --no-default-features --features with-async-std --features aws-creds/http-credentials + cargo test --no-default-features --features with-async-std-hyper --features aws-creds/http-credentials async-std-test-ignored: - cargo test --no-default-features --features with-async-std --features aws-creds/http-credentials -- --ignored + cargo test --no-default-features --features with-async-std-hyper --features aws-creds/http-credentials -- --ignored async-std-test-blocking-ignored: - cargo test --no-default-features --features with-async-std --features blocking --features aws-creds/http-credentials -- --ignored + cargo test --no-default-features --features with-async-std-hyper --features blocking --features aws-creds/http-credentials -- --ignored + +async-std-native-tls: async-std-clippy-native-tls async-std-test-native-tls async-std-clippy-native-tls +async-std-clippy-native-tls: + cargo clippy --no-default-features --features async-std-native-tls --features aws-creds/http-credentials -- -D warnings +async-std-test-native-tls: async-std-test-not-ignored async-std-test-ignored async-std-test-blocking-ignored +async-std-test-not-ignored-native-tls: + cargo test --no-default-features --features async-std-native-tls --features aws-creds/http-credentials +async-std-test-ignored-native-tls: + cargo test --no-default-features --features async-std-native-tls --features aws-creds/http-credentials -- --ignored +async-std-test-blocking-ignored-native-tls: + cargo test --no-default-features --features async-std-native-tls --features blocking --features aws-creds/http-credentials -- --ignored + +async-std-rustls-tls: async-std-clippy-rustls-tls async-std-test-rustls-tls async-std-clippy-rustls-tls +async-std-clippy-rustls-tls: + cargo clippy --no-default-features --features async-std-rustls-tls --features aws-creds/http-credentials -- -D warnings +async-std-test-rustls-tls: async-std-test-not-ignored async-std-test-ignored async-std-test-blocking-ignored +async-std-test-not-ignored-rustls-tls: + cargo test --no-default-features --features async-std-rustls-tls --features aws-creds/http-credentials +async-std-test-ignored-rustls-tls: + cargo test --no-default-features --features async-std-rustls-tls --features aws-creds/http-credentials -- --ignored +async-std-test-blocking-ignored-rustls-tls: + cargo test --no-default-features --features async-std-rustls-tls --features blocking --features aws-creds/http-credentials -- --ignored + + + # sync sync-nativetls: sync-nativetls-clippy sync-nativetls-test