[package] edition = "2018" name = "threescalers" description = "3scale API client library for Rust" version = "0.8.0" authors = ["Alejandro Martinez Ruiz ", "David Ortiz Lopez "] license = "Apache-2.0" repository = "https://github.com/3scale-rs/threescalers" readme = "README.md" keywords = ["3scale", "api-management", "api", "apisonator"] categories = ["api-bindings"] exclude = [ ".gitignore", "bors.toml", ".mailmap", "/ci/**", "/.github/**", ] [badges] codecov = { repository = "3scale-rs/threescalers" } maintenance = { status = "actively-developed" } [features] default = ["std", "xml-response", "rest-mappings"] # Use std library std = ["no-std-compat/std", "anyhow/std", "regex/std"] # Add in conversions for http's crate types http-types = ["http_types"] # Add in conversions for reqwest's crate types reqwest-async = ["reqwest", "http-types"] reqwest-sync = ["reqwest", "reqwest/blocking", "http-types"] reqwest-all = ["reqwest-async", "reqwest-sync"] # Add in conversions for curl's crate types curl-easy = ["curl"] curl-easy2 = ["curl"] curl-all = ["curl-easy", "curl-easy2"] # Include all supported clients types all-types = ["http-types", "reqwest-all", "curl-all"] # Response parsing xml-response = ["serde-xml-rs", "serde", "chrono"] # HTTP mapping rules rest-mappings = ["regex", "lazy_static"] rest-mappings-serde = ["serde"] [dependencies] percent-encoding = "^2" http_types = { version = "^0.2", package = "http", optional = true } reqwest = { version = ">= 0.10, < 0.12", optional = true } curl = { version = "^0.4", optional = true } serde = { version = "^1", optional = true, default-features = false, features = ["alloc", "derive"] } serde-xml-rs = { version = "^0.4", optional = true } chrono = { version = "^0.4", optional = true, default-features = false } no-std-compat = { version = "^0.4", features = ["alloc"] } anyhow = { version = "^1", default-features = false } regex = { version = "^1", optional = true, default-features = false, features = ["perf"] } # lazy_static has a "negative" no_std flag rather than an additive "std" flag :/ lazy_static = { version = "^1", optional = true, default-features = false, features = ["spin_no_std"] } [[example]] name = "reqwest-report" required-features = ["reqwest-sync"] [[example]] name = "curl-easy-report" required-features = ["curl-easy"] [[example]] name = "curl-easy2-report" required-features = ["curl-easy2"] [dev-dependencies] serde_json = "^1.0" itertools = "^0.10" rand = "^0.8"