The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for message type 6 (Binary Addressed Message) (thanks @salsabiljb)
- Support for message type 7 (Binary Acknowledge) (thanks @salsabiljb)
- Support for message type 9 (Standard SAR Aircraft Position Report) (thanks @salsabiljb)
- Support for message type 10 (UTC/Date Inquiry) (thanks @salsabiljb)
- Support for message type 12 (Addressed Safety-Related Message) (thanks @salsabiljb)
- Support for message type 13 (Safety-Related Acknowledgment) (thanks @salsabiljb)
- Support for message type 14 (Safety-Related Broadcast Message) (thanks @salsabiljb)
- Support for message type 16 (Assignment Mode Command) (thanks @salsabiljb)
- Support for message type 27 (Long-Range AIS Broadcast Message) (thanks @salsabiljb)
- NMEA tag blocks are now accepted, but currently ignored (thanks @jkr78)
radio_status
andnavigation
modules are nowpub
(thanks @ebuckley)
From<u8> for ShipType
andFrom<ShipType> for u8
implementations (thanks @keesverruijt)
types
module is nowpub
(thanks @keesverruijt)ShipType
reserved fields are included as data in the enum (thanks @keesverruijt)
- Support for message type 11 (UTC/Date Response)
no_std
support
- Support for message type 19 (Extended Class B Position Report)
- Edition 2021
- Updated Nom dependency to v7
AssignedMode
moved intomessages.types
- Support for message type 17 (DGNSS Broadcast Binary Message).
- Support for message type 8 (Binary Broadcast Message). Note, the binary payload is not decoded yet.
- Support for message type 20 (Data Link Management Message)
- Support for message type 15 (Interrogation)
- Support for message type 18 (Static Class B Position Report)
- Utility renamed from
nmea
toais
- Many internal types with restricted inputs panic rather than returning errors
- Out-of-range values coming from parsed data now get passed through as unknown, rather than returning errors
- UTC hour is no longer Option
- Support for type 24 messages
- Export
AisParser
andAisFragments
at crate level
- Channel returns an
Option
to support missing channels (seen in real-world) - Maneuverability and date indices out of spec no longer throw an error
- Support for type 5 messages
- Support for fragmented sentences
- Top level interface now involves using an
AisParser
object - Message parsing happens at the same time as NMEA sentence parsing, if enabled
- Updated Nom dependency to v5
- Replaced error-chain with thiserror
- Link to documentation at https://docs.rs/ais
- Initial release