Releases: M0r13n/pyais
Releases · M0r13n/pyais
Minor: Removes debug print statement
Minor Bugfix Release
SOTDMA/ITDMA communication state information
- Closes #17
- decoded
radio state
fields - provided functions to access SOTDMA/ITDMA communication state information
- decoded
Bugfixes
Removes inconsistencies
- Closes #63 (comment)
- unifies naming of fields across all message types
- makes all single bit fields booleans
- replaces the raw turn value with the actual rate of turn: (turn/4.733)**2
- makes all data fields raw bytes instead of (large) integers for interoperability
- makes speed and course floats instead of ints
- enforces strict types and fixes typing inconsistencies
Bugfixes and improvements
-
Closes #54
- for some fields like speed, lat or lon their types were not properly
enforced. This led to typing errors and wrong values, e.g.0
instead
of0.0
.
- for some fields like speed, lat or lon their types were not properly
-
Closes #59
- when encoding messages the underlying method
int_to_bin
incorrectly
assumed that all values were signed. This was wrong and could lead to
invalid messages, when encoding.
- when encoding messages the underlying method
-
Closes #58
- A missing checksum caused a
ValueError
, which is now ignored
- A missing checksum caused a
Bug fix: Rename shipname to name for type 21
Release version 2.0.0
- WARNING: The v2 release will introduce breaking changes
- Introduces the possibility to encode messages
- decoding has been rewritten and implements an iterative decoding approach
- The following fields were renamed:
- message_fragments -> frag_cnt
- fragment_number -> frag_num
- message_id -> seq_id
- type -> msg_type
- shiptype -> ship_type
msg.decode()
does not return apyais.messages.AISMessage
instance anymore- instead an instance of
pyais.messages.MessageTypeX
is returned, whereX
is the type of the message (1-27)
- instead an instance of
- in v1 you called
decoded.content
to get the decoded message as a dictionary - this is nowdecoded.asdict()
Add bounds check for variable length messages
- Correctly handles variable length messages (#40)
- prior versions were missing required length checks
- therefore some messages were not correctly decoded
- this affects Type 7, 15, 16, 20, 22, 24, 25 and 26
Better error messages for `decode_msg`
v1.6.2 Raise a meaningful exception if 'decode_msg' is used improperly (#38)