Skip to content

Releases: M0r13n/pyais

Minor: Removes debug print statement

14 Jul 09:07
175b750
Compare
Choose a tag to compare

Minor Bugfix Release

09 Jul 13:46
6ab9ad7
Compare
Choose a tag to compare

Closes the following issues:

  • #70
    • The fillbits field was set to fillbits value for every fragment, instead of only the last one. The fillbits field for every other fragment should be set to 0.
  • #73
    • when converting ROT values the product was rounded before squaring which led to slightly off ROT values

SOTDMA/ITDMA communication state information

15 May 14:54
a376ab4
Compare
Choose a tag to compare
  • Closes #17
    • decoded radio state fields
    • provided functions to access SOTDMA/ITDMA communication state information

Bugfixes

24 Apr 12:26
5913c44
Compare
Choose a tag to compare
Merge pull request #67 from M0r13n/type-27-messages-should-be-signed

Makes type 27 messages lat and lon signed

Removes inconsistencies

14 Apr 11:17
21da419
Compare
Choose a tag to compare
  • 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

27 Mar 11:59
25f75b1
Compare
Choose a tag to compare
  • 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
      of 0.0.
  • 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.
  • Closes #58

    • A missing checksum caused a ValueError, which is now ignored

Bug fix: Rename shipname to name for type 21

13 Mar 14:42
cc47fb1
Compare
Choose a tag to compare

Release version 2.0.0

13 Mar 12:44
6ca6d96
Compare
Choose a tag to compare
  • 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 a pyais.messages.AISMessage instance anymore
    • instead an instance of pyais.messages.MessageTypeX is returned, where X is the type of the message (1-27)
  • in v1 you called decoded.content to get the decoded message as a dictionary - this is now decoded.asdict()

Add bounds check for variable length messages

05 Dec 14:56
da2d434
Compare
Choose a tag to compare
  • 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`

11 Sep 11:02
Compare
Choose a tag to compare
v1.6.2

Raise a meaningful exception if 'decode_msg' is used improperly (#38)