# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "flate2"
version = "1.0.20"
authors = ["Alex Crichton <alex@alexcrichton.com>", "Josh Triplett <josh@joshtriplett.org>"]
description = "DEFLATE compression and decompression exposed as Read/BufRead/Write streams.\nSupports miniz_oxide, miniz.c, and multiple zlib implementations. Supports\nzlib, gzip, and raw deflate streams.\n"
homepage = "https://github.com/rust-lang/flate2-rs"
documentation = "https://docs.rs/flate2"
readme = "README.md"
keywords = ["gzip", "deflate", "zlib", "zlib-ng", "encoding"]
categories = ["compression", "api-bindings"]
license = "MIT/Apache-2.0"
repository = "https://github.com/rust-lang/flate2-rs"
[dependencies.cfg-if]
version = "1.0.0"

[dependencies.cloudflare-zlib-sys]
version = "0.2.0"
optional = true

[dependencies.crc32fast]
version = "1.2.0"

[dependencies.futures]
version = "0.1.25"
optional = true

[dependencies.libc]
version = "0.2.65"

[dependencies.libz-sys]
version = "1.1.0"
optional = true
default-features = false

[dependencies.miniz-sys]
version = "0.1.11"
optional = true

[dependencies.miniz_oxide]
version = "0.4.0"
optional = true
default-features = false

[dependencies.tokio-io]
version = "0.1.11"
optional = true
[dev-dependencies.futures]
version = "0.1"

[dev-dependencies.quickcheck]
version = "0.9"
default-features = false

[dev-dependencies.rand]
version = "0.7"

[dev-dependencies.tokio-io]
version = "0.1.11"

[dev-dependencies.tokio-tcp]
version = "0.1.3"

[dev-dependencies.tokio-threadpool]
version = "0.1.10"

[features]
any_zlib = []
cloudflare_zlib = ["any_zlib", "cloudflare-zlib-sys"]
default = ["rust_backend"]
rust_backend = ["miniz_oxide"]
tokio = ["tokio-io", "futures"]
zlib = ["any_zlib", "libz-sys"]
zlib-ng-compat = ["zlib", "libz-sys/zlib-ng"]
[target."cfg(all(target_arch = \"wasm32\", not(target_os = \"emscripten\")))".dependencies.miniz_oxide]
version = "0.4.0"
default-features = false
