GNU Radio is a free software development toolkit that provides signal processing blocks to implement software-defined radios and signal-processing systems. It can be used with external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic, and commercial environments to support both wireless communications research and real-world radio systems.
minor feature: Josh Morman.Thomas Habets.Jacob Gilbert.Andrej Rode.Ryan Volz.We now require commits to be signed off (DCO); this means you have toattach -s to your git commit command line.License headers now SPDX format.C++14.use C++11 facilities in a lot of places where Boost was still used,especially smart pointers, range loops.lambdas where boost::bind was used.C11.Dependency versions:Python 3.6.5numpy 1.13.3VOLK 2.4.1CMake 3.10.2Boost 1.65Mako 1.0.7PyBind11 2.4.3.Python 3.6.5.numpy 1.13.3.VOLK 2.4.1.CMake 3.10.2.Boost 1.65.Mako 1.0.7.PyBind11 2.4.3.Compiler options:GCC 8.3.0Clang 11.0.0 / Apple Clang 1100MSVC 1910 (Microsoft VS 2017 15.0).GCC 8.3.0.Clang 11.0.0 / Apple Clang 1100.MSVC 1910 (Microsoft VS 2017 15.0).VOLK now "regular" dependency, not in-tree submodule.numpy now also a CMake-checked hard dependency for Python support.Exception Handling: throw by value, catch by reference (clang-tidy check).C++11: Emplace in vectors where you can; brings performance boni, but notincluded in clang-tidy-checks.Further clang-tidy based code optimizations:empty() instead of size() == 0.override where overriding virtual functions (which we do a lot).Logging: removed all std::cerr and fprintf(stderr, ) by GNU Radio logging.Logging: Changed logging format for many multiline error logs.purged snprintf, printf logging.There were a lot of places where a malloc'ed object was used internally, wherethat was inappropriate. Using simple instance-holding fields now.const for members that were only set at construction time is now desired,and implemented in most places.const - constexp in a lot of places.assert - static_assert.An exception-throwing block will now terminate the flow graph process,configurable through top_block.gr-utils cleanup, folder restructuring.config version checks installed CMake file will accept "at least this version"now.PyBind11 replaces SWIGFull tree conversion from SWIG to Pybind11 bindings.Full tree conversi