Releases: semuconsulting/pyspartn
Releases · semuconsulting/pyspartn
v1.0.5
What's Changed
- RC 1.0.5 by @semuadmin in #34
- Add new optional
timetags
argument to SPARTNReader & SPARTNMessage, to allow them to use any available 32-bit gnssTimeTag values from the incoming datastream in order to decrypt messages (rather than having to provide an explicit basedate).- The
timetags
argument is a dict of the format{0: 495763673, 1: 485866844, 3: 410283479}
where the key represents the message subType (0 = GPS, 1 = GLO, 2 = GAL, etc.), and the value represents the 32-bit gnssTimeTag value from the data stream (if present). - If a nominal decryption basedate of
TIMEBASE
(datetime(2010, 1, 1, 0, 0, tzinfo=timezone.utc)
), or integer0
, is passed to SPARTNReader, it will endeavour to capture 32-bitgnssTimeTag
values for eachmsgSubtype
from the incoming data stream and pass these to SPARTNMessage via thetimetags
arg to decrypt messages of the samemsgSubtype
with 16-bit gnssTimeTags (timeTagtype=0
). - NB: this will only work if the data stream contains valid 32-bit
gnssTimeTag
values for the samemsgSubtype
e.g. if an HPAC message withmsgSubtype=2
precedes a GAD or OCB message withmsgSubType=2
andtimeTagtype=0
- until such an eventuality occurs, decryption of GAD or OCB messages may fail! - Always use
quitonerror=ERRLOG
orquitonerror=ERRIGNORE
when setting basedate toTIMEBASE
.
- The
- SPARTMMessage will now return explicit
SPARTNDecryptionError
if unable to successfully decrypt/decode message using key and basedate provided.
Full Changelog: v1.0.4...v1.0.5
v1.0.4
What's Changed
- RC 1.0.4 by @semuadmin in #33
- Add active support for Python 3.13
- Drop active support for Python 3.8 - now EOL as at October 2024.
- Rename socket_stream to socket_wrapper for clarity.
Full Changelog: v1.0.3...v1.0.4
v1.0.3
What's Changed
- add troposphere coefficient offsets by @semuadmin in #31
-
Fixed offsets added to troposphere attributes, in accordance with SPARTN 2.0.2 specification:
- SF043 (Area average vertical hydrostatic delay )-> add 2.3m
- SF045 (Small troposphere coefficient T00) -> add 0.252m
- SF048 (Large troposphere coefficient T00) -> add 0.252m
Thanks for @jonathanmuller for contribution.
Fixes #30
Full Changelog: v1.0.2...v1.0.3
v1.0.2
What's Changed
- Enhance exception handling to Include SPARTNStreamError. by @semuadmin in #28
- Enhance exception handling to Include SPARTNStreamError. Fixes issue where
SPARTNStreamError
may still be raised even if ERRIGNORE is set.
Full Changelog: v1.0.1...v1.0.2
v1.0.1
What's Changed
- Rc 1.0.1 by @semuadmin in #27
- Internal enhancements to logging and exception handling.
Full Changelog: v1.0.0...v1.0.1
v1.0.0
What's Changed
- Rc 1.0.0 by @semuadmin in #26
- Add payload attributes for PRN, Phase Bias and Code Bias values, derived from the corresponding bitmasks for each constellation type. e.g.
PRN_01=3
,PhaseBias_01_03=L2L
,CodeBias_02_03=C2L
. - Add examples
parse_ocb.py
&parse_hpac.py
illustrating how to convert parsed and decoded OCB and HPAC messages into iterable data structures. - Add
naive2aware(dt,tz)
helper method - convert naive basedates to aware with UTC timezone. - Internal enhancements to simplify basedate handling.
Full Changelog: v0.4.0-beta...v1.0.0