Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
The package changed with the addition of its libepoll-shim dependency.
Otherwise, we can get:
ERROR: libepoll-shim>=0.0.20210418 is not installed; can't buildlink files.
|
|
|
|
|
|
## [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
|
|
|
|
|
|
|
|
Bugfix release for the 3.10.x.y release series.
|
|
|
|
[ 12%] Building CXX object gnuradio-runtime/lib/CMakeFiles/gnuradio-runtime.dir/basic_block.cc.o
In file included from /usr/pkg/include/boost/dll/runtime_symbol_info.hpp:11:0,
from /tmp/ham/gnuradio-core/work/gnuradio-3.10.0.0/build/gnuradio-runtime/lib/constants.cc:16:
/usr/pkg/include/boost/dll/config.hpp:47:22: error: 'filesystem' is not a namespace-name
using namespace std::filesystem;
^~~~~~~~~~
/usr/pkg/include/boost/dll/config.hpp:47:32: error: expected namespace-name before ';' token
using namespace std::filesystem;
^
|
|
|
|
|
|
- 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
|
|
|
|
Minor update bringing C++ code cleanups, bug fixes
and some performance improvements.
|
|
|
|
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
|
|
|
|
|
|
|
|
|
|
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
|
|
change
|
|
|
|
|
|
This yields one common package to provide libfftw3 (double) and libfftw3f
(single) by default and optionally the Fortran bindings as well as
OpenMP and MPI variants, and those with long double or quad precision.
This changes all packages depending on fftwf in the same commit to minimize
the time of inconsistency. Soon, math/fftwf will disappear.
|
|
|
|
|
|
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
|
|
|
|
It is no longer in pkgsrc.
|
|
|
|
This will ease transition to newer Python versions, and also removes
the apparently unnecessary restriction on 3.6. According to the upstream
build system, 3.6 is the minimum version required.
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
Note that the previous gnuradio-core package conflicts with math/volk.
In order to update you must delete the old gnuradio-core package so
that math/volk can first be installed.
|
|
keep an insanely long hand-maintained list of Python files, go with
wildcards. Simplify various build commands.
|
|
|
|
|
|
|
|
|
|
|
|
pkglint --only "https instead of http" -r -F
With manual adjustments afterwards since pkglint 19.4.4 fixed a few
indentations in unrelated lines.
This mainly affects projects hosted at SourceForce, as well as
freedesktop.org, CTAN and GNU.
|
|
|