Skip to content

Releases: OpenDDS/OpenDDS

OpenDDS 3.5

15 Jan 17:29
Compare
Choose a tag to compare

Release notes for Version 3.5 of OpenDDS

  • Updates to RTPS support resulting from both interoperability
    testing (March 2013 OMG meeting) and user feedback.
  • Fixed a bug in the DataReader relating to the Deadline timer.
  • Generated TypeSupportImpl classes now contain nested typedefs that
    facilitate programming with C++ templates.
    See tests/DCPS/ManyTopicTest for an example of usage.
  • Added config options to bind RTPS-related multicast sockets to
    specific network interfaces. See the ChangeLog for details.
  • Fixed an opendds_idl code generated bug when typedefs of basic
    types are used as fields of structs.
  • Corrected a number of other bugs related to discovery and scaling.

Using the GitHub "releases" page

Download OpenDDS-3.5.zip (Windows) or OpenDDS-3.5.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.4.1

15 Jan 17:31
Compare
Choose a tag to compare

Release notes for Version 3.4.1 of OpenDDS

  • Added a new option to opendds_idl, -Wb,v8, which generates type support
    for copying DCPS structs from C++ objects to JavaScript objects -- requires
    the V8 JavaScript engine. See https://npmjs.org/package/opendds for OpenDDS
    integration with Node.js.
  • Fixed a bug in serialization with misaligned reads. It only impacts
    certain platforms with strict alignment requirements such as SPARC/SunCC.
  • Clang 3.2 is now a supported compiler.
  • Fixed a bug in the rtps_udp transport, in certain cases an invalid Gap
    submessage was sent which can result in data samples not being received.

Using the GitHub "releases" page

Download OpenDDS-3.4.1.zip (Windows) or OpenDDS-3.4.1.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.4

15 Jan 17:33
Compare
Choose a tag to compare

Release notes for Version 3.4 of OpenDDS

  • Added new OpenDDS-specific APIs for sending and receiving untyped data,
    (does not require code generation from IDL data structures). See the
    Recorder and Replayer classes and the test in tests/DCPS/RecorderReplayer.
  • Implemented the ability to send fragmented data with the rtps_udp transport.
  • Fixed a bug in copy_from_topic_qos(): the Ownership policy is now copied.
  • The optimization of publisher-side content filtering now applies to durable
    data in addition to newly written data samples.
  • As with versions before 3.2, the DCPSInfoRepo object reference is allowed to
    fail to resolve. If it fails, the current operation can be re-tried at a
    later time when the DCPSInfoRepo server is available.
  • Added a new option for per-domain default transport configurations.
  • Corrected IDL string constants for QoS policy names which were wrong in the
    DDS spec (GROUPDATA and TRANSPORTPRIORITY ..._QOS_POLICY_NAME). These are
    not used anywhere in OpenDDS.

Using the GitHub "releases" page

Download OpenDDS-3.4.zip (Windows) or OpenDDS-3.4.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.3

15 Jan 17:36
Compare
Choose a tag to compare

Release notes for Version 3.3 of OpenDDS

  • If an instance of a transport can't be set up, an exception is thrown so
    that different configuration parameters can be attempted by the user.
  • Corrected the mapping of Priority QoS to DiffServ CodePoint DS subfield.
  • For thread-per-connection send, if no explicit scheduling policy has been
    configured, OpenDDS will now inherit the current thread's policy/priority.
  • Fixed a possible deadlock of RTPS discovery on Windows.
  • Added non-blocking I/O setting to tcp sockets, VxWorks 6.4 required it.
  • Fixed various bugs in deadline and ownership QoS.
  • Improved multicast transport's robustness during handshaking when many
    connections are set up at the same time, and also allow for multicast
    to skip over recieved datagrams that don't have the expcted header values.
  • Multicast transport configuration can now specify a local network interface
    which will be used to join the multicast group.
  • The support for the generation of the DDS4CCM needed LEM library has been
    moved to CIAO DDS4CCM. This removed the optional dependency on CIAO.

Using the GitHub "releases" page

Download OpenDDS-3.3.zip (Windows) or OpenDDS-3.3.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.2

15 Jan 17:39
Compare
Choose a tag to compare

Release notes for Version 3.2 of OpenDDS

  • Added a new transport type: Shared Memory
    Use "shmem" as the short name (in place of "tcp", "udp", "multicast", etc.).
    See dds/DCPS/transport/shmem/ShmemInst.h for configurable parameters.
  • The udp transport now supports setting IP DSCP (DiffServ CodePoint) based on
    the writer's TRANSPORT_PRIORITY QoS value.
  • Fixed bugs in udp and multicast transports, including reassembly of fragments.
  • Made several changes in order to support CIAO 1.1.2 with DDS4CCM. From
    this version DDS4CCM has support for OpenDDS as DDS vendor. Check the CIAO
    release notes for details on what has been ported.
  • Added new QOS_XML library with which QoS settings can be done through an XML
    file. Used at this moment by the CIAO DDS4CCM implementation.
  • Implemented rejection of samples due to exceeding max_instances and
    max_samples.
  • Made the RTPS discovery and transport code more robust.
  • Refactored InfoRepo-based discovery into its own library. This reduces the
    dependency on TAO such that certain TAO libraries will no longer be loaded
    unless they are needed for InfoRepo-based discovery.
  • For IDL files that only contain local interfaces, the generation of
    server-side TAO code was suppressed. The suppression applies to DdsDcps*.idl.
    This means, for example, that code that was including DdsDcpsSubscriptionS.h
    needs to be changed to include DdsDcpsSubscriptionC.h.
  • To reduce library size, OpenDDS can now be conditionally compiled to exclude
    profiles discussed in the Compliance section of the DDS spec. See
    section 1.3.3 in the Developer's Guide for more information.

Using the GitHub "releases" page

Download OpenDDS-3.2.zip (Windows) or OpenDDS-3.2.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.1

15 Jan 17:42
Compare
Choose a tag to compare

Release notes for Version 3.1 of OpenDDS

  • This release includes the initial implementation of DDS Interoperability
    in OpenDDS, using the DDS-RTPS spec v2.1 from the OMG (formal/2010-11-01).
    RTPS support in OpenDDS consists of two main features:
    • A pluggable transport implementation, known as "rtps_udp" because it
      implements the UDP PSM of the DDS-RTPS spec. This is a peer of the
      existing OpenDDS-native transports: "tcp", "udp", and "multicast".
    • A new discovery mechanism for RTPS's distributed discovery. This can
      replace the DCPSInfoRepo in existing OpenDDS deployments.
      Neither of these features is enabled by default. See the OpenDDS Developer's
      Guide chapter 7 for configuration details. Also, note that not every OpenDDS
      feature (for example, certain QoS values) is supported with RTPS in the
      initial implementation. These exceptions are documented in the Developer's
      Guide sections 7.3.3 and 7.4.5.5.
  • Changed set_qos() of DataWriter, DataReader, Publisher and Subscriber so
    when provided a QoS value incompatible with an existing association, that the
    value will be changed, association will be broken, and RETCODE_OK returned.
    Previously, if any association would be broken, no change would take place
    and false would be returned. New version is compatible with DDS spec.
  • OpenDDS udp transport enhancements:
    • Added send_buffer_size and rcv_buffer_size parameters to the udp
      transport configuration.
    • The default local address will use DNS host names instead of IP
      addresses.
    • Added support for IPv6 when ACE is built with IPv6 support.
  • OpenDDS multicast transport enhancements:
    • Added a configuration parameter "async_send" (defaults to false)
      that will send multicast datagrams using async I/O if supported
      by the platform. As of now this is only implemented on Windows.
      It could be extended to Unix aio_*() functions in theory, but these
      are generally not preferred and the regular socket functions are
      sufficiently fast.
  • Removed DataReaderQosExt from DdsDcpsSubscriptionExt.idl. This was only
    being used to provide a non-standard-compliant backwards-compatibility
    setting to get the DURABILITY QoS behavior matching that of OpenDDS v1.2
    and earlier. It was not being used in any OpenDDS code.

Using the GitHub "releases" page

Download OpenDDS-3.1.zip (Windows) or OpenDDS-3.1.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.0.1

15 Jan 17:46
Compare
Choose a tag to compare

Release notes for Version 3.0.1 of OpenDDS

  • The DCPSInfoRepo reassociates Built in Topic connections for existing
    datareaders and datawriters when restarted from persistence.
  • The opendds_idl compiler will now print a warning about not including TAO's
    orb.idl file when a file named orb.idl is included.
  • Fixed a bug where the timeout for passive_connect_duration was ignored.
  • Fixed multiple bugs in fragmentation/reassembly used for udp and multicast.
  • Fixed multicast loopback and session re-use problems.
  • Fixed a bug with memory management for the TransportCustomizedElement
    used in publisher-side content filtering.
  • New example Messenger.minimal - which is like messenger, but streamlined
    for new users to understand the whole easier.

Using the GitHub "releases" page

Download OpenDDS-3.0.1.zip (Windows) or OpenDDS-3.0.1.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 3.0

15 Jan 17:49
Compare
Choose a tag to compare

Release notes for Version 3.0 of OpenDDS

  • Transport configuration has undergone a major redesign and any existing
    transport application code or transport configuration files need to be
    updated. See the Developer's Guide for details of the design. See
    $DDS_ROOT/docs/OpenDDS_3.0_Transition.txt for a description on how
    to migrate your applications to the OpenDDS 3.0 design. As a part of
    this design OpenDDS gains the following capabilities:
    • Most applications can do all transport configuration via
      configuration files (no transport source code required).
    • Individual writers and readers can now support multiple
      transports.
  • The simpleTcp transport was renamed to tcp (the directory containing
    its source code was also renamed).
  • The udp transport no longer required a local_address when being
    configured. If not specified, the property defaults to a value
    selected by the operating system (similar to the tcp transport).
  • Details of the OpenDDS Modeling SDK changes in this release are documented
    in the Eclipse-based help, see OpenDDS Modeling SDK Guide -> Getting
    Started -> Introduction to the OpenDDS Modeling SDK.
  • First release of OpenDDS Real-Time Data (RTD) for Excel an Excel Add-in
    and RTD Server. It allows visualization of an operating OpenDDS system
    from within Excel. It gives a tree view of a repository that mirrors the
    stand-alone OpenDDS Monitor application's tree view, but with the
    additional capabilities to automatically restart monitoring of a repository
    when a saved workbook is opened, monitoring multiple repositories
    simultaneously, and snapshot a repository monitor tree view.
  • Wireshark dissector improvements include removal of the restriction
    that inforepo IOR be placed in a special file. Dissector config
    files can now be generated by opendds_idl.
  • The monitor tool has a new view which is an alternate to the Graphviz
    view. The Node view uses Qt gui elements to model the OpenDDS system.
    Users can manipulate Node view graphs before saving them to PNG files.

Using the GitHub "releases" page

Download OpenDDS-3.0.zip (Windows) or OpenDDS-3.0.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 2.4

15 Jan 17:53
Compare
Choose a tag to compare

Release notes for Version 2.4 of OpenDDS

  • This will be the final release of OpenDDS that will build with the current
    patch level of TAO 1.5a. This release is compatible with (the current patch
    levels of) TAO 1.5a, and 1.6a, as well as the current DOC Group release.
    Future releases will be compatible with TAO 1.6a and the DOC group -- see
    the README file for details on TAO versions.
  • The implementation of ContentFilteredTopics now defaults to evaluating
    the filter expression at the publisher so that data samples which would
    be ignored by the subscriber can be dropped before getting to the transport.
    This feature can be turned off with "-DCPSPublisherContentFilter 0" or the
    equivalent setting in the [common] section of the configuration file.
    When using non-default DEADLINE or LIVELINESS QoS policy values, special
    consideration needs to be given to how these "missing" samples impact the
    QoS behavior, see the document in docs/design/CONTENT_SUBSCRIPTION.
  • DisjointSequence, an internal class used to track sequence numbers for both
    multicast and wait_for_acks, was enhanced to store contiguous ranges instead
    of individual values. Thus it will not require so much memory in cases where
    there are gaps in the sequence numbers.
  • Began implementing the DDS Interoperabiltiy specification aka "RTPS"
    (see OMG formal/2010-11-01). Changes in this release include fragmentation
    and reassembly for udp and multicast, 64-bit sequence numbers, and the ability
    to transmit only the key fields for the instance-control messages (register,
    unregister, dispose).
  • The monitor tool, an instrumentation viewer application for OpenDDS,
    has new options for generating and viewing directed graphs. The tool
    generates Graphviz-readable .dot files, manages converting the files to
    representative .png files, and displays the generated .png files in its
    GUI. Monitor executes Graphviz command-line tools in a separate process.
    There are no compile-time or run-time dependencies on Graphviz. The
    monitor tool will run on systems without Graphviz installed but will
    not be able to generate .png files.
  • Enhanced the Wireshark packet dissector to inspect SAMPLE_DATA message
    contents. This requires a data model expressed in an .ini file (documented
    in tools/dissector/README). In order to associate a SAMPLE_DATA message
    with a type, the publication ID is harvested from InfoRepo GIOP messages.
    In order to detect InfoRepo GIOP messages, the IOR for the InfoRepo must
    be written in a file called "IOR.txt" in the current working directory when
    wireshark is invoked.
  • Enhancements and fixes of OpenDDS Modeling SDK. Version: 1.1.0.
    • Topic types from a DcpsLib shown in Project Explorer can be
      dragged to diagram for another DcpsLib. This allows the same
      Topic to be used in multiple DcpsLibs.
    • For more, see the Eclipse online help, under "OpenDDS Modeling
      SDK Guide > Getting Started"
  • Enhancements and fixes of OpenDDS Modeling SDK. Version: 1.0.1.
    • For more, see the Eclipse online help, under "OpenDDS Modeling
      SDK Guide > Getting Started"

Using the GitHub "releases" page

Download OpenDDS-2.4.zip (Windows) or OpenDDS-2.4.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.

OpenDDS 2.3

15 Jan 17:56
Compare
Choose a tag to compare

Release notes for Version 2.3 of OpenDDS

  • First release of the OpenDDS Modeling SDK, a modeling tool that can be
    used by the application developer to define the required middleware
    components and data structures as a UML model and then generate the
    code to implement the model using OpenDDS. The generated code can
    then be compiled and linked with the application to provide seamless
    middleware support to the application. UML models are manipulated using
    a graphical editor based on Eclipse. See the OpenDDS Developer's Guide
    http://download.ociweb.com/OpenDDS/OpenDDS-latest.pdf for
    installation instructions.
  • DCPSInfoRepo no longer requires an -ORBSvcConf argument when using
    Built-In Topics. The DCPSInfoRepo process will take care of loading
    SimpleTCP (if it's not already loaded).
  • Fixed method signature of DataWriter::register_instance_w_timestamp()
    to have two arguments per the latest spec, not three.
  • "make install" is now available on platforms using GNU Make and when
    building with OCI TAO 1.6a or DOC Group TAO.
  • Added support for Microsoft Visual Studio 2010 (vc10).

Using the GitHub "releases" page

Download OpenDDS-2.3.zip (Windows) or OpenDDS-2.3.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.