Skip to content

redsea 1.0

Compare
Choose a tag to compare
@windytan windytan released this 27 Jun 18:52
· 27 commits to master since this release

Redsea has come a long way and it's time to finally call it a 1.0!

This quality-focused release includes significant maintainability improvements from unit testing to build automation and .deb packaging. It also adds support for a couple of RDS text channels and makes redsea less likely to show incorrect PI codes in very noisy signals.

Note that redsea is now built with meson instead of autotools; you can find instructions in the Readme just as before.

  • ✨ New features:
    • Add support for Enhanced RadioText (eRT)
    • Add support for Long PS in Group 15A (#104)
    • Add runtime option --no-fec for disabling error correction
  • 📱 UX changes:
    • ❗️ Breaking: Print a warning to stderr if the raw MPX input sample rate is
      not specified (breaks the previous silent assumption of 171 kHz)
    • Improve error reporting in general
    • Add --output hex (same as --output-hex) to mirror --input hex
  • 🔧 Fixes:
    • Fix detection of invalid date/time (timestamps >2000 years ago)
    • Noise resistance improvements (#106):
      • Require three (instead of two) repeats of a new PI before accepting it for the JSON output
      • Require three (instead of two) synchronization pulses before locking
  • 🚧 Maintainability:
    • Migrate build system from autotools to meson (#90)
    • Switch from patched, packaged-in JsonCPP to external nlohmann-json (#109)
      • ❗️ Breaking: The order of some JSON elements has changed (insertion order
        instead of alphabetical)
    • Add automated CI builds for macOS, Windows (MSYS2/MinGW + Cygwin), Ubuntu-latest, Debian Buster
    • Add Debian packaging (#101)
    • Add basic Catch2 unit tests (#84)
    • Add .clang-format (not automated)
    • Remove unmaintained build options for non-liquid, non-TMC builds
    • Fix compiler warnings, issues identified via static analysis, and other code cleanup