[package] authors = ["Jacob Hall "] description = "A command-line OpenStreetMap file converter" edition = "2021" license = "GPL-3.0-or-later" name = "skyway" version = "0.4.1" [lib] name = "skyway" path = "src/lib.rs" [[bin]] name = "skyway" path = "src/main.rs" required-features = ["cli"] [dependencies] bit-vec = { version = "0.8.0", optional = true } cel-interpreter = { version = "0.8.1", optional = true } chrono = { version = "0.4.38", optional = true } clap = { version = "4.5.10", features = ["derive"], optional = true } enum_dispatch = "0.3.13" env_logger = { version = "0.11.5", optional = true } indicatif = { version = "0.17.8", optional = true } itertools = "0.13.0" json = { version = "0.12.4", optional = true } lexical = { version = "7.0.2", optional = true } log = "0.4.22" osmpbf = { version = "0.3.4", optional = true } osmx = { version = "0.2.0", optional = true } pest = { version = "2.7.11", optional = true } pest_derive = { version = "2.7.11", optional = true } quick-xml = { version = "0.36.1", features = [ "overlapped-lists", "serialize", ], optional = true } rayon = "1.10.0" serde = { version = "1.0", features = ["derive"], optional = true } serde-aux = { version = "4.5.0", optional = true } serde_json = { version = "1.0", optional = true } thiserror = "1.0.63" [features] # by default, all convert and filter features are enabled default = ["cli", "json", "opl", "pbf", "xml", "cel", "skyfilter"] # conversion filetypes json = ["dep:json", "dep:lexical", "dep:serde", "dep:serde_json"] o5m = ["dep:bit-vec"] opl = ["dep:lexical"] osmx = ["dep:osmx"] pbf = ["dep:osmpbf", "dep:chrono"] xml = ["dep:serde", "dep:serde-aux", "dep:quick-xml"] # general filter support filter = [] # filter types cel = ["filter", "dep:cel-interpreter"] skyfilter = ["filter", "dep:pest", "dep:pest_derive"] # cli helpers (required to build binary) cli = ["dep:clap", "dep:env_logger", "dep:indicatif"] [profile.release] lto = "fat" codegen-units = 1