Skip to content

Releases: eProsima/Fast-DDS

v2.6.7

17 Jan 14:24
Compare
Choose a tag to compare

Fast DDS v2.6.7

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

  1. Support Autofill port(automatically set a port) for TCP Transport (#4104)
  2. Define a super client by environment variable (#4108)
  3. Support TCP Discovery server CLI and environment variable (#4135)
  4. Define methods to configure transport scenarios (#4174)
  5. Secure discovery server (#3283)

This release includes the following improvements:

  1. Log warning message upon receiver resource creation failure (#3938)
  2. Add tests for reconnection with same GUID (#3978)
  3. Use foonathan memory manager for reducing allocations in SharedMemManager.hpp (#3890)
  4. Simplify code in CDRMessage (#3999)
  5. Backport workflows from master (#3965)
  6. Rerun failed tests with ctest option instead of colcon's (#4085)
  7. Add CCache to all CI jobs (#4119)
  8. Upgrade CMake minimum requirement to 3.16.3 (#2583)
  9. Bump version to 2.6.7 (#4196)
  10. Update PR checklist template. Backports and Description (#4224)

This release includes the following fixes:

  1. Fix DomainParticipant::register_remote_type return when negotiating type (#3798)
  2. Fix RemoteBuiltinEndpointHonoring blackbox test (#3795)
  3. Allow participant profiles with no rtps tag (#3781)
  4. Fix bad-free when receiving malformed DATA submessage (#3862)
  5. Fix clang warnings (#3906)
  6. Use STL implementation of Timed/RecursiveTimedMutex when MSVC >= 19.36 (#3918)
  7. Fix encapsulation format in WLP (#3790)
  8. Fix the clang build for clang 14 (#3929)
  9. Notify datasharing listener at the end of a successful matching in intraprocess (#3900)
  10. Updatable disable_positive_acks period (#3897)
  11. Fix Data Race when updating liveliness changed in WLP (#3961)
  12. Fix TCP sender resources creation (#3964)
  13. Fix flow controllers utests compilation when using Fast CDR from thirdparty (#3986)
  14. Add XML parser bit_bound bounds check (#3991)
  15. Use FASTRTPS_NO_LIB on unittest root folder (#3873)
  16. Use SO_EXCLUSIVEADDRUSE for Win32 unicast listening sockets (#4073)
  17. Fix mac address overflow on windows (#4021)
  18. Fix PubSubAsReliable test (#4011)
  19. Fix FileWatchTest (#4024)
  20. Add missing thread include (#4065)
  21. Fix missing mandatory attribute check in XML parser struct type (#4008)
  22. Select correct .repos file on push events (#4088)
  23. Update TLS unit test certificates (#4069)
  24. Better handling of trigger events in docs CI (#4093)
  25. Fix memory problem when ciphering payload (#4153)
  26. Fix bad-free when receiving malformed DATA_FRAG submessage (#4149)
  27. Fix data race on writer destruction while sending heartbeat (#4168)
  28. Fix DiscoveryServer list access deadlock (#2746)
  29. Fix c++11 support for fast discovery server tool (#2798)
  30. Fix CVE-2023-50257
  31. Fix std::move warning (#4214)
  32. Fix Github Windows CI (#4227)

PRs in merged order:
#3798, #3795, #3781, #3862, #3906, #3918, #3790, #3929, #3938, #3900, #3897, #3961, #3964, #3978, #3986, #3991, #3873, #3890, #3999, #4073, #4021, #3965, #4011, #4024, #4065, #4008, #4085, #4088, #4093, #4069, #4119, #4104, #4108, #4135, #4153, #4149, #4174, #4168, #2583, #2746, #2798, #3283, #4196, #4214, #4224, #4227, #4257

v2.13.1

12 Jan 07:29
Compare
Choose a tag to compare

Fast DDS v2.13.1

This patch release includes the following fixes and improvements:

  1. Revert wrong fix for TCP deadlock on channel reuse (#4181)
  2. Fix wrong history selection when removing PDP samples (#4182)
  3. Fix data race when processing incoming PDP samples on different threads (#4188)
  4. Fix DNS test filter in CMakeLists (#4211)
  5. Downgrade CMake minimum required version to 3.20 (#4218)
  6. Update versions.md (#4219)
  7. Update PR template to include check for PR description, title and backports (#4215)
  8. Update Fast CDR submodule to v2.1.3 (#4226)
  9. Regenerate Fast DDS types due to Gen release v3.2.1 (#4229)

PRs in merged order:
#4182, #4181, #4195, #4188, #4211, #4215, #4219 , #4218, #4226, #4229

v2.13.0

19 Dec 15:16
Compare
Choose a tag to compare

Fast DDS v2.13.0

This minor release includes several new features, improvements and bugfixes.

IMPORTANT This release upgrades the following Fast DDS dependencies:

New features

  1. Support Monitor Service (#3894)
  2. Enable configuration of thread settings for all threads (both through the C++ API and XML configuration files) (#4013)
  3. Support Autofill port (automatic assignment of a port) for TCP Transport (#4061)
  4. Support TCP for Discovery server CLI and environment variable (#4097)
  5. Usage of gtest_discover_tests (#3971)
  6. Define a super client by environment variable (#4047)
  7. Support adding interfaces to the interface whitelist by the name (#3973)
  8. Add new methods to configure transport scenarios (#4098, #4176)
  9. Support DataRepresentationQos (#3972)
  10. Change serialize function default behavior to omit the data representation (#4131)
  11. Upgrade Fast CDR submodule to v2.1.2 (#4175)
  12. Update roadmap & platforms support (#4159)

Improvements

  1. Rerun failed tests with ctest option instead of colcon's (#4081)
  2. Add CCache to all CI jobs (#4114)
  3. Better handling of trigger events in docs CI (#4095)

Fixes

  1. Fix compilation of XMLProfileParserTests when building without security (#4040)
  2. Improve IgnoreNonExistentSegment test for Windows (#4036)
  3. Add missing thread includes (#4045)
  4. Fix warning in Mac rewarding unnecessary lambda capture (#4052)
  5. Use SO_EXCLUSIVEADDRUSE for Win32 unicast listening sockets (#4056)
  6. Fix colcon on github CI (#4075)
  7. Fix gtest discovery timeout (#4048)
  8. Mark on_participant_discovery overload removal (#4078)
  9. Fix uninitialized member in BuiltinAttributes class (#4038)
  10. Fix setaffinity directive for Android (#4125)
  11. Fix Monitor Service types & test without security (#4124)
  12. Fix TCP deadlock on channel reuse (#4099)
  13. Fix dns filter in CMakeLists file for tests (#4137)
  14. Fix memory issues related to ciphering payload (#2485)
  15. Fix a bad-free when receiving a malformed DATA_FRAG submessage (#4145)
  16. Fix CVE-2023-50257
  17. Fix compilation of Fast DDS Python tests (#4158)
  18. Fix a build regression when SECURITY=OFF and NO_TLS=OFF (#4156)
  19. Fix data race on writer destruction while sending heartbeat (#4076)

PRs in merged order:
#4027, #4013, #4040, #3971, #4036, #4045, #4052, #4056, #4075, #4048, #4081, #4061, #4095, #4078, #3973, #4047, #3972, #4114, #4038, #3894, #4125, #4124, #4099, #4097, #4137, #2485, #4145, #4131, #4158, #4159, #4160, #4156, #4076, #4098, #4175, #4176

v2.12.1

20 Nov 14:02
Compare
Choose a tag to compare

Fast DDS v2.12.1

This release includes the following improvements:

  1. Support of Fast CDR v1 (#4025, #3970)
  2. The period for the timer within the disable possitive acknoledgements Qos is now updatable (#3879)
  3. Log error message upon receiver resource creation failure (#3924, #3954)
  4. CI and repository improvements (#3934, #3968, #3953, #3942, #4028)
  5. Simplify code in CDRMessage (#3855)

This release includes the following fixes:

  1. Fix transient local durability for reliable readers using intra-process and data-sharing (#3875)
  2. Use STL implementation of Timed/RecursiveTimedMutex when MSVC >= 19.36 (#3904)
  3. Fix updatability of immutable DataWriterQos (#3915)
  4. Fix the clang build for clang 14 (#3927)
  5. Fix remote locators filtering when whitelist provided (#3933)
  6. Fix Data Race when updating liveliness changed in WLP (#3926)
  7. Fix flow controllers utests compilation when using Fast CDR from thirdparty (#3979)
  8. Add XML parser bit_bound bounds check (#3975)
  9. Fix missing mandatory attribute check in XML parser struct type (#3995)
  10. PubSubAsReliable test fix (#3994, #4017)
  11. SHM transport: ignore non-existing segment on pop (#3992)
  12. Fix: mac address overflow on windows (#3983)
  13. FileWatchTest fix for github windows CI (#4016)

PRs in merged order:
#3879, #3875, #3904, #3915, #3927, #3924, #3942, #3934, #3933, #3954, #3926, #3932, #3968, #3953, #3979, #3975, #3855, #3995, #3994, #3992, #3983, #4016, #4017, #4025, #3970, #4028

v2.12.0

29 Sep 09:56
Compare
Choose a tag to compare

Fast DDS v2.12.0

This minor release includes several new features, improvements and bugfixes.

IMPORTANT This release upgrades the following Fast DDS dependencies:

Please, read also the release notes of Fast DDS-Gen v3.0.0 to be aware of every possible break in the application code.

Mind that, there is a minor API break with previous v2.x versions: MEMBER_INVALID identifier was declared using #define. In order to prevent polluting the user workspace, it has been transformed into a constexpr within eprosima::fastrtps::types namespace.
Also, as Fast DDS dependencies have been upgraded to new major releases, depending on the types defined in the IDL files, it might be required to modify the user application source code besides recompiling it (more information can be found in the corresponding release notes). Finally, the type support must be regenerated from the IDL files using Fast DDS-Gen v3.0.0.

New features

  1. New participant property to configure SHM transport metatraffic behavior (#3753)
  2. Exposed custom payload pool on DDS endpoints declaration (#3755)
    • Feature example (#3598)
  3. Processing environment variables in XML text (#3841)
  4. Dependencies
    1. Upgrade internal type supports using latest Fast DDS-Gen release v3.0.0 (#3828, #3893)
    2. Upgrade Fast CDR submodule to v2.0.0 introducing XCDR encoding version 2 (#3828)

Improvements

  1. Fast DDS improvements
    1. fixed_string comparison operators (#3623)
    2. Remove mutex from TimedEventImpl (#3745, #3760)
    3. Performance improvements on intraprocess and datasharing (#3743)
    4. Improve Shared Memory resilience to crashing participants (#3759)
    5. Improve scripts shebang portability (#3732)
    6. Use foonathan_memory to reduce allocations in SharedMemManager (#3833)

Fixes

  1. Fast DDS bugfixes
    1. Fixed XMLParser null-dereference when parsing log configuration (#3769)
    2. Allow participant XML profiles with no <rtps> tag (#3771)
    3. Fix encapsulation format in Writer Liveliness Protocol (#3784)
    4. Fix DomainParticipant::register_remote_type return when negotiating type (#3786)
    5. Fix strict real-time feature when using Flow Controller feature (#3735)
    6. Fix ParameterPropertyList increment operators (#3739)
    7. Fix bad-free when receiving malformed DATA submessage (#3824)
    8. Fix asymmetric whitelist matching (#3733)
    9. Fix heap-use-after-free on XMLElementParser (#3866)
    10. Fix History remove change return statement (#3858)
  2. CI fixes
    1. Fix RemoteBuiltinEndpointHonoring blackbox test (#3787)
    2. Improve repository workflows (#3831, #3837, #3838, #3503)
    3. Use FASTRTPS_NO_LIB on unittest root folder (#3856)
    4. Fix Windows workflow (#3876, #3887)
  3. Tools
    1. Remove C++11 check in fast-discovery-server CLI tool (#3891)
  4. Examples
    1. Fix HelloWorldDataSharing data type (#3714)
  5. Documentation
    1. Doxygen typos (#3744)
  6. Repository
    1. Remove 2.9.x as active branch (#3720)
  7. Non Tier 1 support
    1. Fixed SHM in 32-bit architectures (#3752)
    2. Fix warning on Win32 architecture (#3741)

PRs in merged order:
#3720, #3623, #3744, #3745, #3743, #3760, #3759, #3752, #3769, #3753, #3771, #3755, #3784, #3787, #3786, #3831, #3837, #3838, #3735, #3741, #3503, #3739, #3732, #3841, #3824, #3856, #3733, #3866, #3858, #3828, #3876, #3598, #3714, #3833, #3891, #3887, #3893, #3881

v2.10.2

18 Aug 12:02
Compare
Choose a tag to compare

This release includes the following improvements:

  1. Fix Data-Sharing delivery when data_count is zero (#3767)
  2. Improve performance of intraprocess plus data-sharing(#3757)
  3. Improve content filter expression parameters checks and verbosity (#3591)
  4. Improve validation on PID_PROPERTY_LIST deserialization (#3679)
  5. Participant ignore local endpoints (#3480)
  6. Pick smallest available participant ID for new participants (#3437)
  7. Improve endpoint QoS XML tags (#3492, #3527, #3538)
  8. Forward compatibility with boost interprocess 1.74+ (#3488)
  9. Cap Thread Sanitizer memory usage to prevent runner shutdown (#3442)
  10. Allow participant XML profile with no <rtps> tag (#3780)
  11. Add unsupported note in API documentation to new ignore DomainParticipantListener callbacks (#3622)
  12. Add documentation version fallback (#3602)

This release includes the following bugfixes:

  1. Fixed long-standing reconnection issue on SHM transport (#3697, #3701, #3713, #3764, #3778)
  2. Fix null dereference when fuzzing (#3436)
  3. Fix segfault when creating two participant with same fixed id (#3443)
  4. Fix UBSan (Undefined Behavior Sanitizer) issues (#3625)
  5. Fix listener selection for on_requested_deadline_missed (#3423)
  6. Fix build on msvc 19.36.32528 (#3462)
  7. Fix XML schema to set Transport descriptor kind as NOT mandatory (#3470)
  8. Fix missing includes (#3508, #3702)
  9. Fix overhead time unit (#3570)
  10. Fix request reply example spelling typo (#3672)
  11. Fix topic deletion after endpoint in examples (#3562)
  12. Fix Data-Sharing delivery when data_count is zero (#3630)
  13. Wait for log background thread initialization on the first queued entry (#3603)
  14. Fix alias resolve in DDSSQLFilter (#3584)
  15. Fix partition copy in QoS (#3610)
  16. Fix StatelessWriter locators filtering (#3688)
  17. Fix XMLParser null-dereference in parseLogConfig (#3773)
  18. Fix encapsulation format in WLP (#3789)
  19. Replace uint64_t by 8 in alignas specifier (#3767)
  20. Capture all Fast CDR exceptions (#3540)
  21. Security module: Honor allow_unauthenticated_participants flag (#3520)
  22. Explicitly register type object in ContentFilteredTopicExample (#3659)
  23. Avoid double definition of FASTDDS_ENFORCE_LOG_INFO (#3675)
  24. Fix API Fast DDS v2.10.0 API break calling correctly on_participant_discovery callbacks (#3613)
  25. Remove mutex from TimedEventImpl (#3750)

PRs in merge order:
#3436, #3437, #3442, #3443, #3423, #3462, #3470, #3134, #3455, #3480, #3492, #3488, #3508, #3502, #3527, #3540, #3538, #3562, #3520, #3570, #3584, #3591, #3622, #3602, #3702, #3603, #3610, #3672, #3688, #3625, #3767, #3773, #3630, #3659, #3675, #3697, #3757, #3701, #3713, #3764, #3778, #3679, #3613, #3780, #3750, #3789, #3805, #3807

v2.11.2

11 Aug 08:09
Compare
Choose a tag to compare

This release includes the following improvements:

  1. Improve Shared Memory resilience to crashing participants (#3763)
  2. User configuration for Shared Memory metatraffic (#3776)
  3. Performance improvements on intraprocess and data-sharing (#3756)

This release includes the following bugfixes:

  1. Remove Mutex from TimedEventImpl (#3749)
  2. Replace uint64_t by 8 in alignas specifier (#3768)
  3. Fix XMLParser null-derefence in parseLogConfig (#3772)

PRs in merge order:

#3763, #3776, #3756, #3749, #3768, #3772, #3792

v2.6.6

04 Aug 12:06
cffaa67
Compare
Choose a tag to compare

This release includes the following improvements:

  1. Improve validation on PID_PROPERTY_LIST deserialization. (#3681)
  2. Improved CPU usage of timed events thread. (#3751)
  3. Improved performance on intraprocess + data-sharing. (#3758)
  4. Explicitly register type object in ContentFilteredTopicExample. (#3661)
  5. Improve installer generation with documentation version fallback. (#3600)
  6. Improve content filter expression parameters checks and verbosity (#3565)

This release includes the following bugfixes:

  1. Fixed long-standing reconnection issues on SHM transport. (#3695, #3699, #3711, #3765, #3777)
  2. Correctly resolve alias in DDSQLFilter. (#3585)
  3. Fixed partition copy in QoS. (#3612)
  4. Added length checks to prevent nullptr memcpy calls. (#3627)
  5. Fixed XMLParser null-dereference when parsing log configuration. (#3774)
  6. Fixed SHM in 32-bit architectures. (#3766)
  7. Added missing cstdint include. (#3704)
  8. Avoid double definition of FASTDDS_ENFORCE_LOG_INFO. (#3677)
  9. Fixed statistics data_count with data-sharing. (#3632)

PRs in merge order:
#3600, #3704, #3612, #3695, #3699, #3711, #3681, #3751, #3681, #3751, #3758, #3627, #3661, #3766, #3765, #3777, #3585, #3593, #3632, #3785

v2.11.1

18 Jul 06:22
Compare
Choose a tag to compare

This release includes the following improvements:

  1. Correct CONTRIBUTING.md typo (#3692)
  2. Improve validation on PID_PROPERTY_LIST deserialization (#3670)
  3. Apply eProsima brand style to Fast DDS repo (#3678)
  4. Fix spelling mistake: SUBSTRACTION to SUBTRACTION (#3666)

This release includes the following bugfixes:

  1. Fixed long-standing reconnection issue on SHM transport (#3640, #3639, #3642)
  2. Added missing include (#3690)
  3. Fixed Boost handle usage regression (#3687)
  4. Fix StatelessWriter locators filtering (#3655)
  5. Avoid double definition of FASTDDS_ENFORCE_LOG_INFO (#3667)
  6. Explicitly register type object in ContentFilteredTopicExample (#3594)
  7. Properly handle zero-sized payloads on dynamic memory payload pools (#3606)

PRs in merge order:

#3606, #3594, #3666, #3667, #3678, #3670, #3655, #3687, #3692, #3640, #3639, #3690, #3642, #3705, #3717

v2.9.2

20 Jul 12:34
Compare
Choose a tag to compare

IMPORTANT: This is the last patch release that will be made to Fast DDS v2.9, as it has arrived EOL.

This release includes the following ABI compatible improvements:

  1. Library improvements
    1. Improve behavior when HAVE_STRICT_REALTIME is not set (#3289)
    2. Using functors for for_matched_readers parameter (#3318)
    3. Improve auto GAPs in Data Sharing (#3356)
    4. Improve content filter expression parameters check and verbosity (#3591)
    5. Improve validation on PID_PROPERTY_LIST deserialization (#3680)
  2. Fast DDS CLI
    1. Handle SIGTERM signal (#3378)

This release includes the following bugfixes:

  1. Security vulnerability
    1. Fix chain of trust issues with a single CA certificate (#3299)
  2. Library bugfixes
    1. Fix RTPS StatelessWriter ACK check (#3241)
    2. UBSan (Undefined Behavior Sanitizer) fixes (#3254, #3626)
    3. Fix backwards compatibility using SHM communication (#3307)
    4. Correctly handle builtin endpoint mask (#3277, #3397)
    5. Fix crash when enabling DisablePositiveACKsQosPolicy with remote best-effort readers (#3386)
    6. Validity check for first sequence number (#3382)
    7. ASAN (Address Sanitizer) fixes (#3353)
    8. Correctly assign multicast port to multicast initial peers (#3428)
    9. Protect against uncaught exception in SHM segment creation (#3293)
    10. Initial acknack backoff (#3431)
    11. Fix crash when calling on_requested_deadline_missed callback (#3452)
    12. Security module: Honor allow unauthenticated_participants flag (#3521)
    13. Fix crashes caused by not capturing every Fast CDR exception (#3541)
    14. Correctly resolve aliases in DDSSQLFilter (#3586)
    15. Wait for log background thread initialization on the first queued entry (#3604)
    16. Fix partition copy in QoS (#3611)
    17. Fix Data-Sharing delivery when data_count is zero (#3631)
    18. Fix StatelessWriter locators filtering (#3689)
    19. Avoid double definition of FASTDDS_ENFORCE_LOG_INFO (#3676)
    20. Fixed long-standing reconnection issue on SHM transport (#3696, #3700, #3712)
  3. CI fixes
    1. Fix test building when using GTEST_INDIVIDUAL CMake option (#3331)
    2. Use correct time unit in latency tests (#3571)
  4. Synchronization fizes
    1. Take mutex when removing local reader in WLP (#3370)
    2. Fix data races in SecurityManager authentication process (#3373)
  5. Example fixes
    1. Avoid creating entities within callbacks in DynamicHelloWorldExample (#3340)
    2. Remove Asio dependency from DeadlineQosExample (#3413)
    3. Correct DDS entity deletion order (#3563)
    4. Explicitly register TypeObject in ContentFilteredTopicExample (#3660)
  6. Installer generation
    1. Add documentation fallback when the documentation tag is not found (#3601)
  7. Non Tier 1 Support
    1. Fix build for GCC5 (#3349)
    2. Fix build on MSVC 19.36 (#3465)
    3. Include right header when building for iOS (#3400)
    4. Forward compatibility with Boost interprocess 1.74+ (#3506)
    5. Include missing header files required for compiling with GCC13 (#3517, #3703)

PRs in merged order:
#3241, #3254, #3289, #3307, #3299, #3277, #3327, #3349, #3318, #3370, #3378, #3356, #3373, #3386, #3382, #3340, #3353, #3413, #3397, #3428, #3465, #3331, #3400, #3431, #3452, #3506, #3521, #3517, #3541, #3563, #3571, #3591, #3586, #3601, #3604, #3611, #3631, #3626, #3660, #3703, #3689, #3676, #3680, #3696, #3700, #3712, #3723