Up to [cvs.NetBSD.org] / pkgsrc / ham / gnuradio-core
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
(ham/gnuradio-core) Updated 3.10.9.1 to 3.10.9.2 [3.10.9.2] - 2024-01-17 Changed Project Fix a few memory errors in various modules. GRC Fix regressions in bus connections.
(ham/gnuradio-core) Updated 3.10.8.0 to 3.10.9.1 (no info for 3.10.9.1) ## [3.10.9.0] - 2023-12-24 ### Changed #### Project - Python minimum version is now 3.7.2, vs 3.6.5, to support type hints. Even Python 3.7 is EOL, so this is not expected to affect people using newer versions of GNU Radio. - Add tox.ini, so that editors use the same formatting as github CI. - Use pointers to pass s32fc arguments to VOLK in gr-blocks, gr-digital, and gr-dtv to avoid undefined behavior. The fix is conditional on VOLK 3.1.0, which add a new supporting function. #### Runtime - Disallow None for pmt_t arguments in Python. - Support spdlog installations with internal or external libfmt. #### GRC - Use text labels to specify types for block parameters, instead of background colors which were difficult to read/remember. - Enable setting of documentation URLs, relative or absolute in yaml. This allows OOTs to use the documentation link in the block parameter dialog. - Disallow use of block ids that are Python keywords and "gnuradio". - Add type annotations in some places (required bump to Python 3.7.2). - Use C version of YAML loader (yaml.CSafeLoader) for better performance. - Connections may have properties for supported connection domains. This feature was added for RFNoC connections. Standard stream and message connections do not support this feature, but they may in future versions. - Check grc file version. The above feature required a version bump to "2". Where no connection properties are used, version "1" is still emitted. Note that previous versions of GRC do not check for file version. RFNoC flowgraphs with connection properties will fail to load in previous versions as a result. - Fix bug where an impressive number of backslashes were added to some filenames. #### gr-dtv - Read expected data as little-endian #### gr-fec - Add FEC_API to CCSDS Reed-Solomon functions so they can be used by OOTs. #### gr-qtgui - QT GUI Msg Push Button: add a callback for Message Value to allow it to change at runtime. #### gr-uhd - RFNoC Rx-Streamer: Add start stream options - Add back-edge property to RFNoC connections #### Build system and packaging - Update conda build. Re-rendered with conda-build 3.27.0, conda-smithy 3.28.0, and conda-forge-pinning 2023.11.07.18.09.01. - Use utf-8 encoding when writing files in gr_python_install. #### Testing There has been a great effort to identify why tests fail intermittently, or only on certain platforms. This has lead to a number of improved test, and identification of a number of real bugs.
(ham/gnuradio-core) updated 3.10.7.0 to 3.10.8.0 ## [3.10.8.0] - 2023-10-20 ### Changed #### Runtime - Add `MAP_FIXED` to circular buffer implementations using `shm_open()` and mmap backed by tmp files. These versions are not used by most system, and flaws were discovered during a FreeBSD build. - PMTs can be formatted for logging (format wrapper added). - New `io_signature::make()` variant replaces `makev()`, and optionally specifies buffer types. Previous variants are still valid, for backward compatibility. The single-stream `make()`, along with the `makev()`, `make2()` and `make3()` variants should not be used in new code, and may be removed in the future. ``` make(int min_streams, int max_streams, const std::vector<size_t>& sizeof_stream_items, const gr::gr_vector_buffer_type& buftypes = gr::gr_vector_buffer_type(1, default_buftype::type)); ``` - Fix logging params to be compatible with C++20 #### GRC - Add "Choose Editor" button to Python block properties. Use the GTK app chooser. Save choice to the config file. - Correct Python Qt imports in Hier blocks and flowgraph templates. #### gr-blocks - Enable building the benchmark testing executable, which runs tests on various math functions. - Repeat block implemented as a basic block (vs sync interpolator) and output buffer allocation fixed. - Add a GRC example for Throttle usage. #### gr-digital - Add `set_sps()` to Symbol Sync. - Header Format: Fix CRC and OFDM formats, add option to `header_buffer` to read bits lsb first, and refactor `extract_bits` functions as templates. - Constellation Sink uses different colors for each input by default. - Rework Constellation Soft Decoder, Constellation Object and LDPC Decoder Definition. Previously, the LDPC Decoder did not work at all. The `sigma` parameter was removed from the decoder and an optional noise power `npwr` parameter was added to the constellation. #### gr-network - Better support for vectorized output from UDP source. The payload size must still be a multiple of `item size * vector size` for this to work. #### gr-qtgui - Range widget `eng_slider` and `eng` modes can now be selected in GRC. - Range widget and a couple of UHD apps now accept values on `editingFinished`, e.g., loss of focus, rather than on `returnPressed`. Since UIs generated by GRC do not have OK/Apply for such values, there is no "correct" behavior. The behavior is now selectable on the Entry widget. - Frequency Sink startup time improved where sample rate is low #### gr-soapy - RTLSDR buffer size may be specified #### gr-uhd - RFNoC NullSrcSink block added. The block may be both source and sink. - Add support and examples for RFNoC loopback. - RFNoC Rx Radio adds `issue_stream_cmd()` and block message handler. #### gr-zeromq - Explicitly shutdown and close source/sinks to prevent hangs in some cases. - Require `zmq.hpp` (cppzmq) version with `context_t.shutdown()` defined. If `shutdown` is not defined, the `gr-zeromq` is disabled. #### Modtool - Add `cmake-format` support for generated modules #### Build system and packaging - Update Read-the-docs config to include build.tools #### Testing - Change Debian 11 to Debian 12 in CI
(ham/gnuradio-core) and others listed below. Updated to 3.10.7.0 # Changelog All notable changes to GNU Radio will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html), starting with version 3.7.12.0. Older Logs can be found in `docs/RELEASE-NOTES-*`. ## [3.10.7.0] - 2023-07-15 ### Changed #### Runtime - Setting the minimum buffer size should have the desired effect now, and not be overwritten. NOTE: the value returned by min_buffer_size() is not intended to indicate the actual buffer size. Header Payload Demod was the only block attempting to use this value, and was corrected. - Use a set to store thread group (more efficient) - Message Debug can now output via the logging system - The field prefs.singleton is no longer externally exposed (was unintentional) - PMT dict can be generated more easily using pmt::dict_from_mapping() #### GRC - Save changes under all exit conditions (a couple were previously missed) - Prevent silent Generate/Run failures for unsaved flowgraphs #### Testing - Add Fedora 38, using the clang compiler - Remove EOL Fedora 36 #### gr-analog - C++ code generation for Quadrature Demod - Add max_gain parameter for AGC #### gr-blocks - Probe Rate adds a name parameter, for clearer logging - Selector has a new "sync" more that consumes the same number of items from all inputs. Default is now to consume as many items as possible from the active input, and no more than that many items from other inputs. The previous behavior was, well, broken. - Throttle reset item count on restart, to avoid long delays #### gr-digital - Constellation Encoder and Decoder: constellation can be changed at runtime #### gr-filter - Filter design tool: multiple improvements in bounds checking and exception handling - Filter design tool: update QMessageBox to work in Qt5 #### gr-network - Multiple memory management errors fixed in UDP Source/Sink and TCP Sink #### gr-soapy - Better AGC and gain behavior in RTL, AirspyHF and SDRPlay blocks - Support bias controls in RTL and SDRPlay blocks #### gr-uhd - Remove possibility of infinite recursion for network overruns - Support fmtlib v10 - RFNoC: bindings and block yml for Vector IIR, Replay and Log Power blocks - RFNoC: add S16 format to RX Streamer #### gr-vocoder - Support additional codec2 modes #### Modtool - Don't override user-defined CMAKE_INSTALL_PREFIX
(ham/gnuradio-core) Updated 3.10.5.1 to 3.10.6.0 ## [3.10.6.0] - 2023-03-31 ### Changed #### Runtime - Add Python loggers to top_block and hier_block2 - Change the default log level (in the config file) to INFO instead of DEBUG - Logging improvements in the scheduler - Correctly determine native page size for Windows #### GRC - Fixed: opening the source of a hierachical block using the toolbar button produced an error - Use the logger, instead of print statements, in generated top blocks - Remove libX11 load from generated Python code - this was unncessary and produced warnings - Choose Editor dialog stays above parent #### gr-analog - Signal Source: option to hide the message port #### gr-blocks - Throttle: supports max time or number of samples per work iteration, useful for reducing latency at low sample rates - Delay block: option to hide the message port - File Meta Sink: fix missing Python import in template code #### gr-channels - Default taps should be 1.0, not 1.0 + j1.0 #### gr-digital - Async Decoder: several changes to improve performance robustness (see the commit log for more details) #### gr-fec - Tagged Decoder: correctly calculate the frame size for terminated CC decoder #### gr-filter - Fixed reverse parameters in fir_filter_with_buffer and pfb_arb_resampler, which could cause crashes - Fixed PFB Arbitrary Resampler was ignoring attenuation parameter #### gr-iio - Set gain mode as specified (was always manual) - Use the specified gain parameter for second channel (was same as first channel) #### gr-qtgui - Histogram Sink: calculate range of bins correctly to avoid strange distributions - Save (to image) dialogs add file extensions and have a Save button (i.e., they work now) #### gr-soapy - Sources: add tags when the frequency changes #### gr-uhd - Support for more RFNoC blocks - Fosphor, which produces data to drive an on-screen, OpenGL-based renderer which is expected to be in the next release - Moving Average - Switchboard - Split Stream - FFT: add properties for direction, magnitude and scaling - RX Stream: flush after timeout - Fully support multi-channel TX/RX (params were available for one one channel) #### gr-vocoder - Add a number of new codec modes for Codec2 and FreeDV #### gr-zmq - Selectable bind/connect to support more flexible ZMQ patterns and NAT'd networks - Stream sources produce when available, instead of waiting for a buffer to fill, helping with latency #### Modtool - Use interp and decim keywords correctly when generating blocks #### Build system and packaging - Uninstall removes icons and desktop files
gnuradio: updated to 3.10.5.1 Release v3.10.5.1 Some important blocks turned out to be broken in 3.10.5.0. This unscheduled release fixes those regressions and includes a small number of other cleanups and fixes. v3.10.5.1 is intended to be ABI compatible with v3.10.5.0. We'd still recommend rebuilding dependent packages, if possible. Changed Runtime Restore the ability to set a default block buffer size using the buffer_size parameter in the config file. This was lost during refactoring in v3.9. GRC Add Python snipped hook point at "init before blocks", right before blocks are instantiated. gr-audio Remove support for OSX 10.3 and earlier. gr-digital Make tags visible to subclasses of OFDM Frame Equalizer. gr-dtv Correct constant in DVBS2 Modulator. gr-fec Fix errors in Channel Construction AWGN gr-iio Fix IIO blocks, which were broken due to a build-time dependency problem. gr-network Fix crash in UDP Source when buffer overruns. gr-qtgui Remove support for QWT 6.0 and earlier. gr-uhd Add async message port to USRP Source and publish overflow notifications. Add bindings and example for RFNoC AddSub block.
gnuradio: updated to 3.10.5.0 3.10.5.0 Runtime Python block have access to the block logger, as in C++ Default log level changed to INFO (from OFF) Memory-based logger gr.dictionary_logger_backend() added for log debugging API Note: The Python block gateway is now completely implemented in the PyBind11 wrapper, in order to clean up Python dependencies. This is technically an API change, but should not have any external effect. PMT serialization of Complex32 vectors is now REAL | IMAG on all platforms Python IO signature replication (multiple ports specified by one signature) fixed GRC Continue processing block connections after a connection error occurs Drawing/scaling fixes that improve user experience on HiDPI and Windows machines Build system and packaging Many deprecation warnings fixed Make target link libraries PRIVATE wherever possible, removing unnecessary downstream dependencies Add Fedora 37 and drop Fedora 35 CI targets Conda re-rendered with more recent packages - thanks to Ryan Volz for making Conda an easy-to-use, cross-platform method of installing GNU Radio Debian and Fedora packaging specs are no longer included in the code base, since they were out of date, and are maintained by downstreams Testing Code formatting rules for clang format updated to v14 Removed all compiler warning suppression Enable Python block testing for Conda on macOS Many other improvements that make maintenance easier - thanks again to Clayton Smith. In the process of fixing tests, a number of latent bugs were fixed throughout the code. gr-analog AGC3 performance and bug fixes Python has access to control_loop parent class in PLL blocks CTCSS detection of standard tones improved by fixing floating point comparison gr-blocks Probe Signal cross platform reliability improved by better thread synchronization gr-digital CRC32 and CRC16 blocks use little-endian order regardless of host order. This is a wire format change. The options were to have different endian machines unable to communicate, or older and newer versions unable to communicate. Note that there is a more general set of blocks (CRC Append and CRC Check) that are recommended for use wherever possible. Packet headers use consistent bit order across machines Floating point/rounding fix in constellation lookup table gr-fec LDPC G matrix n and k can be access from Python LDPC matrix output size calculation corrected CCSDS/Viterbi path metrics overflow fix gr-network Improve UDP Source/Sink efficiency by removing a layer of buffering and using the GR circular buffer instead of the Boost equivalent gr-qtgui Fixed Python code generation for Msg CheckBox, Digital Number Control, Toggle Button, Toggle Switch gr-soapy Sources will generate rx_time, rx_freq and rx_rate tags, as in UHD sources, where supported by the underlying Soapy driver gr-uhd Re-enable uhd.find_devices(), in addition to uhd.find() RFNoC: generate correct Python code when using clock/time source RFNoC: allow specification of adapter IDs for streamers RFNoC: enable setting of vlen and types for streamers RFNoC: streamers pay attention to stream args RFNoC: sync block controller with gr-ettus OOT RFNoC:set_property() and get_property() added to the C++ and Python APIs RFNoC: Python binds added for rfnoc_block_generic gr-zeromq Sinks will optionally block on full queue, providing backpressure. Previously, overflow data was dropped.
gnuradio: updated to 3.10.4.0 3.10.4.0 Project Scope Replace get_initial_sptr() calls with make_block_sptr() calls. There were a number of places the incorrect function was being used. Runtime Use correctly typed arguments to log messages to prevent build errors. GRC Add xfce4-terminal and urxvt to the list of terminal emulators discovered during the build process. Suppress GUI hint errors that were being shown in the terminal window. Use integers for screenshot size (floats were causing Cairo errors). Build system and packaging Reformat cmake files and make cmake formatting part of the workflow. Allow GNU Radio to be a part of other cmake-based projects. Correct linking to libiio and libad9361 on macOS. Update method for determining Python installation directory. This should work correctly now on (all?) distro releases. gr-blocks New Block Interleaver/Deinterleaver interleaves blocks of symbols Correct calculation of items_remaining in File Source, which allows seek() to work correctly. Add an example for Wavefile Sink gr-digital Deprecate the CRC32 and CRC16 blocks, which will be removed in the future. There are more general CRC blocks which do the same thing (and more). gr-filter Fix demo for PFB channelizer gr-iio FMCOMMS2 Sink assumes CS16 data is scaled to 32768, rather than 2048. FMCOMMS2 returns the correct samples for the second channel in 2-channel mode. gr-trellis Correct Python bindings for trellis::metrics. gr-qtgui Range widget can now output messages when value changes. Add C++ code generation for Time Sink Regenerate Python bindings for some blocks when necessary. Waterfall Sink correctly uses half spectrum for float input. gr-uhd Add Python bindings for the UHD find() functino. gr-zeromq Support newer get() and older/deprecated getsockopt() functions in cppzmq depending on availability. Modtool Parse IO signatures with or without gr:: prefix. Documentation Update certain file lists to keep build paths out of documentation. Testing Update Conda recipe for Qt 5.15 and re-render CI support files. Add testing on Ubuntu 22.04. Link tests directly against spdlog with not linking to GR runtime. Ignore Python "missing whitespace after keywork" formatting error.
(ham/gnuradio-core) Updated 3.10.1.1 to 3.10.2.0 ## [3.10.2.0] - 2022-04-09 ### Changed #### Project Scope - Clayton Smith continues the effort to replace Boost usage with modern C++ equivalents. In a related effort, he has continued the logging modernization started by Marcus M端ller. In his spare time, he has tackled some tricky, intermittent CI failures, some of which turned out to be real bugs. Much of this work is invisible to end users, but is extremely useful in making GNU Radio more reliable and maintainable. Special thanks are due to Clayton for a lot of hard work this cycle. - Use exceptions instead of `exit()` in several places. - Fixed a variety of Python deprecation warnings. - Packager note: `jsonschema` is required for the JSON Config and YAML Config blocks. Those blocks will be disabled if `jsonschema` is not found. #### gnuradio-runtime - Correct size/usage for single-mapped buffers (part of the new Custom Buffers feature). - Correct buffer size allocation. This was actually the single change in v3.10.1.1, which did not get its own CHANGELOG entry. #### GRC - Improve discovery of xterm and related programs. - Save generated hierarchical block code to the block library instead of the directory containing the current GRC flowgraph. - New JSON Config and YAML Config blocks that load configuration variables from files at runtime. Those variables may then be used in block parameters. - Store the GNU Radio version in flowgraph metadata when saving. - Minor change in Python evaluation code to allow `affinity`, `minoutbuf` and `maxoutbuf` to be adjusted via script parameters. #### Build system and packaging - Require C++-17 for `gnuradio-runtime` and code compiled against it (via cmake flags). - Add `pythonschema` to build- and run-time dependencies. #### gr-blocks - Add exponential distribution to Message Strobe Random block's `delay` selection. - Quiet down debug messages in File Sink. - Skip alignment check in File Source when the input file is not seekable (e.g., it is a pipe). #### gr-filter - Fix crash in Rational Resampler logging #### gr-digital - Add generic CRC blocks: CRC Append and CRC Check. #### gr-qtgui - Improve text/background color on Range widget. - Digital Number Control emits message with new, instead of previous, value. - Message Edit Box sends message only when return is pressed, rather than whenever focus is lost. - Vector Sink allows legend to be disabled. - Type error fixes (Python 3.10 is stricter about int casting). #### gr-trellis - Provide Python bindings for PCCC Encoder and Viterbi Combo. #### gr-vocoder - Add C++ generation support to gr-vocoder #### Code generation tools - Support strongly-typed enums in Python bindings
gnuradio*: update to 3.10.1.1 Bugfix release for the 3.10.x.y release series.
gnuradio: update to 3.10.0.0 - gr-pdu: Protocol Data Units library - gr-iio: Linux industrial I/O library (but not packaged in pkgsrc) - Custom Buffers Support - switch from Log4CPP to spdlog
gnuradio*: update to 3.9.4.0 Minor update bringing C++ code cleanups, bug fixes and some performance improvements.
gnuradio-*: update to 3.9.2.0 Changed SoapySDR support (gr-soapy) GRC Parameter expressions and/or values can be displayed in blocks on the flowgraph. Previously, only values were displayed. Look for the "Show Parameter ..." toggles under the View menu. Deprecated blocks are shown in a distinct color (orange), and the optional deprecated property has been added to block yaml Dark theme works better, especially for parameter fields Vector length is now correctly applied to all input ports Validation has been improved. Raw types are validated. Port connections are checked by type rather than by item size. Variable names that cause name conflicts in Python code (e.g., with package names) are rejected Bus logic fixes Blocks can no longer be dragged off the screen and lost forever gnuradio-runtime Remove pmt::pmt_* functions, which were not actually implemented. This is technically an API change, but any use of the API would have resulted in a link error. Remove Python bindings for internal buffer functions gr-analog Added an example for PLL Frequency Detector Better names for parameters in PLL GRC blocks gr-blocks Consistent naming for Vector Length parameter in GRC blocks count_bits uses VOLK popcnt for better performance (used for example in the Correlate Access Code block) Rotator block phase increment parameter is controllable via a message, and a tag can be added at the point where the increment is adjusted gr-digital MPSK example updated to use a Linear Equalizer (replacing deprecated block) gr-filter Filter Delay documentation improvement Interpolating FIR filter can generate C++ code gr-dtv VL-SNR bugs fixed (incorrect constants). gr-qtgui Improve autoscaling for vector sinks Fix floating-point resolution problems in several widgets, due to interpretation of PMT doubles as floats gr-uhd Add policy enum to Python bindings for tune_request Additional time spec options on UHD blocks (PC Clock on Next PPS, GPS Time on Next PPS) Fix up code that was generating warnings Fix command handler logic to apply commands from messages to the correct channel gr_filter_design "File/Save" is disabled until the taps have been computed, and the GUI is reset after a save, to make it clearer which data is being saved. Entries are hidden for parameters that do not apply to the selected filter type. Save window type as an integer instead of a Python enum name gr_modtool Improve validation of module and block names Build System and Infrastructure Improved messages related to dependencies MPIR and GMP. Only one of these packages is required, and the previous error messages were confusing. Cleaner builds for Windows and Conda. A number of general cmake improvements have resulted from this work. In-tree packaging files for DEB and RPM, used with Launchpad and COPR Added man pages for GNU Radio tools Test code generation for all in-tree GRC examples In GrPybind.cmake, PYBIND11_INCLUDE_DIR (incorrect) was changed to pybind11_INCLUDE_DIR
gnuradio-*: update to 3.9.1.0 Changed C++14 C11 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 not included in clang-tidy-checks 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 SWIG Full tree conversion from SWIG to Pybind11 bindings Doxygen now uses MathJax, full LaTeX installation no longer required GRC start flowgraph in folder where it resides gnuradio-runtime When calculating offsets in non-integer rate FEC, lround default seed for gr::random now actually as documented time-dependent loggers moved from gr::block to gr::basic_block PMT serialization PMT dicts no longer indistinguishable from pairs PMT symbol hashing no longer suffers under oddball own implementations gr-audio Increased ALSA buffer nperiods gr-blocks add, add_const VOLK’ized, templated this seems to break things in other places, even if it proves to be mathematically identical wavfile infrastructure: libsndfile now dependency gr-digital transcendental block: default to 32 bit float complex, not double Linear equalizer: separate adaptive algorithm, allows for using e.g. trained sequences instead of the classical LMS, CMA DFE: better structure for decision history gr-dtv LDPC encoder: template functions instead of #defined macros LDPC encoder: smaller tables through uint16_t for index tables gr-fec API uint8_t, not char gr-fft FFT blocks/functions templatized gr-filter logging format rational_resampler_base -> rational_resampler gr-uhd Required UHD version bumped to 3.9.7 logging format Deprecated gr-analog sig_source: freq port will be removed in the future gr-audio audio-sink, -source: Windows audio sink/source deprecated, the portaudio sink/source works even better under windows anyway gr-digital In favor of symbol_sync, deprecate: clock_recovery_mm msk_timing_recovery pfb_clock_sync Added C++ Generation all over the place PyBind bindings + generator gnuradio-runtime block_gateway: set_max_output_buffer GR_PREFS_PATH environment variable sensitivity to configure the path to the config file gnuradio-config-info --print-all GRC option to toggle ID visibilities globally Validation check for QT GUI hints Python snippets block header parsing tool block header parsing tool (GSoC 2019) gr_modtool option to convert blacklisted files gr-analog sig_source: cmd port adds support for dicts, setting of frequency, amplitude, offset and phase parameters gr-blocks selector now has control message ports Rotator-based freq shift convenience wrapper Message-to-Variable and vice versa blocks DC Spike removal IQ Swap Complex to interleaved char / short: scaling option Delay block: control message port Phase Shift block with message port wavfile_sink, _source can now deal with a lot of audio formats: uncompressed WAV/AIFF, µ- and A-law compressed audio, OGG/Vorbis, FLAC, even octave files Stream Demux, which demuxes streams according to lengths vector rotator: phase() getter gr-digital OFDM: multiple CP lengths ofdm_equalizer_simpledfe: enable_soft_output Constellation Encoder Constellation: normalization options gr-fec {en,de}code_rs_8, {en,de}code_rs_ccsds: Reed-Solomon en- and decoders gr-fft Windows: Gaussian Flat Top Tukey Window build() call now with default beta gr-filter GRC: File taps loader block Low pass FFT filter convenience wrapper ichar / ishort decimator phase continuity for freq_xlating_fir_filter gr-network gr-network: a whole new networking blocks module! TCP UDP Much better lockup/multithreading support than 3.7-era blks2 gr-qtgui Azimuth/Elevation plot Autocorrelation plot Compass visualization Dial control Gauge: dial, level Distance plot LED-like indicator Message-passing check box Message-passing numeric control Message-passing push button Toggle Button Eye sink Vertical slider gr-uhd Filter API UHD 4.0 support Power Reference API Bidirectional setting messages on both sink, source gr-vocoder Codec2 dev branch support FreeDV: In/output rates can differ FreeDV: text message output gr-zeromq C++ GRC templates Tag filtering for tag-forwarding blocks Removed VOLK is no longer a submodule Sphinx: consolidate into doxygen, or wiki-maintained block list. Python 2 SWIG gru python module gnuradio-runtime circular_file.cc math/common_factor.hpp gr-blocks bin_statistics_f log2_const gr-digital PFB clock sync: set_taps deprecated old OFDM infrastructur ofdm_frame_acquisition ofdm_frame_sink ofdm_insert_preamble ofdm_sync_fixed ofdm_sync_pn ofdm_sync_pnac ofdm_sync_ml ofdm_receiver digital_voice gr-fft malloc_float, _double: rely on VOLK Goertzel: dtor superfluous gr-filter deprecated window function duplicates (use them from gr-fft!) Fixed CMake: Qwt, Log4Cpp detection ctrlport strings unicodified Freedesktop install script was not executed Redundant icons installed Path substitution on Windows was backslash-broken YAML definitions: more than I can count Cross-building: py interpreter at runtime != build time gnuradio-runtime ctrlport: unholy stored reference to stack-allocated object removed Sine table generation for fixed point math gr_unittest: floatAlmostEqual had a lot of false passes due abuse of all() get_tags_in_range for delay < (end-start) Premature tag pruning release flattened flowgraph after stopping, fixes restartability/shutdown problem PMT serialization portability latency issue caused by setting block alias on msg block Windows logging errors ctrlport: Thrift >= 0.13 broke GRC Tab widget ID visibilities A lot of YAML templates Default setting in qtgui chooser restored Boolean parameters no longer switch buttons Nested namespace handling Don’t rely on set ordering in tests configparser import input box color theme on dark themes Search box typing doesn’t inadvertedly interact with the rest of GRC anymore gr_modtool Empty argument lists allowed Boost UTF replaced CppUnit, this needed to be done here, too gr-analog wfm left/right, filters gr-audio portaudio: lock acquisition was improper gr-blocks Throttle now uses monotonic clock Tag debug only saved last work call’s tags File sink flushes on stop gr_read_file_metadata.py used to lose rx_time precision File source big file handling under Windows file_*: fseek errors used to be ignored gr-digital map_bb: thread safety, buffer overflows additive_scrambler: reset was broken Constellation scalefactor wasn’t always initialized long-standing qa_header_payload_demux bug addressed by waiting for both RX and TX, not only either false triggers in correlate_access_code gr-dtv rate mismatch in ATSC flowgraphs gr-fec async_decoder Heap corruption cc_encoder: constraint length K > 8 led to wrong output gr-fft thread safety of copy assignment/ctor log power FFT Python gr-filter variable_band_pass_filter GRC complex taps input RRC filter gain for alpha = 1 gr-qtgui Remove copies of image data in returns by using move semantics Remove bogus overriding in drawing functions of plot_raster, _waterfall Edit MSG box: don’t require key to be set Don’t check for Python2 libs Number Sink ignored averaging setting gr-uhd UHD apps: Py3 fixes USRP blocks: multichannel objects not properly populating channels gr-video-sdl YUV formats fixed gr-zeromq Don’t depend on deprecated ZMQ functionality Unhandled exceptions now handled, much calmer Avoid infinite blocking in tb.stop() by using ZMQ_LINGER
gnuradio-core: update to 3.8.1.0 Here is a very high level list of changes: ## 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.