Skip to content

Release 3.8.0.0

Compare
Choose a tag to compare
@marcusmueller marcusmueller released this 09 Aug 21:44
· 1570 commits to master since this release
v3.8.0.0

Release 3.8.0.0

Witness me!

Tonight, we release GNU Radio 3.8.0.0.

It's the first minor release version since more than six years, not without
pride this community stands to face the brightest future SDR on general purpose
hardware ever had.

Since we've not been documenting changes in the shape of a Changelog for the
whole of the development that happened since GNU Radio 3.7.0, I'm afraid that
these release notes will be more of a GLTL;DR (git log too long; didn't read)
than a detailed account of what has changed.

What has _not** changed is the fact that GNU Radio is centered around a very
simple truth:

Let the developers hack on DSP. Software interfaces are for humans, not the
other way around.

And so, compared to the later 3.7 releases, nothing has fundamentally modified
the way one develops signal processing systems with GNU Radio: You write blocks,
and you combine blocks to be part of a larger signal processing flow graph.

With that as a success story, we of course have faced quite a bit of change in
the systems we use to develop and in the people that develop GNU Radio. This has
lead to several changes that weren't compatible with 3.7.

This is an excerpt only:

Fixed

Project Scope

  • Roughly 36 dBBug, (ETOOMANYBUGS)
  • Fixed .so versioning

Changed

Project Scope

  • C++11
  • merged the wholeness of the next branch
  • Dependency version bumps: CMake, GCC, MSVC, Swig, Boost
  • New dependencies: MPIR/GMP, Qt5, gsm, codec2
  • Removed dependencies: libusb, Qt4, CppUnit
  • Python: Python 2 & Python 3 compatible. 3.8 will be the last Py2k-compatible
    release series
  • gengen was replaced by templates (if you don't know gengen, don't do any
    research; save yourself that sorrow)
  • Modern CMake (as far as feasible at this point)
  • VOLK version updated to v2.0.0
  • .clang-format file now dictates coding style
  • clang-format'ed the whole tree.
  • installed CMake files now tell about configuration

gnuradio-runtime

  • reworked fractional tag time handling, especially in the context of resamplers

GRC

  • C++ generation as option
  • YAML instead of XML
  • removed blks2
  • much better canvas tooling
  • consistent gobject usage
  • ROUNDED ARROWS

gr-qtgui

  • moving from Qt4 to Qt5

gr-utils

  • gr_modtool now vastly improved

gr-vocoder

  • improved versatility
  • removed in-tree libgsm, libcodec2, use system-wide libs

Removed

Project Scope

  • Modules gr-comedi, gr-fcd and gr-wxgui are gone

gr-comedi

  • nobody could remember who used this, or for what. It has seen 0 active code
    contributions in the 3.7 lifecycle

gr-digital

  • python-based packet_encoder and related tools: Bugs that were sporadic and
    never fixed, so after long deprecation, we're removing it

gr-fcd

  • since it's currently untestable by the CI, it's being removed, as there was no
    code contributions. Generally, we strive to include all batteries with GNU
    Radio. Re-integration within a more general SDR interface would be desirable.

gr-utils

  • removed PyQwt (dead) based tools

gr-wxgui

  • Unmaintained, breaks on increasingly many systems, always was slower than
    Qtgui. We've been starting to tell people to migrate to Qt since at
    least 2015. Now, we're finally removing it.

Contributors