[package] name = "h2-patch" # When releasing to crates.io: # - Update CHANGELOG.md. # - Create git tag version = "0.4.5" license = "MIT" authors = ["0x676e67 "] description = "An HTTP/2 client and server" homepage = "https://github.com/crates-patch" documentation = "https://docs.rs/h2-patch" repository = "https://github.com/crates-patch/h2-patch" readme = "README.md" keywords = ["http", "async", "non-blocking"] categories = ["asynchronous", "web-programming", "network-programming"] exclude = ["fixtures/**", "ci/**"] edition = "2021" rust-version = "1.63" [features] # Enables `futures::Stream` implementations for various types. stream = [] # Enables **unstable** APIs. Any API exposed by this feature has no backwards # compatibility guarantees. In other words, you should not use this feature for # anything besides experimentation. Definitely **do not** publish a crate that # depends on this feature. unstable = [] [workspace] members = [ "tests/h2-fuzz", "tests/h2-tests", "tests/h2-support", "util/genfixture", "util/genhuff", ] [dependencies] atomic-waker = "1.0.0" futures-core = { version = "0.3", default-features = false } futures-sink = { version = "0.3", default-features = false } tokio-util = { version = "0.7.1", features = ["codec", "io"] } tokio = { version = "1", features = ["io-util"] } bytes = "1" http = "0.2" tracing = { version = "0.1.32", default-features = false, features = ["std"] } fnv = "1.0.5" slab = "0.4.2" indexmap = { version = "2", features = ["std"] } [dev-dependencies] # Fuzzing quickcheck = { version = "1.0.3", default-features = false } rand = "0.8.4" # HPACK fixtures hex = "0.4.3" walkdir = "2.3.2" serde = "1.0.0" serde_json = "1.0.0" # Examples tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "net"] } env_logger = { version = "0.10", default-features = false } tokio-rustls = "0.26" webpki-roots = "0.26" [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ["cfg(fuzzing)"] } [package.metadata.docs.rs] features = ["stream"] [[bench]] name = "main" harness = false