# 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 = "2021"
rust-version = "1.88"
name = "s2n-quic-core"
version = "0.78.0"
authors = ["AWS s2n"]
build = false
exclude = ["corpus.tar.gz"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Internal crate used by s2n-quic"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/aws/s2n-quic"

[package.metadata.kani.flags]
tests = true

[package.metadata.kani.unstable]
stubbing = true

[features]
alloc = [
    "atomic-waker",
    "bytes",
    "crossbeam-utils",
    "s2n-codec/alloc",
]
branch-tracing = ["tracing"]
checked-counters = []
default = [
    "alloc",
    "std",
]
event-tracing = ["tracing"]
generator = ["bolero-generator"]
probe-tracing = ["tracing"]
state-tracing = ["tracing"]
std = [
    "alloc",
    "once_cell",
]
testing = [
    "std",
    "generator",
    "s2n-codec/testing",
    "checked-counters",
    "insta",
    "futures-test",
]
unstable-congestion-controller = []
unstable-limits = []
usdt = ["dep:probe"]

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

[dependencies.atomic-waker]
version = "1"
optional = true

[dependencies.bolero-generator]
version = "0.13"
optional = true
default-features = false

[dependencies.byteorder]
version = "1"
default-features = false

[dependencies.bytes]
version = "1.7.2"
optional = true
default-features = false

[dependencies.cfg-if]
version = "1"

[dependencies.crossbeam-utils]
version = "0.8"
optional = true

[dependencies.futures-test]
version = "0.3"
optional = true

[dependencies.hex-literal]
version = "1.1"

[dependencies.insta]
version = ">=1.12"
features = ["json"]
optional = true

[dependencies.num-rational]
version = "0.4"
default-features = false

[dependencies.num-traits]
version = "0.2"
features = ["libm"]
default-features = false

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

[dependencies.pin-project-lite]
version = "0.2"

[dependencies.probe]
version = "0.5"
optional = true

[dependencies.s2n-codec]
version = "=0.78.0"
default-features = false

[dependencies.subtle]
version = "2"
default-features = false

[dependencies.tracing]
version = "0.1"
optional = true
default-features = false

[dependencies.zerocopy]
version = "0.8"
features = ["derive"]

[dev-dependencies.bolero]
version = "0.13"

[dev-dependencies.bolero-generator]
version = "0.13"

[dev-dependencies.futures]
version = "0.3"

[dev-dependencies.futures-test]
version = "0.3"

[dev-dependencies.insta]
version = "1"
features = ["json"]

[dev-dependencies.ip_network]
version = "0.4"

[dev-dependencies.plotters]
version = "0.3"
features = [
    "svg_backend",
    "line_series",
]
default-features = false

[target."cfg(loom)".dev-dependencies.loom]
version = "0.7"
features = [
    "checkpoint",
    "futures",
]

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    'cfg(feature, values("thiserror"))',
    "cfg(fuzzing)",
    "cfg(loom)",
    "cfg(kani)",
    "cfg(kani_slow)",
    'cfg(target_pointer_width, values("8", "128"))',
]
