[package] name = "manas_http" version = "0.1.1" edition = "2021" description = "This crate provides extended functionality for handling http semantics, that integrates into [`hyper`](https://docs.rs/hyper/latest/hyper/index.html) ecosystem." repository = "https://github.com/manomayam/manas" license = "MIT OR Apache-2.0" [dependencies] http_uri = { version = "1.0.1", path = "../../fcrates/http_uri" } frunk_core = "0.4.2" iri-string = { version = "0.7.0", features = ["serde"] } gdp_rs = { version = "0.1.1", path = "../../fcrates/gdp_rs" } once_cell = "1.18.0" percent-encoding = "2.3.0" regex = "1.9.1" uriparse = "0.6.4" thiserror = "1.0.43" tracing = { version = "0.1.37", features = ["attributes"] } unicase = { version = "2.6.0" } ecow = "0.1.2" # feature: typed-headers headers = { version = "0.3.8", optional = true } http = { version = "0.2.9", optional = true } mime = { version = "0.3.17", optional = true } mime_guess = { version = "2.0.4", optional = true } rust_decimal = { version = "1.30.0", optional = true } smallvec = { version = "1.11.0", optional = true } chrono = { version = "0.4.26", optional = true, default-features = false, features = [ "std", ] } vec1 = { version = "1.10.1", features = [ "smallvec-v1", "smallvec-v1-write", ], optional = true } itertools = { version = "0.11.0", optional = true } async-convert = "1.0.0" # feature: serde serde = { version = "1.0.169", features = ["derive"], optional = true } # feature: representation typed_record = { version = "0.1.1", path = "../../fcrates/typed_record", features = [ "ext-anymap", ], optional = true} hyper = { version = "0.14.27", features = ["stream"], optional = true } # feature: impl-representation either = { version = "1.8.1", optional = true } bytes = { version = "1.4.0", optional = true } futures = { version = "0.3.28", optional = true } anyhow = { version = "1.0.71", optional = true } rdf_utils = { version = "0.3.1", path = "../../fcrates/rdf_utils", optional = true, features = ["compat-ecow"]} dyn_problem = { version = "0.1.1", path = "../../fcrates/dyn_problem", optional = true } async-stream = { version = "0.3.5", optional = true } rdf_dynsyn = { version = "0.3.1", path = "../../fcrates/rdf_dynsyn", optional = true, features = [ "async", ] } tokio = { version = "1.29.1", features = ["rt", "io-util"], optional = true } tokio-util = { version = "0.7.8", optional = true, features = ["io-util"] } sophia_api = { version = "0.8.0-alpha.1", optional = true } async-once-cell = { version = "0.5.3", optional = true } capped_stream = { version = "0.1.1", path = "../../fcrates/capped_stream", optional = true } # For authentication # indexmap = { version = "1.9.3", optional = true } # feature: service tower = { version = "0.4.13", optional = true, features = ["util"] } dyn-clone = { version = "1.0.14", optional = true } http-api-problem = { version = "0.57.0", features = [ "api-error", "hyper", ], optional = true } # feature: conditional-req if_chain = { version = "1.0.2", optional = true } # feature: test-utils claims = { version = "0.7.1", optional = true } rstest = { version = "0.18.1", optional = true } [features] serde = ["dep:serde", "iri-string/serde"] typed-headers = ["dep:headers", "dep:http", "dep:mime", "dep:mime_guess", "dep:rust_decimal", "dep:smallvec", "dep:chrono", "dep:vec1", "dep:itertools", "dep:either"] representation = ["typed-headers", "dep:typed_record", "dep:hyper"] impl-representation = ["representation", "dep:either", "dep:bytes", "dep:futures", "dep:anyhow", "dep:rdf_utils", "dep:dyn_problem", "dep:async-stream", "dep:rdf_dynsyn", "dep:if_chain", "dep:tokio", "dep:tokio-util", "dep:tower", "dep:dyn-clone", "http_uri/sophia", "dep:sophia_api", "dep:async-once-cell", "dep:capped_stream"] service = ["dep:tower", "dep:futures", "dep:dyn-clone", "dep:http", "dep:hyper", "dep:http-api-problem", "typed-headers"] conditional_req = ["dep:if_chain", "dep:headers", "dep:http"] test-utils = ["dep:rstest", "dep:claims"] [dev-dependencies] claims = "0.7.1" rstest = "0.18.1" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "doc_cfg"]