[package]
name = "nmea-kit"
version = "0.5.6"
edition = "2024"
rust-version = "1.85.0"
description = "Bidirectional NMEA 0183 parser and encoder with AIS decoding"
license = "MIT OR Apache-2.0"
authors = ["Antoine MOUTIERS"]
readme = "README.md"
repository = "https://github.com/amoutiers/nmea-kit"
homepage = "https://github.com/amoutiers/nmea-kit"
documentation = "https://docs.rs/nmea-kit"
keywords = ["nmea", "ais", "gps", "marine", "navigation"]
categories = ["parser-implementations", "encoding", "science::geo"]
exclude = ["/tests/"]

[dependencies]

[features]
default = ["nmea", "ais"]

# Semantic groups
positioning = ["gga", "gll", "rmc", "gns"]
speed       = ["vtg", "vhw", "vbw", "rmc", "rpm", "vdr"]
heading     = ["hdg", "hdm", "hdt", "ths"]
wind        = ["mwd", "mwv"]
depth       = ["dbt", "dbs", "dbk", "dpt"]

# Umbrella — all sentence types
nmea = [
    "positioning", "speed", "heading", "wind", "depth",
    "apb", "bwc", "dtm", "gbs", "gsa", "gsv", "gst", "mda", "mtw", "pashr", "pgrme", "pskpdpt", "rmb", "rot", "rpm", "rsa", "txt", "vdr", "vlw", "vwr", "xdr", "xte", "zda",
]
ais = []

# Individual NMEA sentence types
apb = []
bwc = []
dbk = []
dbs = []
dbt = []
dtm = []
dpt = []
gbs = []
gga = []
gll = []
gns = []
gsa = []
gsv = []
gst = []
hdg = []
hdm = []
hdt = []
mda = []
mtw = []
mwd = []
mwv = []
pashr = []
pgrme = []
pskpdpt = []
rmb = []
rmc = []
rot = []
rpm = []
rsa = []
ths = []
txt = []
vhw = []
vlw = []
vbw = []
vdr = []
vtg = []
vwr = []
xdr = []
xte = []
zda = []

[lints.clippy]
unwrap_used = "warn"
cognitive_complexity = "warn"
