Skip to content

Releases: RedhawkSDR/redhawk

2.3.2

03 Mar 18:07
20dfd84
Compare
Choose a tag to compare

The effort in REDHAWK 2.3.2 focused on:

Python sandbox bug fixes
OmniOrb depencency version configuration fix

Fixes
The following fixes were completed in REDHAWK 2.3.2:

Core Framework Fixes

  • Fixed some problems with the Python sandbox:
    • PRFs are no longer invalid when the kind-type is not specified for some properties.
    • External properties via command line are now properly passed to launch components.
  • Fixed problem with EPEL overriding required OmniOrb version. The correct version should now be installed.

2.2.10

08 Feb 19:35
7af5865
Compare
Choose a tag to compare

The effort in REDHAWK 2.2.10 focused on:

Python sandbox bug fixes
OmniOrb depencency version configuration fix

Fixes
The following fixes were completed in REDHAWK 2.2.10:

Core Framework Fixes

Fixed some problems with the Python sandbox:
** PRFs are no longer invalid when the kind-type is not specified for some properties.
** External properties via command line are now properly passed to launch components.
Fixed problem with EPEL overriding required OmniOrb version. The correct version should now be installed.

REDHAWK 3.0.1

04 Oct 17:41
ed964e1
Compare
Choose a tag to compare

The effort in REDHAWK 3.0.1 focused on:

  • Replace log4j with reload4j in the Core Framework and in the IDE.
  • Resolved bug preventing fei3-generator from generating python code
  • Resolved bug preventing IDE from connecting to a running redhawk-3.0.0 domain

Fixes

The following fixes were completed in REDHAWK 3.0.1:

Core Framework Fixes

  • Replaced log4j dependency with reload4j
  • Fixed a bug in the Java Streams API that was causing null pointer exceptions when making calls to the SRI
  • Resolved bug preventing fei3-generator from generating python code

IDE Fixes

  • Resolved bug preventing IDE from connecting to a running redhawk-3.0.0 domain
  • Replaced log4j dependency with reload4j
  • IDE no longer provides a log4j osgi module

REDHAWK 3.0.0

22 Aug 13:12
9ce95bb
Compare
Choose a tag to compare

The changes in REDHAWK 3.0.0 include:

  • A major update to FrontEnd Interfaces.
  • Support for running Components in Docker containers.
  • Convert the Core Framework and the Assets to use C++ 14.
  • Convert the Core Framework and the Assets to use Python 3.
  • Convert the Core Framework to use Java 11.
  • Bundle the Manual with the Core Framework.

New Features

The following features were added in REDHAWK 3.0.0:

Core Framework Features

  • Redesigned FrontEnd Interfaces
    • Created a hierarchical model for FEI devices:
      • Created Parent and Child devices in the same project.
      • Allowed dynamic device creation.
      • Formalized antenna device construct.
      • New model resolved ambiguities in "hard-wired" device chains.
      • Formalized bank of tuner (BOT) devices.
      • Simplified receive digital channel (RDC) and transmit digital channel (TDC) devices.
      • Added support for transmit and receive arrays.
    • Improved device management:
      • Added generalized device status messages.
      • Added FEI specialized device status messages.
      • Improved support for transmit capabilities:
        • Added data queue management.
        • Established policies for transmit scheduling.
    • Provided the ability to trace connections forwards and backwards:
      • Make RFInfo, NavData, GPS, and RFSource bi-directional.
    • Expanded definition of hardware characteristics:
      • Added sigma to the PathDelay description.
      • Added 'SettlingTime' to the frontend_tuner_status structure required properties.
      • Expanded RFCapabilites to support sample rate and gain.
      • Express FRONTEND::transmitter_allocation::max_power in dBm instead of watts.
    • Improved data flow definition
      • Return a data structure on allocation with the appropriate data and control ports.
      • Listener allocations are supported but no longer required.
      • Documented that StreamQueue is supported in neither VITA49 nor SDDS.
      • Require source device id and allocation id as part of the keywords in Bulk IO data from FEI devices.
    • Support tooling
      • Added command-line tool to generated FEI-compliant device projects.
  • Support for running Components in Docker containers, via local Docker or Kubernetes.
  • Added C++ 14 language support, available via devtoolset-9.
    • Replaced Boost regex with standard library features from C++ 14.
  • Added Python 3 language support.
  • Added Java 11 language support.
  • Removed the adminservice tool.

Documentation Features

  • Bundled the Manual with the Core Framework.

Fixes

The following fixes were completed in REDHAWK 3.0.0:

Core Framework Fixes

  • Support files sizes larger than 2^32-1 bytes for the CF::File interface.
  • Generated code for the correct implementations when using an SPD file with more than one implementation.
  • Resolved "Invalid template" error when using --service option to redhawk-codegen.

IDE Fixes

  • Deprecated the IDE.
    • IDE supports runtime inspection but no longer supports FEI device generation.

Documentation Fixes

  • Organized installation material into a single directory.

2.3.1

22 Aug 18:04
2fc6f8e
Compare
Choose a tag to compare

The changes in REDHAWK 2.3.1 include:

  • Replace log4j with reload4j in the Core Framework and in the IDE.
  • Fixed a bug in the Java Streams API that was causing null pointer exceptions when making calls to the SRI.

2.2.9

22 Aug 15:47
6b689bb
Compare
Choose a tag to compare

The changes in REDHAWK 2.2.9 include:

  • Replace log4j with reload4j in the Core Framework and in the IDE.

REDHAWK 2.2.8

08 Apr 17:47
2.2.8
Compare
Choose a tag to compare

The effort in REDHAWK 2.2.8 focused on:

  • EOS condition is reported correctly for all connections when an incoming stream receives an EOS flag.
  • Rate in header for zero-rate SDDS headers is ignored
  • Resolved issue when adding a new stream to an attachable port that would cause a program to segfault.
  • Exiting a python sandbox session will now properly terminate a resource's processes started during the session that threw initialization exceptions.

Fixes

The following fixes were completed in REDHAWK 2.2.8:

Core Framework Fixes

  • The application object updates the property on the correct component when one component's name is a substring of another component
  • Slow-startup devices no longer cause issues for the Python sandbox
  • Removed vendor check for Java

IDE Fixes

  • Null pointer fixed and doesn't occur any longer

Special Resolution

The following previously reported Known Issues have been closed in REDHAWK 2.2.8 with the following resolutions:

IDE Special Resolutions

  • This has been fixed. The behavior no longer exists as stated in defect.
  • OBE

REDHAWK 2.3.0

18 Mar 16:27
2.3.0
6773932
Compare
Choose a tag to compare

The effort in REDHAWK 2.3.0 focused on:

  • Added methods to C++ ThreadedComponent API, that allow developers to determine if stop was called or if the resource internally reached an finished state.
  • Added Python iterator support to limit the number of entries that are returned from a servant's iterator interface.
  • Fixed connection rate check for rh.MSDD during device startup when the MSDD radio supports multiple network interfaces.
  • rh.MSDD correctly enables the tuner's output module for successful allocations The rh.MSDD property advanced::max_nic_percentage will now track the total output rate from the radio's network interface against this threshold to disallow allocations that oversubscribe the interface.
  • Resolving issue to correctly set the time-of-day in ONEPPS mode.
    Added properties msdd_status::tod_host_delta (gives the time-of-day offset between the host and the MSDD's TOD module while in ONEPPS mode) and msdd_status::ntp_running (shows whether ntp is running on the host while in ONEPPS mode).
  • Added JAVA Bulk IO Stream API support to bulkio.jar
  • EOS condition is reported correctly for all connections when an incoming stream receives an EOS flag.
  • An application's external property maps to the correct component when the component's name is a substring of another component.
  • Fixed issue where timecodes values were not properly adjusted during filter operations.
  • rh.fastfilter adds a bybass mode property. When bypass mode is enabled, any input stream data bypasses all filter operations and passed directly to any output connections.
  • rh.psd component properly handles values above 2.4 GHz for SRI keywords CHAN_RF and COL_RF.
  • Resolved issue when adding a new stream to an attachable port that would cause a program to segfault.
  • Exiting a python sandbox session will now properly terminate a resource's processes started during the session that threw initialization exceptions.

New Features

The following features were added in REDHAWK 2.3.0:

Core Framework Features

  • Added Bulkio Stream support in Java

Documentation Features

  • Added support for Java Bulk IO stream API

Fixes

The following fixes were completed in REDHAWK 2.3.0:

Core Framework Fixes

  • Changed setup and teardown code to prepare the state of /dev/shm to allow the test to operate properly.
  • For JAVA BulkIO ports, disconnectPort will throw CF.InvalidPort for unknown connection identifiers.
  • Device_impl::updateUsageState is now a virtual method to allow for specialization.
  • The application object updates the property on the correct component when one component's name is a substring of another component
  • Removed vendor check for Java
  • Do not remove PushConsumers if a timeout occurs during a push operation.

IDE Fixes

  • Null pointer fixed and doesn't occur any longer

Documentation Fixes

  • Updated the format of headings in the REDHAWK Manual.
  • Updated the REDHAWK ICD to indicate that dataChar is deprecated and dataOctet should be used in favor of dataChar.
  • Added an example using the connectionId argument when making sandbox connections.
  • Updated glossary links to display the first time glossary terms are displayed on a page. Acronym terms and the corresponding acronym were updated to display the first time the terms are displayed on a page. After this first occurrence, only acronyms are displayed.
  • All images in the manual now have a caption displayed under the image.
  • Added GPS interface information to the FrontEnd Interfaces appendix.
  • Added NavData interface information to the FrontEnd Interfaces appendix.
  • Added RFInfo interface information to the FrontEnd Interfaces appendix.
  • In Optimization -> Configuring omniORB, fixed a typo that referenced IORs.
  • In Frontend Interfaces -> Types of Tuners -> CHANNELIZER Tuner, fixed a typo that referenced DDC.
  • Updated the cleanomni script to include CentOS 7 information, and rearranged the omni information in the Troubleshooting appendix .
  • In Troubleshooting -> Setting Omni Log Levels, updated the omniORB User's Guide links for CentOS 7.
  • In the Logging Configuration Plugin section, fixed a typo that referenced --useloglib.
  • Updated tables in the manual to auto adjust in size so the contents wraps correctly within the cells.
  • Removed UHD dependencies from those provided in REDHAWK and added them to the External Dependencies appendix.
  • In Managing and Defining Properties, fixed a typo in the utctime description.
  • Fixed grammatical errors in the REDHAWK ICD and in the SCA Domain Profile.
  • In the Waveform Editor -> Components Tab section, removed the reference to Component ID and modified the text to match the new Components Tab image.
  • In the Waveform Editor and in the Distributed Computing and RF Devices sections, updated missing and incorrect links.
  • In the Connecting to a Running Domain section, fixed minor typographical errors.
  • In the REDHAWK ICD, corrected section numbers.
  • In the REDHAWK ICD and in the SCA Specification, fixed minor typographical errors in the Logging Description section.
  • In the Logging Within a Resource section, fixed minor typographical errors.
  • In the Waveform Editor, in the Components Tab section, added the Components Tab image.
  • In References for Application Developers, corrected the Sandbox link to point to the Sandbox section.
  • In Creating a New Node, corrected the Exploring the Running Node link to point to the Exploring the Running Node section.
  • In Creating a Waveform Service Configuration Using the rhadmin Script, corrected the Waveform Configuration File link to point to the Waveform Configuration File page.
  • Fixed error of DMD file reference to be DCD file in Creating a Node section.
  • Removed a sentence from the Workbench topic.
  • Corrected expanded term information for JDT (Java Development Tools) and CDT (C/C++ Development Tools) acronyms.
  • Removed the following glossary terms: Editor, System, Ethernet, Linux, and Local Area Network.
  • Updated the Installing the Framework from Source and the Device and Service Affinity sections to reflect affinity disable build options.
  • Updated the Persistence Store and the Installing the Framework from Source sections to reflect that the default build now enables the sqlite backend.
  • Updated custom.css to fix table formatting issue.
  • Removed references to 32-bit OS versions that are no longer supported.
  • Removed Standalone EPEL information from the REDHAWK External Dependencies appendix.

REDHAWK 2.2.7

06 Nov 16:34
2.2.7
6f3bce7
Compare
Choose a tag to compare

The effort in REDHAWK 2.2.7 focused on:

  • Plugin infrastructure created for GPP to track custom system metrics
  • Queue flush reported on all affected streams in the incoming queue
  • When reading Bulk IO streams, allow the consume size to be greater than the read size (equivalent to read+skip)
  • Resolving an issue with intermittent failures in omniEvents when writing to syslog running on CentOS 7.
  • Components generate from command line with applications like createBinaryComponent generate the correct header on the SCD and PRF files
  • Java message ports are consistent with Python and C++ message ports. When the message fails, it tries again in subsequent messages
  • Python helper pythonComplexListToBulkioComplex converts numpy.float to Python native float

Fixes

The following fixes were completed in REDHAWK 2.2.7:

Core Framework Fixes

  • Resolved an issue with device allocations. If the device's state is BUSY, the device allocation always returns False.
  • Resolved an issue with ports generated from custom IDL. The ports now use the hierarchical logger to log errors.
  • RH_SOFTPKG_CXX version checks are honored when minimum and maximum versions are given for the dependency
  • Resolved an issue with custom interfaces returning a data structure with variable-length fields. The generated code now returns the correct type.
  • Resolved an issue with the DeviceManager. It now sets the process group id for all services and devices that it launches.
  • Resolved issue with attachable ports (like dataSDDS and dataVITA49) failing silently. They now report a failure to attach with an exception.
  • Resolved an issue with code generators. They no longer fail when the wavedev file is missing.
  • Appropriate XML headers are created for SCD and PRF files when creating a project from command line
  • Python helper pythonComplexListToBulkioComplex converts numpy.float to Python native float
  • When invoking resource.getPOA, if a name is provided, the named POA is returned
  • When using Bulk IO streams, the amount of data consumed (pointer pushed forward) can exceed the amount of data read
  • Java output message ports can recover from CORBA.COMM_FAILURE errors

Documentation Fixes

  • Updated custom.css to fix table formatting issue.
  • Removed Standalone EPEL information from the REDHAWK External Dependencies appendix.

Special Resolution

The following previously reported Known Issues have been closed in REDHAWK 2.2.7 with the following resolutions:

Core Framework Special Resolutions

  • popen in spawnnodebooter needs a nb.wait() to make sure that a return code is received - Cannot Reproduce - This bug could not be reproduced against REDHAWK 2.2.6. (The test framework already has a wait on the popen.)
  • Out scan control ports are missing from FEI library - Duplicate of Output scanning tuner ports are missing the template, and this feature was resolved in REDHAWK 2.2.6.
  • Sandbox generates an unnecessary error when cleaning up - Fixed by Other Issue - Fixed by update in REDHAWK 2.2.3 release: When the Python sandbox exits and it has a reference to a Device Manager, the deactivation of the object no longer raises an exception if the object no longer exists.
  • Cannot call connectPort on a bidirectional MessageEvent port - Won't Fix - This is the expected behavior. A bidirectional message port is a message consumer port. Connecting a message consumer port to another message consumer port is invalid.

REDHAWK 2.2.6

06 May 16:45
2.2.6
Compare
Choose a tag to compare

The effort in REDHAWK 2.2.6 focused on:

  • Resolving an exception that occurred when calling theAllocationManager's listAllocations method with no arguments.
  • Adding developer documentation to explain how to enable JacORB for Java components.
  • Fixing typos in component sample code comments.
  • Implementing fixes to properly initialize the persona device logger.
  • Changing _bindir to _libdir in the generated .spec file for generated C++ components.
  • Adding a return code to cleanomni to indicate when one of the steps failed. In the event of an error, cleanomni still attempts each step of the cleanup process before exiting with a non-zero status.
  • Modifying Device Manager behavior to no longer hang on shutdown when non-DCD devices/services remain registered.
  • Resolving an issue with the DeviceManager exiting during device and service registrations due to unhandled exceptions.
  • Updating the behavior of the GPP's memory threshold monitoring to more accurately reflect real world usage. The available memory is calculated using MemAvailable, which provides the best estimate per the Linux kernel and does not include swap memory. The default value for the free memory threshold is now the lesser of 20% of total memory, or 6GB.
  • Resolving a dead lock issue that occurred during the omniEvents check point operation.
  • Preventing the file system from crashing when files are removed while list() is invoked.
  • Resolving handling of process lifecycle by the GPP when process identifiers are reused on a busy system. Adding safeguard against the GPP terminating processes when the process identifier and process group identifier are not the same.

Fixes

The following fixes were completed in REDHAWK 2.2.6:

Core Framework Fixes

  • Fixed display of property.api() for Python sandbox components.
  • Added DigitalScanningTuner interface to C++ and OutDigitalScanningTunerPort to Java.
  • Updated the Python output in the Custom Transport Technical Notes.
  • Added comparison of sri.blocking to comparison of two SRIs.

IDE Fixes

  • Removed the Help button from the Properties tab of the Softpkg Editor in the IDE.
  • Increased the thread.sleep value in order to let all processes completely stop.
  • Resolved issue with Browse Properties dialog to display all matching criteria for the filtered text.

Documentation Fixes

  • Updated the formatting in all REDHAWK Specifications and fixed inconsistencies and errors in cross references and text.
  • Corrected capitalization of Event Service.
  • Corrected inconsistent capitalization and incorrect glossary references of the term, sandbox.
  • Removed the term, role, from the subscriber and publisher implementation information in the Working with Events page of the REDHAWK Manual.
  • Revised and reorganized the BulkIO data transfer and Stream API information and added the Attachable Streams page to the REDHAWK Manual.
  • Updated the Overview Tab information in the SoftPkg Editor page of the REDHAWK Manual.
  • Updated text and graphics in the Waveform Editor page of the REDHAWK Manual.
  • Added REDHAWK asset README.md files, REDHAWK asset release notes, and the updates repository information to the main website page.
  • Updated screen captures in the Creating a REDHAWK Shared Library Project page, the Plot Settings Dialog page, and the Using the Octave Wizard page of the REDHAWK Manual.
  • Updated STDOUT references in the log configuration information and stdout references in the code examples in the Configuring Logger Settings page of the REDHAWK Manual.
  • Updated property access information in the Managing and Defining Properties page of the REDHAWK Manual.
  • Added a section, IDE and Code Generation Support, to explain how to create a programmable device and a persona device using the IDE and code generators.
  • Added instructions for using the REDHAWK Updates repository.
  • Removed 2.1.x beta information from the website.

Special Resolution

The following previously reported Known Issues have been closed in REDHAWK 2.2.6 with the following resolutions:

IDE Special Resolutions

  • Deleting project does not close all related open editors - Cannot Reproduce - This bug could not be reproduced against REDHAWK 2.2.5.
  • IllegalArgumentException when cancelling FindBy Wizards - Cannot Reproduce - This bug could not be reproduced against REDHAWK 2.2.5.
  • CI RCPTT test fails for red x on testDomainConnectionLoss - Fixed by Other Issue - Fixed by update in 2.2.3 release: Improved the robustness of Domain Manager refresh in the Explorer view so that it is less likely to require a manual refresh when the Domain Manager is unexpectedly terminated and restarted.

Documentation Special Resolutions

  • TOC disappears in the left frame of the Manual upon subheading selection - Cannot Reproduce - This bug could not be reproduced against REDHAWK 2.2.5.
  • Typo in REDHAWK ICD - Fixed by Other Issue - Fixed by update in REDHAWK 2.2.4 release: Updating the REDHAWK SCA Specification and the REDHAWK ICD Specification with the application launch sequence that includes initializeProperties.