harrow 0.9.4

A thin, macro-free HTTP framework over Hyper with opt-in observability
# 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 are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "harrow"
version = "0.9.4"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A thin, macro-free HTTP framework over Hyper with opt-in observability"
readme = "README.md"
license = "MIT"
repository = "https://github.com/l1x/harrow"
resolver = "2"

[features]
body-limit = [
    "dep:harrow-middleware",
    "harrow-middleware/body-limit",
]
catch-panic = [
    "dep:harrow-middleware",
    "harrow-middleware/catch-panic",
]
compression = [
    "dep:harrow-middleware",
    "harrow-middleware/compression",
]
compression-br = [
    "dep:harrow-middleware",
    "harrow-middleware/compression-br",
]
cors = [
    "dep:harrow-middleware",
    "harrow-middleware/cors",
]
default = []
json = ["harrow-core/json"]
monoio = ["dep:harrow-server-monoio"]
msgpack = ["harrow-core/msgpack"]
o11y = [
    "dep:harrow-middleware",
    "harrow-middleware/o11y",
    "dep:harrow-o11y",
    "dep:rolly",
]
openapi = [
    "harrow-core/openapi",
    "dep:bytes",
]
profiling = [
    "harrow-core/profiling",
    "harrow-server-tokio?/profiling",
]
rate-limit = [
    "dep:harrow-middleware",
    "harrow-middleware/rate-limit",
]
request-id = [
    "dep:harrow-middleware",
    "harrow-middleware/request-id",
]
session = [
    "dep:harrow-middleware",
    "harrow-middleware/session",
]
tls = ["harrow-server-tokio/tls"]
tokio = ["dep:harrow-server-tokio"]
ws = ["harrow-server-tokio/ws"]

[lib]
name = "harrow"
path = "src/lib.rs"

[[example]]
name = "hello"
path = "examples/hello.rs"
required-features = [
    "tokio",
    "o11y",
    "json",
]

[[example]]
name = "monoio_hello"
path = "examples/monoio_hello.rs"
required-features = [
    "monoio",
    "json",
]

[[example]]
name = "vegeta_target_monoio"
path = "examples/vegeta_target_monoio.rs"
required-features = [
    "monoio",
    "json",
]

[[example]]
name = "vegeta_target_tokio"
path = "examples/vegeta_target_tokio.rs"
required-features = [
    "tokio",
    "request-id",
    "cors",
    "session",
    "json",
]

[dependencies.bytes]
version = "1"
optional = true

[dependencies.harrow-core]
version = "0.9.4"

[dependencies.harrow-middleware]
version = "0.9.4"
optional = true

[dependencies.harrow-o11y]
version = "0.9.4"
optional = true

[dependencies.harrow-server-monoio]
version = "0.9.4"
optional = true

[dependencies.harrow-server-tokio]
version = "0.9.4"
optional = true

[dependencies.rolly]
version = "0.10"
optional = true

[dev-dependencies.http]
version = "1"

[dev-dependencies.monoio]
version = "0.2"
features = ["bytes"]

[dev-dependencies.serde_json]
version = "1"

[dev-dependencies.tokio]
version = "1"
features = ["full"]

[dev-dependencies.tracing]
version = "0.1"

[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "json",
]