Use separate threads for serial port reading and packet parsing
Summary
Separate serial port reading from packet parsing and data persistence by running them in different threads. This helps avoid serial port buffer overflow. Unlike #15 and #22, this pull request doesn't alter the way packets are read from the serial port.
Contents (#23)
New features
- Use separate threads for serial port reading and packet parsing
Enhancements
- Add thread name to logging context
- Set thread names to useful values
Fixes
- Raise errors from parser thread in reader thread
Operations
- Remove MacOS test runner from CI workflow
- Make release depend on tests passing after merge into
main
- Run pull request description update on all branches but skip it if the skip indicator appears in the pull request description
Quality Checklist
- New features are fully tested (No matter how much Coverage Karma you have)