Skip to content

Releases: eProsima/DDS-Router

v3.0.0

16 Sep 14:59
Compare
Choose a tag to compare

eProsima DDS Router v3.0.0

This release includes the following Features:

  • Add support for Fast DDS v3.
  • Remove publish-type tag from Monitor configuration.
  • Remove DiscoveryServerConnectionAdress.

This release includes the following Bugfixes:

  • Reset cache changes before returning them to the pool.

This release includes the following Configuration features:

This release includes the following CI improvements:

  • Upgrade to Ubuntu Noble (24.04).
  • Remove Ubuntu Focal (20.04) from the CI.
  • Limit permissions and include missing certificates in security tests.
  • Add stress tests.
  • Reduce the list of flaky Docker tests.

This release includes the following Dependencies Update:

Repository Old Version New Version
Foonathan Memory Vendor eProsima/foonathan_memory_vendor v1.3.1 v1.3.1
Fast CDR eProsima/Fast-CDR v2.2.0 v2.2.4
Fast DDS eProsima/Fast-DDS v2.14.0 v3.0.1
Dev Utils eProsima/dev-utils v0.6.0 v1.0.0
DDS Pipe eProsima/DDS-Pipe v0.4.0 v1.0.0

v2.2.0

26 Mar 09:05
1317285
Compare
Choose a tag to compare

eProsima DDS Router v2.2.0

This release includes the following new features:

This release includes the following configuration features:

  • New logging configuration option to configure the DDS Router internal logs.

The next release will include the following Dependencies Update:

Repository Old Version New Version
Foonathan Memory Vendor eProsima/foonathan_memory_vendor v1.3.1 v1.3.1
Fast CDR eProsima/Fast-CDR v2.1.3 v2.2.0
Fast DDS eProsima/Fast-DDS v2.13.1 v2.14.0
Dev Utils eProsima/dev-utils v0.5.0 v0.6.0
DDS Pipe eProsima/DDS-Pipe v0.3.0 v0.4.0

v2.1.0

26 Jan 09:43
Compare
Choose a tag to compare

eProsima DDS Router v2.1.0

The next release will include the following Features:

The next release will include the following Bugfixes:

  • Save the instance handle data for keyed topics.

The next release will include the following Dependencies Update:

Repository Old Version New Version
Foonathan Memory Vendor eProsima/foonathan_memory_vendor v1.3.1 v1.3.1
Fast CDR eProsima/Fast-CDR v1.1.0 v2.1.3
Fast DDS eProsima/Fast-DDS v2.11.0 v2.13.1
Dev Utils eProsima/dev-utils v0.4.0 v0.5.0
DDS Pipe eProsima/DDS-Pipe v0.2.0 v0.3.0

v2.0.0

06 Jul 15:26
Compare
Choose a tag to compare

This release adds new Requirements:

This release has the following Features:

This release includes the following Internal Implementation Features:

  • Support Interface Whitelisting.
  • Support Custom Transport Descriptors (UDP or Shared Memory only) for Simple Participants.
  • Support Ignore Participant Flags for Simple Participants.
  • Add tests for Dynamic Types to ROS 2.
  • New CommonParticipant class for a Fast DDS Participant wrapper.
  • New XmlParticipant class for a Fast DDS Participant in which the participant is created following a profile name loaded by XML configuration.
  • New CommonReader class for a Fast DDS Data Reader wrapper.
  • New SimpleReader class for a Fast DDS Data Reader that implements abstract CommonReader.
  • New SpecificQoSReader class for a Fast DDS Data Reader with specific QoS policies.
  • New CommonWriter class for a Fast DDS Data Writer wrapper.
  • New SimpleWriter class for a Fast DDS Data Writer that implements abstract CommonWriter.
  • New QoSSpecificWriter class for a Fast DDS Data Writer with specific QoS policies.
  • New MultiWriter class for a Fast DDS Data Writer collection that contains multiple QoSSpecificWriter.

This release includes the following Bugfixes:

  • Add TSAN fixes.
  • Include missing DLLs.
  • Resolve Windows warnings.
  • Restore default DomainParticipantQoS after creating and enabling DynTypesParticipant.

This release includes the following Dependencies Update:

Repository Old Version New Version
Foonathan Memory Vendor eProsima/foonathan_memory_vendor v1.3.0 v1.3.1
Fast CDR eProsima/Fast-CDR v1.0.27 v1.1.0
Fast DDS eProsima/Fast-DDS v2.10.1 v2.11.0
Dev Utils eProsima/dev-utils v0.1.0 v0.4.0
DDS Pipe eProsima/DDS-Pipe v0.1.0 v0.2.0

v1.2.0

11 Apr 06:27
Compare
Choose a tag to compare

This release includes the following CI improvements:

  • Add blackbox tests for repeater in WAN case.
  • Upgrade deprecated actions.

This release includes the following new internal changes:

v1.1.0

14 Dec 16:22
Compare
Choose a tag to compare

This release includes the following features:

This release includes the following CI improvements:

  • Add Address Sanitizer check to all tests.
  • Add Thread Sanitizer check to all tests.
  • Compile with -Wall flag all CI jobs.

v1.0.0

04 Oct 15:05
Compare
Choose a tag to compare

This is the first stable release of eProsima DDS Router.

This release includes the following major features:

  • New QoS Transparency Module.

This release includes the following features:

  • New Repeater behaviour, a new configuration to create TURN servers.
  • Add RPC support (compatibility with ROS 2 services).
  • Timeout argument --timeout to close the application after the time set has passed. Check section Timeout Argument for more information.
  • Add TLS-SNI support.
  • Add external port support so internal and external port in network router configuration could be different.

This release includes the following DDS features:

  • New Initial Peers Participant that allows to create a fast WAN communication avoiding the Discovery Server configuration.
  • Participants names are set from ParticipantIds.

This release includes the following configuration changes:

  • New Configuration Version v3.0 that allow Repeater and initial peers configuration.
  • Yaml Validator only validates v3.0 configurations.
  • Address supports an external-port value to set this in a listening address.

This release includes the following major changes:

  • wan Participant Kind uses now Initial Peers Discovery Protocol, while Discovery Server requires a new Participant Kind wan-discovery-server.
  • Internal packages for utils as ddsrouter_cmake and ddsrouter_utils have been moved to an external repository.

This release includes the following performance improvements:

  • No locking in the Track hot-path.

v0.4.0

06 Jul 05:59
Compare
Choose a tag to compare

This release includes the following features:

  • New yaml_validator, a simple tool to assert the correctness of DDS Router configuration files.
  • New user_manual_user_interface_version_argument to show the current version of DDS Router.

This release includes the following improvementes:

  • New FastPayloalPool class that will allow unblocking access to shared payloads stored by FastDDS and
    DDS Router.
    This slightly improves the performance of the router.

  • New ThreadPool class for handling parallel processing.
    Limit the number of threads spawned by the DDS Router, improving the performance of the application.
    The user can set-up this parameter on the YAML configuration thread_configuration.

This release includes the following major changes:

  • New auxiliary package ddsrouter_cmake to implement general CMake functions and tools.
  • The internal package ddsrouter_event is joint within the internal package ddsrouter_utils.

This release includes the following minor changes:

  • Refactor all enum to enum class.

This release includes the following Continuous-Integration features:

  • New CI workflow to build dependencies nightly.
    This allows to run the CI faster, as the build is only done for the ddsrouter packages and not the whole fastdds.
  • Add ubuntu 22.04 to platforms in CI.
  • Add windows 19 to platforms in CI.

This release fixes the following minor bugs:

  • Fix race condition occurred when handling signals (due to concurrent access to SignalManager singleton).
  • Bug in TLS Configuration initialization when setting server configuration files.
  • Set FastDDS DomainParticipants and Readers listeners after creation to avoid race conditions in entities creation.

v0.3.0

17 Mar 09:06
Compare
Choose a tag to compare

This release includes the following major changes:

  • New DDS Router library that provides the DDS Router features through a C++ API.

  • Division of DDS Router application into several packages.

    • ddsrouter_event: C++ library which implements System Operating (SO)-dependent signal handlers.
    • ddsrouter_utils: C++ library which implements various utility functions.
    • ddsrouter_core: C++ library which implements the DDS Router operation and exports the DDS Router C++ API.
    • ddsrouter_yaml: C++ library to parse the DDS Router yaml configuration files.
    • ddsrouter_tool: DDS Router end-user application.
  • New dynamic topic discovery feature to automatically discover DDS Topics in a DDS network.

  • Allow using wildcard characters to define topics in allowlist and blocklist.

  • Build internal topic tracks via the builtin-topics configuration.

This release includes the following Routing features:

  • Apply DDS Topic filtering rules using the allowlist and blocklist lists.

This release includes the following User Interface features:

  • Upgrade the yaml configuration file to version 2.0 which breaks compatibility with version 1.0.
  • Support for both version 1.0 and version 2.0 of the yaml configuration file, maintaining version 1.0 by default.
  • Improve reporting of errors resulting from parsing a malformed yaml configuration file.

This release includes the following Continuous-Integration features:

  • Add tests for the yaml parsing library (ddsrouter_yaml).
  • Specific testing GitHub actions for each DDS Router package for both Windows and Linux platforms.

This release fixes the following major bugs:

  • Fix deadlock between Track and Fast DDS Reader mutex.
  • Support any size for in and out messages.

This release fixes the following minor bugs:

  • Fix parsing of reload-time executable argument.
  • Handle signals in dedicated threads to prevent hangs when terminating execution.
  • Fix rare deadlock in EventHandler when destroying and callback called.

This release includes the following Documentation features:

  • DDS Router execution from a provided Docker image.
  • Update all examples of yaml configuration files to be consistent with the new yaml configuration version.
  • High-level repository structure description and developer contribution guidelines.
  • Improved and extended topic filtering section according to the new dynamic topic discovery functionality.

v0.2.0

11 Feb 11:53
Compare
Choose a tag to compare

This release includes the following Configuration features:

  • Support TLS over TCP configuration and communication.
  • Support IPv6 communication via UDP, TCP and TLS over TCP.
  • Support DNS by given Domain Name in configuration instead of an IP address.
  • Support keyed topics.

This release includes the following Routing features:

  • Zero-Copy data transmission between internal Participants.

This release includes the following User Interface features:

  • Shutdown the DDS Router application gracefully sending SIGTERM (kill) or SIGINT (^C) signals.

This release includes the following Continuous-Integration features:

  • Add communication tests for UDP, TCP and TLS over TCP WAN cases.
  • Extend tool test with more complex configurations.
  • Remove Flaky tests from CI required passing tests.
  • Implement a new class to check that no warning or error logs are produced during test executions.
  • Add gMock to test libraries.

This release fixes the following major bugs:

  • Fix GUID creation when explicit guid is provided.
  • Show error when participant ids are duplicated.

This release fixes the following minor bugs:

  • Change YAML example configurations to YAML format (instead of JSON) fixing
    an issue when blank lines were missing at the end of the file.
  • Normalize the error and process exit when failure.
  • Fix documentation typos.