Supported versions

Version 3.6

Version 3.6.1 (latest)

This release includes the following fixes:

  1. Apply sqlite3 patch to eliminate const issue

  2. Remove deprecated doxygen warnings

  3. Fix compilation warnings and errors in Ubuntu Focal

Version 3.6.0

This release includes the following security fixes:

  1. CVE-2026-22591

This release includes the following improvements:

  1. Update RELEASE_SUPPORT.md with 2.14.6

  2. Add should_endpoints_match callback in DomainParticipant and RTPSParticipant

  3. Add context to type support operations

This release includes the following fixes:

  1. Change default python branch from main to master

  2. Fix ABI break in register_service_type

  3. Fix TinyXML2 library resolution in tests

Version 3.5

Version 3.5.0

This release includes the following improvements:

  1. Update Qt version to 6.8.3 in CI

  2. Verify Safe DDS signature

  3. Open RTPSParticipantImpl for extension

  4. Use new sample rejection value

  5. Make DomainParticipant::get_instance_handle return by value

  6. Discovery Server clients always behave as super clients

  7. Enhance filtering logic for virtual and external endpoints

  8. Refactor Secure Discovery Server

  9. Update foonathan.net links

  10. Apply uncrustify to all source files

  11. Remove unused keep_alive logic

  12. RPC refactor

  13. Bump version to 3.5.0

  14. Extend DomainParticipant API to include return codes

  15. Regenerate types with Fast DDS Gen 4.3.0

  16. Update CMake minimum required and Tier1

This release includes the following fixes:

  1. Fix compilation on PDPTests

  2. Force history QoS consistency and change resource limits default values

  3. Fix wrong update of default locators

  4. Fix ABI compliance

This release includes the following CI improvements:

  1. Branchout 3.5.x

  2. Updates after v3.3.1 EOL

  3. Run xtypes test cases in parallel

Version 3.4

Version 3.4.2

This patch release includes the following security fixes:

  1. CVE-2025-65016

  2. CVE-2026-22590

This patch release includes the following improvements:

  1. Improve some tests

  2. Replace logWarning with EPROSIMA_LOG_WARNING in RTCPHeader.h

  3. Improvements in message receiver

  4. Improvements on compute_key generated code

  5. Add new StatefulWriterListener

  6. Remove out the responsibility for bandwidth limitation from RTPSMessageGroup

  7. Update RELEASE_SUPPORT.md after 2.6.11 release

  8. Updates on 3.4.x after branchout of 3.5.x

  9. Verify Safe DDS signature

  10. Improve Open SSL includes

  11. Allow empty payloads in dispose/unregister operations

  12. Reset irrelevant sequence numbers interval in proxy readers

  13. Update fastcdr to 2.3.5

  14. Bump version to 3.4.2

This patch release includes the following fixes:

  1. Fix compilation errors against android-clang

  2. Fix GAP messages are not sent when there is no Reader requesting the DATA

  3. Fix handling of InstanceHandle use cases

  4. Fix usage of invalid iterator in DynamicDataImpl::deserialize()

  5. Fix build in GCC 15

  6. Account for notification sample in DataReaderHistory::get_first_untaken_info

  7. Fix DataReader history enforcement to respect max_samples_per_instance

This patch release includes the following CI improvements:

  1. Single line for ctest_args in Mac CI

  2. Free disk space in Ubuntu runners

  3. Upgrade Linters CI runner image to ubuntu-24.04

Version 3.4.1

This patch release includes the following security fixes:

This patch release includes the following improvements:

  • Send heartbeat when RTPSWriter::wait_for_all_acked is called

  • Update fastcdr submodule

  • Update RELEASE_SUPPORT with release 3.2.3

  • Apply Uncrustify

This patch release includes the following fixes:

  • Remove residual generated files

  • Guard gnu::optimize with defined(__GNUC__)

  • Making system libraries private in target_link_libraries

  • Remove manually change of /Zi MSVC option

  • Avoid PROJECT_SOURCE_DIR and make_unique when building blackbox tests

  • Avoid casting GUID_t into InstanceHandle_t

  • Fixed some data races

It also includes the following CI management improvements:

  • Allow CI to run tests with manual dispatch

  • Reduce disk usage in TSAN job

  • Upgrade to MacOS Sequoia

Important

When upgrading to version 3.4.1 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.2.0. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.2.x.

Version 3.4.0

This minor release includes the following features:

  • Fast DDS Pro features:
  • Pass value of TransportPriorityQosPolicy to transport layer

  • Add field original_writer_info to WriteParams and SampleInfo

  • Support annotated types and builtin annotations in IDL Parser

  • Iterate over declared types processed with IDL Parser

  • Support aliases in Content Filtered Topic

This minor release includes the following improvements:

  • Linux binaries installation with .deb packages

  • Update to Fast DDS Gen 4.2.0

  • Return sample notifying changes on instance state

  • Performance improvements with large history caches

  • Fix doxygen documentation typos

  • Change eprosima::fastdds::rtps::octet to be uint8_t according to C++11 standard

  • Add tcp_negotiation_timeout to XML Schema

  • Some improvements on python generated code

This minor release includes the following fixes:

  • Fix memory consumption issues in PKIDH plugin

  • Fix tests build with strict C++11

  • Fix socket buffer size handling

  • Avoid setting thread affinity of 0 in Mac

  • Some RPC related fixes

  • Fix latency & throughput tests names

  • Allow empty partition list to match against "*"

  • Fix duplicated transport when using specific XML with CLI

  • Fix topic argument in Discovery Server example

  • Fix type code generation for IDL files with no structs

  • Some TCP transport fixes

  • Remote writers considered volatile by default

This minor release includes the following CI management updates:

  • Add --quiet to git submodule invocations in CI

  • Split Mac CI build and testing phases

  • Update fallback branches to use environment variables

Important

When upgrading to version 3.4.0 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.2.0. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.2.x.

Version 3.2

Version 3.2.3

This release includes the following features:

  1. Send only non-default QoS & Use serialize_optional_qos for optional QoS in EDP messages

  2. Add WireProtocolConfigQos to optionals serialization and make Monitor Service always serialize optionals

  3. RPC over DDS example

  4. Bump to asio 1.34.2

  5. Support aliases in Content Filtered Topic

  6. Add methods for TypeObject registration of RPC types

This release includes the following improvements:

  1. Add regression test checking type_information is always copied in ProxyDatas copies

  2. Address some compilation warnings with latest GCC

  3. Improvements on RPC entities

  4. Add references to documentation

  5. Update ROSin image links in Readme

  6. Avoid calling setIPv4 in TCPTransportInterface

  7. Send heartbeat when RTPSWriter::wait_for_all_acked is called

  8. Use binary search in find_change_nts

  9. Improve latency tests

  10. Apply uncrustify to all files

This release includes the following fixes:

  1. Update reception timestamp when it is added to the instance

  2. Allow creation of built-in content filters with different type name

  3. Set different content filter signatures for each requester

  4. Allow ResourceLimitsQos serialization method compatibility

  5. Solve Discovery Server race conditions

  6. Properly delete secure endpoints if registration fails

  7. Add condition for string_builder nullptr on XMLDynamicParser.cpp in case bound is 0

  8. Create RPC example participants with default profile

  9. Avoid Data Race in Reader Locator

  10. Add multicast locator to correct locator list in ReaderProxydata

  11. Fix ParticipantGenericMessage serialization

  12. Fix build on QNX

  13. Fix DS initialization on “any” if no interfaces are available

  14. Avoid sending duplicated ACKs in DataSharing

  15. Allow empty partition list to match against "*"

  16. Release change while authentication fails

  17. Change non_blocking_send threshold to sendBufferSize

  18. Remote writers considered volatile by default

  19. Solve TCP disconnect while incomplete read deadlock

  20. Handle maximum deadline misses case

  21. Fix duplicated transport when using specific XML with CLI

  22. Add localhost capability only to UDP & TCP transports

  23. Fix doxygen documentation for iHandle2GUID

  24. Avoid setting thread affinity of 0 in mac

  25. Add missing field to xsd

  26. Fix topic argument in Discovery Server example

  27. Add missing IDL to code generator script

  28. Do not export discovery server as cmake target

This release includes the following CI and release management updates:

  1. Move SimpleCommunication and system tests in Windows nightly

  2. Add compilation with latest GCC to fastdds_alternative_builds Ubuntu CI

  3. Remove 2.10.x from PR template

  4. Remove 3.1.x from PR template and nightly for 3.1.x and 2.10.x

  5. Move 2.10.x to EOL versions

  6. Update 3.2.x to be a supported branch

  7. Split windows workflow

  8. Correct Python fallback branch

  9. Add uncrustify to Github CI

  10. Install Fix OpenSSL version in windows example testing

  11. Add VS143 toolset to Windows CI

  12. Add --quiet to git submodule invocations

  13. Fix doxygen to avoid errors in python bindings docstrings

  14. Update fallback branches to use environment variables

  15. Update fastcdr submodule to v2.3.3

  16. Split Mac CI build and testing phases

  17. Remove RPC example

  18. Regenerate types with Fast DDS Gen 4.0.5

  19. Use appropriate Discovery-Server repository branch

Important

When upgrading to version 3.2.3 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.0.5. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.0.x.

Version 3.2.2

This release includes the following fixes:

  1. Fix related_sample_identity handling in RPC for ROS 2 request messages

  2. Fix compilation in Windows using MinGW compiler

  3. Fix a crash error in XMLDynamicParser.cpp due to wstring_builder being created as nullptr

This release includes the following improvements:

  1. Add support for sequence types in IDLParser

  2. Improve efficiency of Discovery Server routines

  3. Always copy type_information in ReaderProxyData and WriterProxyData copy constructors

  4. Add Fast DDS v2.6.10 to supported releases

This release includes the following ci management updates:

  1. Force using asio from thirdparty in MacOS CI

  2. Update 2.6.x weekly Ubuntu image to Ubuntu 22.04

Important

When upgrading to version 3.2.2 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.0.4. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.0.x.

Version 3.2.1

This patch release includes the following fixes:

  1. Reduce trace category when failing to unregister type

  2. Avoid sending statistics message with big messages and no fragmentation

This release includes the following improvements:

  1. Setup ROS 2 Easy Mode at participant creation

  2. Update CLI commands for Easy Mode

  3. Get correct Fast CDR related branch in CI

  4. Update excluded IDL files from Gen CI

This release includes the following test fixes:

  1. Fix MacOS nightly flaky tests

  2. IDL parsing tests included paths

  3. Fix Windows example tests in Debug and mitigate rtps example flakiness

Important

When upgrading to version 3.2.1 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.0.4. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.0.x.

Version 3.2.0

This minor release includes the following features:

  1. Implementation of get_matched_publication/subscription() DataReader/Writer API

  2. Extended incompatible QoS for monitor service

  3. Transform locators using new machine_id PID

  4. New property to select preferred key agreement algorithm.

  5. Parse IDL file on DynamicTypeBuilderFactory::create_type_w_uri

  6. Fast DDS ROS2 Easy Mode

  7. Add RPC related interfaces

  8. Extend QoS in discovery data

This release includes the following improvements:

Transport:

  1. Check if SHM transport is disabled in LARGE_DATA modes

  2. Allow domain names (DNS) when parsing TCP locators XML elements

  3. Improve Blackbox TCP tests suite

  4. Decouple transport receivers creation using unique network flows

  5. Improve max_allocations calculation on SHM transport

  6. Improve SHM configuration on large data transports

Discovery:

  1. Improve PDPClients initialization

  2. Make the machine id the physical_data host info

  3. Filter interested readers on PDP writer

  4. Make *ProxyData inherit from *BuiltinTopicData and refactor it

  5. Flow controller configuration for built-in endpoints

Security:

  1. Improve OpenSSL lifecycle handling

  2. Use correct algorithm strings on PermissionsToken and IdentityToken

  3. Log any errors before cancel_init()

  4. Add test for security initialization error

Tests:

  1. Add test for a union using an alias with scope

  2. Tests for regression test: fix sequence of alias of primitives inside modules

Tools and examples:

  1. Add -v or --version to CLI command tool

  2. Enable Datasharing segments clean from CLI

  3. Update examples CMakeList to force default CMAKE_BUILD_TYPE

  4. Update Benchmark example

  5. Remove SHM option from discovery server example

Documentation:

  1. Roadmap update

  2. Update latest notes from 2.10.x to 2.10.6

  3. Update RELEASE_SUPPORT after v2.14.4 release

  4. Set 3.0.x as EOL

  5. Update RELEASE_SUPPORT after 3.0.2 release

  6. Correct examples on README

  7. Warn about XTypes in Fast DDS v3

Other:

  1. Rename RTPSParticipantImpl.h to RTPSParticipantImpl.hpp

  2. Update sqlite from 3.36.0 to 3.47.2

  3. Add modules support to idl_serialize

Release management:

  1. Add replace tag to package.xml

  2. Prepare for Release v3.2.0

Github CI management:

  1. Add Debug CI to master nightly job

  2. Run examples in Windows CI

  3. Update submodules when cloning Fast DDS on CI

  4. Split Windows nightly tests using name filter regex

  5. Add missing psutil python module in sanitizers CI

This release includes the following fixes:

  1. Fix CVE-2025-24807

  2. Remove unused code

  3. Fix destruction data-race on participant removal in intra-process

  4. SecurityManager fixes

  5. Address XMLDynamicParser regression

  6. Fix assertion deleting a DataWriter configured with persistent and flow controller

  7. Fix comparison in is_update_allowed()

  8. Fix build with -Werror=template-id-cdtor

  9. Fix commercial support link

  10. Fix cmake generator evaluation

  11. Fix reach of maximum buffers in asio::send_to

  12. Fix unique network flows with TCP transports

  13. Fix tsan potential deadlock between StatefulWriter and FlowController

  14. Fix Discovery CLI Tool in Windows

  15. Arithmetic overflow in fragment size calculations

  16. Fix double-locking issue in DataSharingListener

  17. Fix EDP reliability timings

  18. Handle socket buffer size setting when system's maximum exceeded

  19. Fix log category name macro collision in MacOS

  20. Reliable volatile change dropped when all history acked

  21. Increase max_blocking_time for services in Easy Mode

  22. Unacknowledged sample removed in KEEP_ALL mode

  23. Fix System Log error infinite loop when setting thread affinity

  24. Support compiler MSYS2-MinGW

  25. Fix python warning in shm CLI tool

  26. Fix error handling logic in try_setting_buffer_size

  27. Remove repeated header include and fix log

  28. Flush logs in CliDiscoveryManager destructor

  29. Fix cleanup race condition with exclusive and shared lock files

  30. Fix assertion on OutputTrafficManager

  31. Fix several_writers_on_unack_sample_removed flaky test

Important

When upgrading to version 3.2.0 it is highly recommended to regenerate generated source from IDL files using at least Fast DDS-Gen v4.0.4. But it is advisable to regenerate them using the latest patch version of Fast DDS-Gen v4.0.x.

Version 2.14

Version 2.14.6

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, the major release Fast DDS v3 is already out! Check out all the new features and improvements in <https://fast-dds.docs.eprosima.com/en/latest/>

This patch release includes the following security fixes:

This patch release includes the following improvements:

  • Allow to send empty payloads in dispose/unregister ops

  • Reset irrelevant sequence numbers interval in proxy readers

  • Improve Open SSL includes

  • Verify Safe DDS signature

  • Replace logWarning with EPROSIMA_LOG_WARNING

  • Replace logWarning with EPROSIMA_LOG_WARNING

  • Improvements in message receiver

  • Improve some tests

  • Protect PDPStatelessWriter attributes

  • Avoid casting GUID_t into InstanceHandle_t

  • Avoid casting GUID_t into InstanceHandle_t

  • Protect DataReaderInstance alive_writers attribute

  • Fix wrong namespace when indicating CDR version

  • Allow empty partition list to match against “*”

  • Apply Uncrustify to 2.14.x

  • Avoid sending duplicated ACKs in DataSharing

  • Send heartbeat when wait_for_all_acked is called

  • Send heartbeat when wait_for_all_acked is called

  • Solve TCP disconnect while incomplete read deadlock

  • Remote writers considered volatile by default

  • Change non_blocking_send threshold to sendBufferSize

  • Regenerated types using fastddsgen 3.3.1

  • Use binary search in find_change_nts

  • Support aliases in Content Filtered Topic

  • Update fallback branches to use environment variables

  • Add missing field to xsd

  • Avoid setting thread affinity of 0 in mac

  • Revert “Return sample notifying changes on instance state”

  • Regenerate types with Fast DDS Gen 3.3.2

  • Update fastcdr submodule to point to v2.2.7

This patch release includes the following fixes:

  • Release change while authentication fails

  • Fix DataReader history enforcement to respect max_samples_per_instance

  • Fix wrong update of default locators

  • Fix build in GCC 15

  • Fix GAP messages are not sent when there is no Reader requesting the DATA

This patch release includes the following CI improvements:

  • Upgrade Linters CI runner image to ubuntu-24.04

  • Free disk space in Ubuntu runners

  • Single line for ctest_args in Mac CI

  • Upgrade to macOS Sequoia

  • Reduce disk usage in TSAN job

  • Allow CI to run tests with manual dispatch

  • Split Mac CI build and testing phases

Note

When upgrading to version 2.14.6 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.2.

Version 2.14.5

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, the major release Fast DDS v3 is already out! Check out all the new features and improvements in <https://fast-dds.docs.eprosima.com/en/latest/>

This patch release includes the following features:

  1. New property to select preferred key agreement algorithm.

This patch release includes the following security fixes:

  1. CVE-2025-24807

This patch release includes the following improvements:

  1. Decouple transport receivers creation using unique network flows

  2. Improve max_allocations calculation on SHM transport

  3. Improve PDPClients initialization

  4. Filter interested readers on PDP writer

  5. Refactor builtin writers and readers creation

  6. Update reception timestamp when it is added to the instance

  7. Unacknowledged sample removed in KEEP_ALL mode

  8. Add localhost capability only to UDP and TCP transports

  9. Avoid data race in ReaderLocator

  10. Improve DS routines

  11. Handle socket buffer size setting when system’s maximum exceeded

  12. Improve Blackbox TCP tests suite

  13. Avoid calling setIPv4 in TCPTransportInterface

  14. Avoid sending statistics message with big messages and no fragmentation

  15. Fix for Configurability example

  16. Increase the announcement period in liveliness test

  17. Allow creation of built-in content filters with different type name

  18. Return sample notifying changes on instance state

  19. Update sqlite from 3.36.0 to 3.47.2

  20. Log any errors before cancel_init()

  21. Add --quiet to git submodule invocations

  22. Bump to asio 1.34.2

  23. Allow DNS when parsing TCP locators XML elements

This patch release includes the following fixes:

  1. Add pointer sanity check before accessing ParticipantProxyData

  2. Fix CMake generator evaluation

  3. Fix unique network flows with TCP transports

  4. Fix TCP discovery server locators translation

  5. Arithmetic overflow in fragment size calculations

  6. Fix double-locking issue in DataSharingListener

  7. Fix comparison in is_update_allowed

  8. Use correct algorithm strings on PermissionsToken and IdentityToken

  9. Fix tsan potential deadlock between StatefulWriter and FlowController

  10. Reliable volatile change dropped when all history is acked

  11. Fix log category name macro collision in MacOS

  12. Fix null-dereference in parseXMLMemberDynamicType

  13. Fix infinite loop when setting thread affinity

  14. Fix build with -Werror=template-id-cdtor

  15. Fix error handling logic in try_setting_buffer_size

  16. Remove repeated header include and Fix log

  17. Fix several_writers_on_unack_sample_removed flaky test

  18. Fix cleanup race condition with exclusive and shared lock files

  19. Address some compilation warnings with GCC latest

  20. Fix ParticipantGenericMessage serialization

  21. Fix build on QNX

  22. Fix assertion on OutputTrafficManager

  23. Fix Data 100kb CDR version

  24. Fix socket buffer size handling

  25. Fix`` DS`` initialization on any if no interfaces are available

  26. Fix EDP reliability timings

  27. Fix compatibility with Fast CDR v1

  28. Regression test for fuzz XMLParser null-dereference

This patch release includes the following CI improvements:

  1. Update submodules when cloning Fast DDS on CI

  2. Force Asio_Thirdparty in MacOS CI

  3. Add uncrustify to Github CI

  4. Get correct Fast CDR related branch

  5. Support compiler MSYS2-MinGW

  6. Use windows-2022 in CI

Note

When upgrading to version 2.14.5 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.1.

Version 2.14.4

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, the major release Fast DDS v3 is already out! Check out all the new features and improvements in <https://fast-dds.docs.eprosima.com/en/latest/>

# Fast DDS v2.14.4

This release includes the following features in an ABI compatible manner:

  1. Add unsigned specification to literals.

  2. Allow running CI on external contributions.

  3. Add references to new nightly jobs per supported branch in README.

This release includes the following improvements:

  1. Add Ubuntu weekly CI.

  2. Fix Windows CI and add vanilla build step in Ubuntu CI.

  3. Use eProsima-CI action to install Qt.

  4. Modify help command of XML CLI tool.

  5. Update commercial support section in README.

This release includes the following fixes:

  1. Mitigate LogTests.flush_n flakiness.

  2. Mitigate buffer recover test flakiness on mac.

  3. Fix Python version in sanitizers CI.

  4. Fix OSS fuzz build.

  5. Fix warning in OSS fuzz build.

  6. Change monitor service writer entity ID.

  7. Solve SecurityManager memory issue.

  8. Fix issue with exclusive ownership and unordered samples.

  9. Fix data race in TypeObjectFactory::get_instance.

  10. Fix: Secure simple participants with initial peers over TCP match.

  11. Remove double // in some installation paths.

  12. Discard changes with big key-only payload and no key hash.

  13. Fix DataReaderHistory regression.

  14. Fix Secure Discovery Server client disposals GUID and handshake_handle assertion.

  15. Fix issues in Dynamic Network Interfaces.

  16. Check if SHM transport is disabled in LARGE_DATA modes.

  17. Release participant_stateless secure builtin writer history change when authentication has finished.

  18. Improve OpenSSL lifecycle handling.

  19. Fix destruction data race on participant removal in intra-process.

  20. Be less strict with parameter lengths.

Note

When upgrading to version 2.14.4 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.1.

Version 2.14.3

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, take a look at Fast DDS v3!

This release includes the following features in an ABI compatible manner:

  1. Setting vendor_id on received CacheChange_t

This release includes the following improvements:

  1. Repository & CI improvements.

  2. Create InitialConnection for TCP Transport initial peers

This release includes the following fixes:

  1. Fix topic interference on liveliness_changed status

  2. Remove doxygen warnings

  3. Adjust doxygen so Fast DDS Python pydoc makes RTD build

  4. Fix compilation in Ubuntu 24.04 platforms

  5. Fix Latency test destruction

Note

When upgrading to version 2.14.3 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.0.

Version 2.14.2

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, take a look at Fast DDS v3!

This release includes the following features in an ABI compatible manner:

  1. Set DataSharing Qos policy in transmitted WriterProxyData and ReaderProxyData.

  2. New max_message_size property to limit the output datagrams size.

  3. Add XML configuration for Flow Controllers.

This release includes the following improvements:

  1. Repository & CI improvements.

  2. Do not require PYTHON_VERSION to be defined. in .bat files.

  3. Use %* instead of loop in .bat scripts.

  4. Use absolute paths when loading XML files.

  5. Bump Fast CDR submodule to version 2.2.2.

This release includes the following fixes:

  1. Handle errors when setting socket buffer sizes.

  2. Do not require Fast CDR v2 in examples.

  3. Fix Shared Memory Transport buffer recovery MacOS flaky test.

  4. Automatically unmatch remote participants on participant deletion.

  5. Bugfix: correct liveliness state in a multiple reader - one writer scenario.

  6. Only apply content filter to ALIVE changes.

  7. Properly delete builtin statistics writers upon delete_contained_entities().

  8. Fix doxygen warning about undocumented @param in deleted functions.

  9. Correctly initialize MatchingFailureMask constants to be used with the std::bitset API.

  10. Fix Discovery Server not connecting due to ports logic.

Note

When upgrading to version 2.14.2 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.0.

Version 2.14.1

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, take a look at Fast DDS v3!

This release includes the following features in an ABI compatible manner:

  1. Implement copy_from_topic_qos method (see Creating a DataWriter and see Creating a DataReader).

This release includes the following improvements:

  1. Set 2.12.x as EOL

  2. Use a plain switch for NetmaskFilterKind operator<<

  3. Set real TCP non_blocking_send limitation

  4. Increase ack waiting time in reliable_on_unack_sample_removed

  5. Enforce SHM ports open mode exclusions

  6. Force unlimited ResourceLimits if lower or equal to zero (see ResourceLimitsQosPolicy)

  7. Allow processing of AckNack submessages with count == 0

  8. Refactor IStatusQueryable and make monitor service interfaces private

  9. Internal refactor on port handling

  10. Improve ThreadSettingsQoS logging

  11. Run is_plain method with the corresponding data representation

  12. Address compilation issue for GLIBC version

  13. Repository and test improvements:

    1. Run Github Ubuntu CI on PRs

    2. Only run PRs CI when a review is requested

    3. Improve filtering of DNS tests

    4. Make sample_lost_be_dw_be_dr_fragments test less flaky

    5. Build Fast DDS Python bindings in Fast DDS Docs Github CI job

    6. Add check for XML API to PR template

    7. Refactor Github CI sanitizer related jobs

    8. Increase sleep to miss the deadline in macOS flaky tests

    9. Fix nightly sanitizer CI workflow name

    10. Improve xml loading method in fuzz_XMLProfiles

    11. Build ShapesDemo on Ubuntu Github CI

    12. Correctly set branches for reusable-sanitizers-ci

This release includes the following fixes:

  1. Address XMLProfiles fuzzer regressions

  2. Fix flaky Log tests

  3. Fix hidden overloaded virtual methods

  4. Effectively assert automatic/manual_by_participant liveliness

  5. Fix on_sample_lost notification on best-effort readers for fragmented samples

  6. Monitor service properly managing instances

  7. Fix CVE-2024-30258

  8. Fix Discovery Server over TCP using LocatorSelectorEntry

  9. Removed warning

  10. Make get_first_untaken_info() coherent with read()/take()

  11. Fix serialization of Data(w)/Data(r) in MonitorService

  12. Bugfix in DDSBlackboxTestsDataReader test

  13. Fix leak in SecurityManager::participant_volatile_message_secure_writer_

  14. Fix some leaks in XML DynamicTypes Parser

  15. Fix support for @key annotation in Dynamic types

  16. Fix SecurityTest unit tests memory error

  17. Fix Python Installation version in Github CI. Address failing system tests environment issues

Note

When upgrading to version 2.14.0 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.0.

Version 2.14.0

Important

Fast DDS v2.14 is the last minor version of Fast DDS v2, take a look at Fast DDS v3!

This release includes the following new features:

  1. Add netmask filter transport configuration

  2. Add interface allowlist and blocklist

  3. Expose Security Authentication plugin Handshake Properties

  4. Extend LARGE_DATA configuration options

  5. Allow single listening port on TCP

  6. OpenOutputChannels / CloseOutputChannels that receive a LocatorSelectorEntry

  7. Support GTest v1.14.0

  8. Update Fast CDR submodule to v2.2.0

  9. Update roadmap and release support

This release includes the following improvements:

  1. Ignore custom PIDs defined in Fast DDS when they are received from other vendors

  2. Add catch of out-of-range exception for thread settings port

  3. Explicitly pass vendor ID to readFromCdrMessage

  4. TCP transport improvements:

    1. TCPSendResources cleanup

    2. TCP non_blocking_send moved to TCPTransportDescriptor

  5. Various repository improvements and housekeeping:

    1. Migrate communication tests to the DDS API

    2. Migrate TCPReqRepHelloWorldReplier/Requester to the DDS API

    3. Update APIs in video performance tests to the DDS API

    4. Remove FASTDDS_TODO_BEFORE 2.14

    5. Remove use of deprecated FindPythonInterp

    6. Remove idl parser from .repos file

    7. Force usage of semicolon in FASTDDS_TODO_BEFORE macro

    8. Ubuntu example testing automation infrastructure

  6. Multiple Github CI improvements:

    1. Add nightly Ubuntu Github CI

    2. Improve CI version management

    3. Avoid running GitHub CI if PR has conflicts

    4. Migrate apt package installation to eProsima-CI action

    5. Include missing nightly for 3.0.x branch

    6. Adapt nightly jobs for all supported versions

    7. Pin CMake version and vm.mmap_rnd_bits in sanitizer workflows

    8. Select reusable workflow version depending on target branch in nightly jobs

This release includes the following fixes:

  1. Fix warnings when compiling for Windows x86

  2. TCP first message loss (see TCPTransportDescriptor)

  3. Fix warnings on tests on Windows 32bits

  4. Protect asio exception hotfix

  5. Fix CVE-2024-28231

  6. Github CI fixes:

    1. Fix CI documentation workflow label triggering

    2. Fix nightly jobs

    3. Fix input branch on reusable windows CI

    4. Use correct version of GTest on DS ASan tests

Note

When upgrading to version 2.14.0 it is advisable to regenerate generated source from IDL files using Fast DDS-Gen v3.3.0.

Version 2.6 (maintenance)

Version 2.6.11 (maintenance)

Important

According to our release support guidelines the v2.6 minor will only receive patches for critical issues and security fixes.

This release includes the following critical fixes:

  1. Fix CVE-2025-62599

  2. Fix CVE-2025-62600

  3. Fix CVE-2025-62601

  4. Fix CVE-2025-62602

  5. Fix CVE-2025-62603

  6. Fix CVE-2025-64098

  7. Fix CVE-2025-62799

  8. Fix CVE-2025-64438

  9. Fix CVE-2025-65016

This release includes the following improvements:

  1. Verify Safe DDS signature

  2. Improvements in message receiver

  3. Regenerate types with Fast DDS Gen 2.1.4

  4. Upgrade to Fast CDR v1.0.29

This release includes the following ci management updates:

  1. Add uncrustify to Github CI

  2. Remove deprecated windows 2019 from CI in favor of 2022

  3. Upgrade to macOS Sequoia

Version 2.6.10 (maintenance)

Important

According to our release support guidelines the v2.6 minor will only receive patches for critical issues and security fixes.

This release includes the following critical fixes:

  1. Fix CVE-2025-24807

  2. Discard changes with big key-only payload and no key hash

  3. Update types regeneration script homing path

  4. Fix topic interference on liveliness_changed status

This release includes the following improvements:

  1. Add unsigned specification to literals

  2. Update commercial support section in README

  3. Update sqlite from 3.36.0 to 3.47.2

This release includes the following ci management updates:

  1. Exclude flaky tests when compiling without security

  2. Fix python version in sanitizers CI

  3. Fix Windows CI and add vanilla build step in Ubuntu CI

  4. Update submodules when cloning Fast DDS on CI

  5. Add Ubuntu weekly CI

  6. Allow running CI on external contributions

  7. Use eProsima-CI action to install Qt

  8. Add references to new nightly jobs per supported branch in README

Version 2.6.9

Important

According to our release support guidelines Fast DDS v2.6.9 will be the last patch version receiving backported features and bugfixes. From now on, the v2.6 minor will only receive patches for critical issues and security fixes.

This release includes the following features:

  1. Add XML configuration for FlowControllerDescriptor to 2.x

  2. New max_message_size property to limit output datagrams size

This release includes the following improvements:

  1. Update Fast CDR thirdparty submodule

  2. Consider library behavior changes as ABI breaks in the PR template checklist

  3. Allow processing of AckNack submessages with count == 0

  4. Use %* instead of loop in .bat scripts.

  5. Use absolute paths when loading XML files

  6. TCPSendResources cleanup

Github CI management:

  1. Fix Python Installation version in Github CI. Address failing system tests environment issues

  2. Set fallback branch for get_related_branch_from_repo correctly

  3. Fix sanitizers CI test summary report

  4. Protect asio exception

  5. Set Fallback branch to 2.6.x

  6. Run selected VS tool on Windows CI

  7. Add DNS entries to hosts files on Github workflows

  8. Refactor Fast DDS Ubuntu CI to include several tests

  9. Avoid CCache in workflows and nighties

  10. Update README.md with GitHub actions Ubuntu CI nightly

  11. Label flaky tests with xfail

This release includes the following fixes:

  1. Fix leak in SecurityManager::participant_volatile_message_secure_writer_

  2. Fix Discovery Server over TCP

  3. Fix some leaks in XML DynamicTypes Parser

  4. Correct liveliness state in a multiple reader - one writer scenario

  5. Fix support for @key annotation in Dynamic types

  6. Properly delete builtin statistics writers upon delete_contained_entities()

  7. Correctly initialize MatchingFailureMask constants to be used with the std::bitset API

  8. Set DataSharing in Writer|ReaderProxyData

  9. Only apply content filter to ALIVE changes

  10. Handle errors when setting socket buffer sizes

  11. Automatically unmatch remote participants on participant deletion

  12. Fix on_sample_lost notification on best-effort readers for fragmented samples

  13. Handle errors when setting socket buffer sizes

  14. Fix DS servers not connecting due to ports logic

  15. Manual fix for documentation generation

  16. Create InitialConnection for TCP initial peers

Version 2.6.8

This release includes the following features:

  1. Authentication Handshake Properties documentation.

  2. TCP Client and Server Participant Decision Making.

This release includes the following improvements:

  1. Make DataWriters always send the key hash on keyed topics.

  2. Include variety of terminate process signals handler in discovery server.

  3. Effectively assert AUTOMATIC/MANUAL_BY_PARTICIPANT liveliness.

  4. Pick smallest available participant ID for new participants.

  5. Check History QoS inconsistencies.

  6. Add check for XML API to PR template.

  7. LARGE_DATA Participants logic with same listening ports.

TCP transport improvements:

  1. TCP unique client announced local port.

  2. Remove unnecessary TCP warning and Fix some tests.

  3. TCP non-blocking send.

  4. Enabling multiple interfaces through whitelist in TCP servers.

  5. Set real TCP non-blocking-send limitation.

Github CI management:

  1. Refactor Github CI sanitizer related jobs.

  2. Avoid running GitHub CI if PR has conflicts.

  3. Add manual Ubuntu Github CI.

  4. Improve CI version management.

  5. Build ShapesDemo on Ubuntu Github CI.

  6. Only run PRs CI when review is requested.

  7. Add macOS and Ubuntu Github CI.

  8. Build Fast DDS Python bindings in Fast DDS Docs Github CI job.

  9. Pin CMake version and vm.mmap_rnd_bits in sanitizer workflows.

This release includes the following fixes:

  1. Fix and refactor Windows Github CI.

  2. Fix max clash with Windows CI.

  3. Fix the shared memory cleaning script.

  4. Fix doxygen docs warnings. Prepare for compiling with Doxygen 1.10.0.

  5. Prevent index overflow and correctly assert the end iterator in DataSharing.

  6. Add a keyed fragmented change to the reader data instance only when its completed.

  7. Add missing virtual destructor for StatisticsAncillary.

  8. Fix wrong log info messages on TCP.

  9. Migrate apt package installation action to eProsima-CI.

  10. Fix CI documentation workflow label triggering.

  11. Upgrade dependency version to last patch version in .repos file.

  12. Fix CVE-2024-28231

  13. Fix data race on PDP.

  14. Discard already processed samples on PDPListener.

  15. Fix flaky Log tests.

  16. Add missing TypeLookup listeners.

  17. Fix hidden overloaded virtual methods.

  18. Fix TCP reconnection after open logical port failure.

  19. Fix CVE-2024-30258 / CVE-2024-30259

  20. Make DataReader::get_first_untaken_info() coherent with read()/take().

  21. Removed warning in ParameterList.

  22. TCP avoid first message loss.

Version 2.6.7

This release includes the following features:

  1. Support Autofill port (automatically set a port) for TCP Transport.

  2. Define a super client by environment variable

  3. Support TCP Discovery server CLI and environment variable

  4. Define methods (environment variable, rtps layer, xml) to configure transport scenarios

  5. Secure discovery server

This release includes the following improvements:

  1. Log warning message upon receiver resource creation failure.

  2. Add tests for reconnection with same GUID

  3. Use foonathan memory manager for reducing allocations in SharedMemManager.hpp

  4. Simplify code in CDRMessage.

  5. Rerun failed tests with ctest option instead of colcon’s.

  6. Several improvements on CI jobs.

  7. Upgrade CMake minimum requirement to 3.16.3

  8. Update PR checklist template. Backports and Description

This release includes the following bugfixes:

  1. Fix DomainParticipant::register_remote_type return when negotiating type.

  2. Fix RemoteBuiltinEndpointHonoring blackbox test.

  3. Allow participant profiles with no rtps tag.

  4. Fix bad-free when receiving malformed DATA submessage.

  5. Fix clang warnings

  6. Use STL implementation of Timed/RecursiveTimedMutex when MSVC >= 19.36.

  7. Fix encapsulation format in WLP.

  8. Fix the clang build for clang 14.

  9. Notify data-sharing listener at the end of a successful matching in intraprocess.

  10. Updatable disable_positive_acks period.

  11. Fix Data Race when updating liveliness changed in WLP.

  12. Fix TCP sender resources creation.

  13. Fix flow controllers unit tests compilation when using Fast CDR from thirdparty.

  14. Add XML parser bit_bound bounds check.

  15. Use FASTRTPS_NO_LIB on unittest root folder.

  16. Use SO_EXCLUSIVEADDRUSE for Win32 unicast listening sockets.

  17. Fix mac address overflow on windows.

  18. Fix PubSubAsReliable test.

  19. Fix FileWatchTest.

  20. Add missing thread include.

  21. Fix missing mandatory attribute check in XML parser struct type.

  22. Better handling of trigger events in docs CI.

  23. Fix memory problem when ciphering payload

  24. Select correct .repos file on push events

  25. Update TLS unit test certificates

  26. Fix bad-free when receiving malformed DATA_FRAG submessage

  27. Fix data race on writer destruction while sending heartbeat

  28. Fix DiscoveryServer list access deadlock

  29. Fix c++11 support for fast discovery server tool

  30. Fix CVE-2023-50257

  31. Fix std::move warning

  32. Fix Github Windows CI

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.6

This release includes the following improvements:

  1. Improve validation on PID_PROPERTY_LIST deserialization.

  2. Improved CPU usage of timed events thread.

  3. Improved performance on intraprocess + data-sharing.

  4. Explicitly register type object in ContentFilteredTopicExample.

  5. Improve installer generation with documentation version fallback.

  6. Improve content filter expression parameters checks and verbosity.

This release includes the following bugfixes:

  1. Fixed long-standing reconnection issues on SHM transport.

  2. Correctly resolve alias in DDSQLFilter.

  3. Fixed partition copy in QoS.

  4. Added length checks to prevent nullptr memory copy calls.

  5. Fixed XMLParser null-dereference when parsing log configuration.

  6. Fixed SHM in 32-bit architectures.

  7. Added missing include.

  8. Avoid double definition of FASTDDS_ENFORCE_LOG_INFO.

  9. Fixed statistics data_count with data-sharing.

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.5

This release includes the following improvements:

  1. Improve behavior when STRICT_REALTIME CMake option is not enabled.

  2. Using functors for for_matched_readers parameter.

  3. Improve auto GAPs in Data Sharing.

This release includes the following bugfixes:

  1. Fix RTPS StatelessWriter ACK check.

  2. Fix total_read_ to be consistent with Reader’s History after DataReader::get_first_untaken_info().

  3. Add deprecation notice to ThroughputControllerDescriptor.

  4. UBSan (Undefined Behavior Sanitizer) fixes.

  5. Several dependencies fixes upgrading to Ubuntu 22.04.

  6. Fix chain of trust issues with a single CA certificate.

  7. Correctly handle builtin endpoints mask.

  8. Take mutex when removing local reader in WLP.

  9. Handle SIGTERM signal in Fast DDS CLI.

  10. Fix data races in SecurityManager authentication process.

  11. Avoid creating entities within callbacks in DynamicHelloWorldExample.

  12. Remove Asio dependency from DeadlineQoSExample.

  13. Validity check for first sequence number.

  14. Include right header when building for iOS.

  15. Fix build on MSVC 19.

  16. Correctly assign multicast port to multicast initial peers.

  17. Select correct listener for on_requested_deadline_missed().

  18. Forward compatibility with boost inter-process 1.74+.

  19. Fix missing includes when building with GCC 13.

  20. Honor allow_unauthenticated_participants flag.

  21. Capture all Fast CDR exceptions.

  22. Fix example to delete Topic after deleting the corresponding Endpoint.

  23. Protect against uncaught exception in SHM segment creation.

  24. Initial acknack backoff.

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.4

This release includes the following bugfixes:

  1. Fix communication with asymmetric Ignore Participant flags.

  2. Fix deadlock in Writer Liveliness Protocol when using intraprocess.

  3. Fix notification lost.

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.3

This release includes the following improvements:

  1. Upgrade CMake minimum requirement to 3.13.

  2. Improve Guid_t operator < performance.

This release includes the following bugfixes:

  1. Add python3 dependency to package.xml.

  2. Fix complex member printing for DynamicDataHelper.

  3. Fix selection of output locators.

  4. Fix null references on XML parser.

  5. Fix data races when creating DataWriters.

  6. Send GAPs correctly when using separate sending.

  7. Install Statistics IDL file.

  8. Fixes for building in older compilers.

  9. Fix deadlock when removing DomainParticipant when using SECURITY.

  10. Ensure shared_mutex implementation is consistent throughout supported platforms.

  11. Other minor fixes and improvements.

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.2

This release includes the following improvements:

  1. Support for GCC 12.

  2. Overload DataReader::get_unread_count().

  3. Improve read/take performance when using topic with a great number of keys.

  4. Improve rediscovery on lossy environments.

This release includes the following bugfixes:

  1. Fixed several deadlocks and data races.

  2. Fixed validation on ParameterPropertyList_t.

  3. Fixed wrong usage of std::remove_if.

  4. Fixed acknowledgement in DataSharing.

  5. Other minor fixes.

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.1

This release includes the following improvements:

  1. Support for writer side content filtering

  2. Support hexadecimal values on SQL filter

  3. Support for DataWriter::get_key_value()

  4. Support for DataReader::lookup_instance()

  5. Support for SampleLostStatus on DataReader

  6. Improved doxygen documentation

Some bugfixes are also included:

  1. Fixed several lock order inversion issues

  2. Fixed data race when closing UDP channels

  3. Fixed empty partition validation checks

  4. Fixed corner case with reliable writers and samples with a huge number of fragments

  5. Other minor fixes and improvements

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.

Version 2.6.0

This minor release is API compatible with the previous minor release, but introduces ABI breaks on two of the three public APIs:

  • Methods and attributes have been added on several classes of the DDS-PIM high-level API, so indexes of symbols on dynamic libraries may have changed. Some API is also being deprecated.

  • Methods and attributes have been added on several classes of the RTPS low-level API, so indexes of symbols on dynamic libraries may have changed.

  • Old Fast-RTPS high-level API remains ABI compatible.

This minor release includes the following features:

  1. Allow modifying remote server locators at runtime

  2. Add statistics physical information to DATA[p] using properties

  3. Content filter discovery information RTPS API

  4. Endpoint discovery RTPS API

  5. on_sample_lost RTPS API

  6. Transport layer API extension

  7. XML support for Fast DDS CLI

  8. New exchange format to reduce bandwidth in Static Discovery

It also includes the following improvements:

  1. Support lowercase keywords on SQL filter

  2. Separate initialization and enabling of BuiltinProtocols

  3. Add disable_positive_acks to Static Discovery XML

  4. Several updates in the DDS-PIM API

  5. Support for octet vectors on XML parser

  6. Update README and roadmap

  7. Update Fast-CDR submodule to v1.0.24

  8. Add new CMake option APPEND_PROJECT_NAME_TO_INCLUDEDIR

Some bugfixes are also included:

  1. Fix MatchedStatus last_*_handle

  2. Fix recommended statistics DataReaderQos to enable backwards compatibility

  3. Fixes for supporting Python bindings in Windows platforms

  4. Fix publishing physical data on statistics topic

  5. Other minor fixes and improvements

Note

If you are upgrading from a version older than 1.7.0, it is required to regenerate generated source from IDL files using fastddsgen. If you are upgrading from any older version, regenerating the code is highly recommended.