[package] name = "rustypipe-downloader" version = "0.2.4" rust-version = "1.67.1" edition.workspace = true authors.workspace = true license.workspace = true repository.workspace = true keywords.workspace = true categories.workspace = true description = "Downloader extension for RustyPipe" [features] default = ["default-tls"] # Reqwest TLS options default-tls = ["reqwest/default-tls", "rustypipe/default-tls"] native-tls = ["reqwest/native-tls", "rustypipe/native-tls"] native-tls-alpn = ["reqwest/native-tls-alpn", "rustypipe/native-tls-alpn"] native-tls-vendored = [ "reqwest/native-tls-vendored", "rustypipe/native-tls-vendored", ] rustls-tls-webpki-roots = [ "reqwest/rustls-tls-webpki-roots", "rustypipe/rustls-tls-webpki-roots", ] rustls-tls-native-roots = [ "reqwest/rustls-tls-native-roots", "rustypipe/rustls-tls-native-roots", ] audiotag = ["dep:lofty", "dep:image", "dep:smartcrop2"] [dependencies] rustypipe.workspace = true once_cell.workspace = true regex.workspace = true thiserror.workspace = true futures.workspace = true reqwest = { workspace = true, features = ["stream"] } rand.workspace = true tokio = { workspace = true, features = ["macros", "fs", "process"] } indicatif = { workspace = true, optional = true } filenamify.workspace = true tracing.workspace = true time.workspace = true lofty = { version = "0.21.0", optional = true } image = { version = "0.25.0", optional = true, default-features = false, features = [ "rayon", "jpeg", "webp", ] } smartcrop2 = { version = "0.3.1", optional = true } [dev-dependencies] path_macro.workspace = true rstest.workspace = true serde_json.workspace = true temp_testdir = "0.2.3" [package.metadata.docs.rs] # To build locally: # RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --features indicatif,audiotag --no-deps --open features = ["indicatif", "audiotag"] rustdoc-args = ["--cfg", "docsrs"]