[package]
edition = "2021"
rust-version = "1.93"
name = "rtz"
version = "0.8.0"
authors = ["Aaron Roney <twitchax@gmail.com>"]
build = "build.rs"
exclude = ["assets/osm_*"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A tool to easily work with geo lookups via a binary, a library, or a server."
homepage = "https://github.com/twitchax/rtz"
readme = "README.md"
keywords = [
"cli",
"time",
"zone",
"timezone",
"geospatial",
]
categories = ["command-line-utilities"]
license = "MIT"
repository = "https://github.com/twitchax/rtz"
[package.metadata."docs.rs"]
features = [
"tz-ned",
"tz-osm",
"admin-osm",
]
[features]
admin-osm = [
"rtz-core/admin-osm",
"rtz-build/admin-osm",
]
cli = ["clap"]
default = ["cli"]
double-precision = [
"rtz-core/double-precision",
"rtz-build/double-precision",
]
extrasimplified = [
"rtz-core/extrasimplified",
"rtz-build/extrasimplified",
]
force-rebuild = ["rtz-build/force-rebuild"]
full = [
"tz-ned",
"tz-osm",
"admin-osm",
"self-contained",
"rtz-core/full",
"rtz-build/full",
]
owned-decode = ["rtz-core/owned-decode"]
self-contained = [
"rtz-core/self-contained",
"rtz-build/self-contained",
"include_bytes_aligned",
]
tz-ned = [
"rtz-core/tz-ned",
"rtz-build/tz-ned",
]
tz-osm = [
"rtz-core/tz-osm",
"rtz-build/tz-osm",
"chrono-tz",
"chrono",
]
unsimplified = [
"rtz-core/unsimplified",
"rtz-build/unsimplified",
]
wasm = [
"wasm-bindgen",
"wasm-bindgen-futures",
"wee_alloc",
"js-sys",
]
web = [
"full",
"tokio",
"config",
"log",
"simple_logger",
"schemars",
"chrono",
"axum",
"hyper",
"tower",
"tower-http",
"http",
"http-body-util",
"utoipa",
"utoipa-swagger-ui",
"utoipa-redoc",
"utoipa-rapidoc",
"axum-insights",
"tracing",
]
[lib]
name = "rtzlib"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[bin]]
name = "rtz"
path = "src/bin.rs"
required-features = ["cli"]
[[test]]
name = "cli"
path = "tests/cli.rs"
[[bench]]
name = "benches"
path = "benches/benches.rs"
harness = false
[dependencies.anyhow]
version = "1"
features = ["backtrace"]
[dependencies.axum]
version = "0.8"
features = ["macros"]
optional = true
[dependencies.axum-insights]
version = "0.6"
optional = true
[dependencies.bincode]
version = "2"
features = [
"alloc",
"serde",
]
default-features = false
[dependencies.chashmap]
version = "2"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
optional = true
[dependencies.chrono-tz]
version = "0.10"
features = ["serde"]
optional = true
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.config]
version = "0.15"
optional = true
[dependencies.geo]
version = "0.33"
[dependencies.geojson]
version = "1"
[dependencies.getrandom]
version = "0.4"
features = ["wasm_js"]
[dependencies.http]
version = "1"
optional = true
[dependencies.http-body-util]
version = "0.1"
optional = true
[dependencies.hyper]
version = "1"
features = ["full"]
optional = true
[dependencies.include_bytes_aligned]
version = "0.1"
optional = true
[dependencies.js-sys]
version = "0.3"
optional = true
[dependencies.log]
version = "0.4"
features = ["release_max_level_info"]
optional = true
[dependencies.rand]
version = "0.10"
[dependencies.rayon]
version = "1"
[dependencies.rtz-core]
version = "0.2.0"
[dependencies.schemars]
version = "1"
features = ["chrono04"]
optional = true
[dependencies.serde]
version = "1"
[dependencies.serde_json]
version = "1"
[dependencies.simple_logger]
version = "5"
optional = true
[dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"signal",
"parking_lot",
"rt-multi-thread",
]
optional = true
[dependencies.tower]
version = "0.5"
features = ["full"]
optional = true
[dependencies.tower-http]
version = "0.7"
features = ["full"]
optional = true
[dependencies.tracing]
version = "0.1"
optional = true
[dependencies.utoipa]
version = "5"
features = ["axum_extras"]
optional = true
[dependencies.utoipa-rapidoc]
version = "6"
features = ["axum"]
optional = true
[dependencies.utoipa-redoc]
version = "6"
features = ["axum"]
optional = true
[dependencies.utoipa-swagger-ui]
version = "9"
features = [
"axum",
"vendored",
]
optional = true
[dependencies.wasm-bindgen]
version = "0.2"
optional = true
[dependencies.wasm-bindgen-futures]
version = "0.4"
optional = true
[dependencies.wee_alloc]
version = "0.4"
optional = true
[dev-dependencies.cities-json]
version = "0.6"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.futures]
version = "0.3"
[dev-dependencies.pretty_assertions]
version = "1"
[build-dependencies.rtz-build]
version = "0.2.10"
[target.'cfg(not(target_family = "wasm"))'.dependencies.reqwest]
version = "0.13"
features = ["blocking"]
[target.'cfg(not(target_family = "wasm"))'.dependencies.zip]
version = "8"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(wasm)",
"cfg(coverage_nightly)",
]