GNSSStreamer class at heart of gnssdump CLI utility enhanced to allow a variety of writeable output medium to be used as an external protocol handler for NMEA, UBX and/or RTCM protocols. Acceptable output media types include Serial, File (text or binary), socket or Queue. Essentially this means that gnssdump can write its output data to any of these media rather than to sys.stdout (terminal).
New example gnssserver.py added to /examples folder. This utilises the enhanced GNSSStreamer class to implement a simple but fully-functional command-line TCP Socket Server or NTRIP Server.
Fixes # (issue)
Testing
Please test all changes, however trivial, against the supplied unittest suite tests/test_*.py e.g. by executing the tests/testsuite.py module or using your IDE's native Python unittest integration facilities. Please describe any test cases you have amended or added to this suite to maintain >= 99% code coverage.
Checklist:
[x] My code follows the style guidelines of this project (see CONTRIBUTING.MD).
[x] I have performed a self-review of my own code.
[ ] (if appropriate) I have cited my u-blox documentation source(s).
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[ ] (if appropriate) I have added test cases to the tests/test_*.py unittest suite to maintain >= 99% code coverage.
[x] I have tested my code against the full tests/test_*.py unittest suite.
[x] My changes generate no new warnings.
[x] Any dependent changes have been merged and published in downstream modules.
[x] I understand and acknowledge that the code will be published under a BSD 3-Clause license.
pyubx2 Pull Request Template
Description
RELEASE 1.2.11
ENHANCEMENTS:
Fixes # (issue)
Testing
Please test all changes, however trivial, against the supplied unittest suite
tests/test_*.py
e.g. by executing thetests/testsuite.py
module or using your IDE's native Python unittest integration facilities. Please describe any test cases you have amended or added to this suite to maintain >= 99% code coverage.Checklist:
CONTRIBUTING.MD
).tests/test_*.py
unittest suite to maintain >= 99% code coverage.tests/test_*.py
unittest suite.