0.10.1 (Lettres Dansantes)
This release contains mostly fixes and some quality of life improvements. It also sees the first release of the new python-based cyclonedds
CLI command.
Compatibility:
- Note that some fixes to TypeRequest/Response have been made for spec compliance. This means that
0.10.1
will not be able to do dynamic type discovery with0.9.*
. - XTypes
enum
compatibility with OpenDDS will work after a fix is merged on the OpenDDS side.
Documentation:
- improved Getting Started guide
- improved structuring of the C++ API documentation
Core:
- fixes "by source timestamp" destination order with >= 3 writers for the same instance
- fixes a stall in retrieving historical data from a transient local writer after a partial disconnection and in combination with loss of specific packets
- data received from a volatile writer prior to a heartbeat is now accepted if the writer is non-Cyclone DDS
- fixes crash if the liveliness QoS on a writer is set to manual with lease duration infinity
- fixes a crash on initialization of the TCP support code
- fixes an incorrect unlock in security support code
- fixes incorrect deserialization of property lists in security plugin
- removed the fixed limit on the number of threads
- fixes a variety of cases where it would crash on invoking an API function before initializing the library
- fixes for interaction with the "ignorelocal" QoS setting when using Iceoryx
XTypes:
- default_nested compiler option
- validation of type information and type objects
- various improvements to type lookups (among which compatibility with OpenDDS)
- bug fixes for key handling in mutable structs (C)
- de-duplicate list of dependent types in minimal type identifiers
- fixes type object generation for int8 type
- fixes assignability check for unbounded key members
- dds_find_topic support using XTypes type information
- "presence_required" option for network interfaces that are not required but should be used if present at start-up
- fixes content filtering when using Iceoryx (C++)
- serializer performance improvements (C++)
IDLC:
- add option for setting output directory
- add option for stripping a path prefix
- correct alignment calculations for some cases using external or optional members (C)
- support for default_literal annotation (C++)
- fix handling of nested include files
- variety of fixes for bugs causing invalid code to be generated (C++)
Tooling:
cyclonedds
tool now provides more information on processescyclonedds
tool now wraps ddsperf and draws pretty graphs- support for naming entities
- C pubsub has been removed
- the "debug monitor port" now generates JSON
- update perftest script to current configuration and make security work
Platform/builds/packaging:
- there is now a cyclonedds-nightly pypi package
- C++11 compatibility
- CMake to 3.16
- fixes for builds without IDLC
- support for static builds
- IPv6 support can now be disabled in CMake
- topic/type discovery are now enabled in the builds by default (topic discovery remains disabled by default at run-time)
- dropped MinGW builds from CI (because of CI-specific problems)
- add Iceoryx directory to rpath (macOS)