High Level Release Goals

  • Code maintenance
    • Update library dependencies to modern, stable versions
    • Deprecate old and redundant modules
    • Move projects to OOT modules
  • Improve and mainstream QT Gui
  • Improve message passing API

Namespace hygiene ideas

  • hier_block2: rename to hier_block
  • eradicate the remaining non-basic type classes that exhibit a gr_ prefix
  • getting rid of the blks2 hierarchy

Changes likely to come with 3.8

In particular, API-breaking stuff.

General dependencies

  • Require Doxygen >= 1.7
  • Require CMake >= 2.8.10
    • String FIND command added in 2.8.5
    • enable_language (used for VOLK ASM files) bug fixed in 2.8.10
    • Ubuntu 12.04 comes with v2.8.7
  • Require Boost >= 1.53
  • Require GCC >= 4.7
  • Require QWT >= 6.0 (maybe)
  • Require ICE >= 3.5.0 (maybe 3.5.1)
  • Require Python >= 2.7
  • Require QT4 >= 4.8.0 (maybe 4.7.0 if a given a compelling reason)
  • Require UHD >= 3.6.0

By component

gnuradio-runtime GNU Radio runtime scheduler
  • Possibly API breaking changes needed to fix #528
  • Maybe change the TSB implementation (wouldn't affect TSBs themselves, but blocks that would re-implement them)
  • Formally deprecate old message queues/sources/sinks in favor of new async message passing
  • Formally deprecate Single Threaded Scheduler (STS)
grc GNU Radio Companion
  • Switch default window system for new flowgraphs to gr-qtgui
  • Remove all grc-specific blocks that may be replaced with other blocks (ex. tcp.py)
  • Introduce QT version of GRC
gr-atsc ATSC Digital Television demodulator
  • Remove old version to be replaced by new implementation from xxx
gr-fcd Hardware support for original FunCUBE dongle
  • Remove, to be supported by 3rd party through PyBOMBS
gr-noaa NOAA Weather Satellite HRPT telemetry decoder
  • Remove, re-implement as OOT project installed through PyBOMBS
gr-pager FLEX Pager protocol decoder
  • Remove, re-implement as OOT project installed through PyBOMBS
gr-qtgui Graphics widgets for QT window system
  • Switch examples to use gr-qtgui instead of gr-wxgui
gr-uhd Ettus Research UHD driver wrapper
  • Require UHD 3.6
gr-vocoder Audio CODECs of various standards
  • Remove internal versions of codec2, gsm, g.72x code in lieu of system packaged binaries
  • Add support for the Opus Interactive Audio Codec
gr-wxgui Graphics widgets for wxWindows/wxPython
  • Formally deprecate for eventual removal in 3.9
gr-digital Digital Modulation Support
  • Clean up (d)xPSK files; use a common mod/demod structure
  • Remove old OFDM code
gr-filters Filters
  • Remove wintype from firdes; re-implemented in gr-fft
volk VOLK
  • Deprecating ORC now for removal in 3.8 to resolve ARM issues
    • Expecting replacement kernels in NEON for ORC
  • does it make sense to make VOLK a more independent submodule with the goal of it being useful on its own (i.e. w/o compiling GNU Radio)?