OpenDDS 3.25.0
Download OpenDDS-3.25.zip (Windows) or OpenDDS-3.25.tar.gz (Linux/macOS) instead of "Source code (zip)" or "Source code (tar.gz)".
Version 3.25.0 of OpenDDS
Released 2023-07-20
Read the documenation for this release on Read the Docs.
Additions
-
The Observer interface now has support for dispose and unregister. (PR #4137)
-
OpenDDS now stores configuration information in a key-value store. (PR #4138, PR #4134, PR #4151)
-
Configuration values can be set via API, config file, or command line.
- Currently applies to the common section and common transport configuration.
-
-
Added
encode_to_string
,encode_to_bytes
,decode_from_string
, anddecode_from_bytes
toTypeSupport
. (PR #4144, PR #4122, PR #4133, PR #4135)- These methods convert samples to and from other formats.
- Currently only
OpenDDS::DCPS::JSON_DATA_REPRESENTATION
is supported.
-
Add
-Gequality
option to opendds_idl to generate==
and!=
for structs and unions. (PR #4154)- The members of the struct or union must have a type that could appear in a DDS topic and be supported by opendds_idl.
- The motivation for this change was to make the generated code more useful as many users go on to define these operators.
-
CMake Config Package
-
Added executable targets. (PR #4160)
-
OPENDDS_CMAKE_VERBOSE
output has been expanded, but now accepts a list of categories to control how much is logged. (PR #4160) -
Added
opendds_export_header
to generate an export header. (PR #4160) -
- Added
opendds_target_sources(GENERATE_SERVER_SKELETONS)
to allowtao_idl
to generate code for CORBA servers. (PR #4140) - Added
opendds_target_sources(AUTO_LINK)
as a fine-grained version ofOPENDDS_AUTO_LINK_DCPS
. (PR #4140) - Added
opendds_target_sources(SKIP_TAO_IDL)
to disabletao_idl
. (PR #4140) - Added
opendds_target_sources(SKIP_OPENDDS_IDL)
to disableopendds_idl
. (PR #4140) - Added
opendds_target_sources(USE_EXPORT)
to allow overriding the generated export header with an existing one. (PR #4160)
- Added
-
Libraries and features can be passed to
find_package(OpenDDS COMPONENTS)
to change what is required. (PR #4160, PR #4140)- See Components for details.
-
Security
- Fixed null pointer exception caused by RTPS Parameters with incorrect zero size. (PR #4197)
Fixes
-
CMake Config Package
-
Fixed issue deserializing bounded sequences with JSON (PR #4150)
- The deserialization will fail if the JSON input contains more elements than the bounded sequence can hold.
-
Updated the RtpsRelay's tracking of client IP addresses so they are removed when no longer used. (PR #4202)
- The RtpsRelay configuration option -MaxAddrSetSize was renamed to -MaxIpsPerClient
Documentation
-
Moved various markdown files into the Sphinx documentation so that they are now included along with the Developer's Guide: (PR #4139)
INSTALL.md
is now Building and Installing.docs/dependencies.md
is now Dependencies.docs/cmake.md
is now Using OpenDDS in a CMake Project.docs/android.md
is now Android.docs/ios.md
is now iOS.
-
Restructured how the documentation is presented to cleanly separate the Developer's Guide and internal documentation. (PR #4139)
-
Added a proper main page. (PR #4139)
-
In addition to
NEWS.md
, started adding release notes to Release Notes. (PR #4125)
Notes
-
CMake Config Package
-
OPENDDS_TARGET_SOURCES
is now calledopendds_target_sources
. (PR #4140)- CMake macros and functions names are case insensitive, so this should have no effect on CMake code.
-