[workspace]
resolver = "3"
members = [
"fixture-generators/additional-properties",
"fixture-generators/enum-repr",
"fixture-generators/petstore",
]
[workspace.package]
version = "0.2.3"
edition = "2024"
rust-version = "1.90"
description = "OpenAPI 3.x multi-language code generator"
authors = ["Adam Basfop Cavendish <GetbetterABC@yeah.net>"]
repository = "https://github.com/rust-codegen-group/openapi-nexus"
readme = "README.md"
license = "MIT OR Apache-2.0"
[workspace.dependencies]
clap = { version = "4.5.51", features = ["derive", "env"] }
derive_more = { version = "2", features = ["display", "from"] }
dirs = "6.0.0"
heck = "0.5.0"
http = "1.4.0"
indexmap = { version = "2.12.1", features = ["serde"] }
regex = "1.12.3"
semver = "1.0.27"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.148"
serde_norway = "0.9.42"
serde_plain = "1.0.2"
sigil-stitch = "0.6.8"
similar = "2.7.0"
snafu = "0.8.9"
toml = "0.9.8"
tracing = "0.1.44"
tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
tracing-test = "0.2.5"
url = { version = "2.5.7", features = ["serde"] }
axum = { version = "0.8.8", features = ["macros"] }
axum-extra = { version = "0.12.5", features = ["typed-header"] }
chrono = { version = "0.4.42", features = ["serde"] }
tokio = { version = "1.49.0", features = ["full"] }
tower = "0.5.2"
tower-http = { version = "0.6.8", features = ["cors", "trace"] }
utoipa = { version = "5.4.0", features = ["axum_extras", "chrono", "config", "debug", "non_strict_integers", "openapi_extensions", "time", "ulid", "url", "uuid", "yaml"] }
utoipa-swagger-ui = { version = "9.0.2", features = ["axum", "cache", "vendored"] }
uuid = { version = "1.19.0", features = ["v4", "v7", "serde"] }
[package]
name = "openapi-nexus"
version.workspace = true
exclude = ["tests/golden/", "fixture-generators/"]
edition.workspace = true
rust-version.workspace = true
description.workspace = true
authors.workspace = true
repository.workspace = true
readme.workspace = true
license.workspace = true
[package.metadata.dist]
dist = true
[[bin]]
name = "openapi-nexus"
path = "src/main.rs"
[lib]
name = "openapi_nexus"
path = "src/lib.rs"
[features]
default = []
test-utils = ["dep:similar"]
[dependencies]
clap.workspace = true
derive_more.workspace = true
dirs.workspace = true
heck.workspace = true
http.workspace = true
indexmap.workspace = true
regex.workspace = true
semver.workspace = true
serde.workspace = true
serde_json.workspace = true
serde_norway.workspace = true
serde_plain.workspace = true
sigil-stitch.workspace = true
snafu.workspace = true
toml.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
url.workspace = true
similar = { workspace = true, optional = true }
[dev-dependencies]
tracing-test.workspace = true
openapi-nexus = { path = ".", features = ["test-utils"] }
sigil-stitch.workspace = true
[profile.dist]
inherits = "release"
lto = "thin"
opt-level = "s"