semuconsulting / pygnssutils

Python GNSS CLI utility library for reading, parsing and broadcasting NMEA, UBX, RTCM3, NTRIP and SPARTN protocols
BSD 3-Clause "New" or "Revised" License
84 stars 25 forks source link

RELEASE CANDIDATE 1.0.32 #84

Closed semuadmin closed 2 months ago

semuadmin commented 2 months ago

pygnssutils Pull Request Template

Description

ENHANCEMENTS:

  1. Add configuration file option to all CLI utilities via -C or --config argument. Default location of configuration file can be specified in environment variable {utility}_CONF e.g. GNSSDUMP_CONF, GNSSNTRIPCLIENT_CONF, etc. Config files are text files containing key-value pairs which mirror the existing CLI arguments, e.g.

    gnssdump -C gnssdump.conf

    where gnssdump.conf contains...

    filename=pygpsdata-MIXED3.log verbosity=3 format=2 clioutput=1 output=testfile.bin

is equivalent to:

gnssdump --filename pygpsdata-MIXED3.log --verbosity 3 --format 2 --clioutput 1 --output testfile.bin
  1. Streamline logging. CLI usage unchanged; to use pygnssutils logging within calling application, invoke logging.getLogger("pygnssutils") in calling module.
  2. Internal enhancements to experimental UBXSimulator to add close() and in_waiting() methods; recognise incoming RTCM data.
  3. GGA message sent to NTRIP Caster in GGALIVE mode will include additional live attributes (siv, hdop, quality, diffage, diffstation). Thanks to @yydgis for contribution.

FIXES:

  1. gnssntripclient - update HTTP GET request for better NTRIP 2.0 compliance
  2. issue with delay on gnssntripclient retry limit

Testing

Please test all changes, however trivial, against the supplied pytest suite tests/test_*.py. Please describe any test cases you have amended or added to this suite to maintain >= 99% code coverage.

Checklist:

yydgis commented 2 months ago

Thanks for considering my request for GNSS live status :)