4. Release Notes

4.1. Supported Platforms and Browsers

System Designer 6.1.2 is compatible with Connext DDS 6.1.2. It is available for the following platforms.

Table 4.1 Supported Platforms

Operating System

Version and CPU

Browsers

Linux®

All Intel 64-bit Linux platforms listed in the RTI Connext DDS Core Libraries Release Notes with the same version number.

Tested on Ubuntu® 18.04 LTS only, with Chrome® version 77 and Firefox® version 69.

macOS®

All Intel 64-bit macOS platforms listed in the RTI Connext DDS Core Libraries Release Notes with the same version number.

Tested on macOS 10.14 only, with Chrome version 77, Firefox version 69 and Safari® version 12.

Windows®

All Intel 64-bit Windows platforms listed in the RTI Connext DDS Core Libraries Release Notes with the same version number.

Tested on Windows 10 only, with Chrome version 77 and Firefox version 69.

System Designer is not supported on POSIX-compliant architectures that end with “FACE_GP” or any custom-supported platforms.

System Designer works with these browsers:

  • Chrome version 77

  • Firefox version 69

  • Safari version 12

4.2. Compatibility

For backward compatibility issues between System Designer 6.1.2 and previous releases, see the Migration Guide on the RTI Community Portal (https://community.rti.com/documentation).

4.3. What’s New in 6.1.2

4.3.1. New platforms

System Designer is supported on these new platforms:

Table 4.2 New Platforms

Operating System

Version and CPU

Linux

Ubuntu 22.04 on x64

macOS

macOS 12 on x64

Windows

Windows 11 on x64 with Visual Studio 2022

For details on these platforms, see the RTI Connext DDS Core Libraries Platform Notes for this release.

4.3.2. Third-party software upgrades

The following third-party software change has occurred in System Designer:

Table 4.3 Third-Party Software Upgrade

Third-Party Software

Previous Version

Current Version

express-fileupload

1.2.1

1.4.0

This upgrade may fix potential vulnerabilities. See Potential vulnerability: Possible crash when receiving a modified form.

For information on third-party software used by Connext DDS products, see the “3rdPartySoftware” documents in your installation: <NDDSHOME>/doc/manuals/connext_dds_professional/release_notes_3rdparty.

4.4. What’s Fixed in 6.1.2

4.4.1. Potential vulnerability: Possible crash when receiving a modified form

System Designer had a third-party dependency on express-fileupload version 1.2.1. This version had a dependency on dicer, which is known to be affected by a number of publicly disclosed vulnerabilities. These vulnerabilities have been fixed by upgrading express-fileupload to the latest stable version, 1.4.0.

For System Designer, the impacts of using express-fileupload 1.2.1 were:

  • Exploitable through a malicious form sent to the System Designer server.

  • The System Designer server could crash upon receiving the malicious form. A complete denial of service could be achieved by repeatedly sending the malicious form to the System Designer server.

  • CVSS v3.1 Score: 7.5 HIGH

  • CVSS v3.1 Vector: AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

[RTI Issue ID SYSD-1029]

4.4.2. Renamed items were not updated in System Designer’s UI

References to items were not updated in System Designer after the item was renamed. This caused System Designer to generate an invalid configuration file. This problem has been resolved. Now System Designer will automatically update all the references to the renamed item.

[RTI Issue ID SYSD-975]

4.5. Previous Releases

4.5.1. What’s New in 6.1.1

4.5.1.1. Improved usability of the XML view

The following improvements have been made to the XML view:

  • The “Codegen” button has been renamed “Check with Codegen,” and a tooltip has been added to the button.

  • When entering the XML view, if the project only contains one XML file, that file will be selected by default in the XML file dropdown box.

See XML Validation for information on the XML view.

4.5.1.2. Added sanity checks to mask multiselectors in QoS editor

QoS properties that are masks can be edited by selecting options from a multiselect dropdown. This dropdown has been modified so that you can no longer select nonsensical combinations of options, like MASK_ALL and MASK_NONE.

Mask Dropdown

4.5.1.3. Changes to supported platforms

4.5.1.3.1. Validation of macOS 11 on x64 CPUs

This release has validated that the libraries for architecture x64Darwin17clang9.0 can also be used on macOS 11 (Big Sur) systems with x64 CPUs. For information on this platform, see the RTI Connext DDS Core Libraries Platform Notes for this release.

4.5.1.3.2. Ubuntu 16.04 LTS on x64 CPUs available on demand

Ubuntu 16.04 LTS on x64 CPUs (x64Linux3gcc5.4.0) is still supported, but now it is only available on demand. Please contact support@rti.com if you need to use this platform.

4.5.1.4. Third-party software upgrades

The following third-party software changes have occurred in System Designer in this release:

Table 4.4 Third-Party Changes

Third-Party Software

Previous Version

Current Version

nodejs®

10.16.3

10.24.1

shelljs

0.7.4

No longer used by System Designer

adm-zip

0.4.11

0.5.9

body-parser

1.15.0

1.19.1

express

4.13.4

4.17.2

express-session

1.13.0

1.17.2

fs-extra

9.1.0

10.0.0

mkdirp

1.0.3

1.0.4

open

8.0.4

8.4.0

sax

1.2.1

1.2.4

session-file-store

0.2.1

1.5.0

sprintf-js

1.0.0

1.1.2

sanitize-filename

1.6.0

1.6.3

webix-pro

7.2.0

9.1.4

Material Design Icons

5.8.55

6.5.95

For information on third-party software used by Connext DDS products, see the “3rdPartySoftware” documents in your installation: <NDDSHOME>/doc/manuals/connext_dds_professional/release_notes_3rdparty.

4.5.2. What’s Fixed in 6.1.1

4.5.2.1. System Designer only allowed a single entity QoS to be configured inside of a QoS Profile

System Designer only allowed a single entity QoS to be configured inside of a QoS Profile. This problem has been resolved. Now, System Designer will allow the definition of multiple entity QoSes within a QoS Profile. Because of this change, the following improvements have been made to the inheritance logic:

  • Use topic_filters and topic_ref when calculating which profile to inherit from. In previous releases, these fields were not taken into account.

  • Enable DataReader QoSes and DataWriter QoSes to inherit from a Topic QoS. In previous releases, this inheritance was not supported.

  • Fix an issue that prevented the Snippet profiles from being taken into account in some cases.

  • Fix an issue that prevented System Designer from finding the parent QoS when the base_name contained the entity name.

As a result of these changes, duplicated tags are no longer supported. System Designer will report an error if a duplicate tag is found. For example, if the XML file contains two <property> tags inside a <domain_participant_qos> tag, System Designer will report the following error:

Duplicated tag: property in domain_participant_qos definition

System Designer only allows duplicated tags when defining an entity QoS inside a qos_profile or a qos_library.

System Designer’s user interface has also been updated to display multiple entity QoSes instead of only one as in in previous releases.

[RTI Issue ID SYSD-304]

4.5.2.2. System Designer failed to run if content of session.json file was invalid

System Designer failed to run if the session.json file was corrupt—for example, empty. It failed with the following error:

Uncaught SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at scenarioEditorReloadSessions (rti_sd.min.js:1)
    at Object.e.main (rti_sd.min.js:1)
    at rti_sd.min.js:1

This problem has been resolved. Now, System Designer will not only create the session.json if it is the first time that System Designer is run, but it will also recreate the file if its content is invalid.

[RTI Issue ID SYSD-874]

4.5.2.3. @key fields could be set in derived structure if base structure was keyed

Previously, @key fields could be set in a derived structure regardless of whether any of the base structures were keyed. The OMG ‘Extensible and Dynamic Topic Types for DDS’ specification, version 1.3, however, states the following:

“A Structure Type may inherit from another Structure Type as long as the following conditions are met:

  • The derived type does not define any key fields. This ensures the key fields of the derived type are the same as those of the base root type.”

If an existing XML contains @key fields, System Designer will now report a warning message and remove the @key annotation for that member.

[RTI Issue ID SYSD-885]

4.5.2.4. System Designer allowed defining an invalid datatype that could not be used by Code Generator

System Designer allowed defining an invalid datatype that could not be used by RTI Code Generator. This problem has been resolved. The following changes have been made in System Designer to avoid defining an invalid type:

  • When creating a new type or a new member inside a type, the suggestion list will only show types that are defined above the new type/member. Previously, the suggestion list included all the types defined in the Types tab.

  • When trying to move an element up or down, System Designer now will check if it is possible to move the element. If not, it will display a warning. For example:

    struct NewStruct1
    struct NewStruct2: NewStruct1
    

    In this example, System Designer will show a warning if you try to move the first struct down or the second struct up. The parent of the second struct is the first one, and moving the elements will produce an invalid datatype that cannot be used by Code Generator to generate code.

[RTI Issue ID SYSD-895]

4.5.2.5. System Designer allowed setting a floating number to an integer field

System Designer allowed setting a floating number to an integer field. This problem has been resolved. Now System Designer raises an error when attempting to use a decimal value, such as 1.3, in an integer field. The affected fields include constant value and annotations such as @default, @min, and @max.

[RTI Issue ID SYSD-897]

4.5.2.6. System Designer allowed using @resolve_name annotation on basic types

System Designer allowed using the @resolve_name annotation on basic types. This problem has been resolved. Now System Designer will disable the @resolve_name field if the type is a basic type. System Designer will also remove @resolve_name annotations on basic types when loading a previously created XML/IDL file.

[RTI Issue ID SYSD-899]

4.5.2.7. System Designer failed when creating a constant of a type defined by a TypeDef

System Designer failed when creating a constant of a type defined by a TypeDef. This problem has been resolved.

[RTI Issue ID SYSD-921]

4.5.2.8. Types defined by a TypeDef couldn’t be used as union discriminators

Types defined by a TypeDef couldn’t be used as union discriminators in System Designer. This problem has been resolved. Now types defined by a TypeDef can be used as union discriminators.

[RTI Issue ID SYSD-923]

4.5.2.10. XML validation failed if XML file was located in path with spaces

XML validation failed if the XML file was located in a path with spaces. This problem has been resolved.

[RTI Issue ID SYSD-927]

4.5.2.11. System Designer failed to move up an item if you removed the previous item

System Designer failed to move up an item if you removed the previous item:

Move Up Button

It failed with the following error:

Uncaught Error: Invalid position
    at e.DDSSystemTypes.u.swapChildren (rti_sd.min.js:1)
    at u.P (rti_sd.min.js:1)
    at u.scenarioEditorOnEventProtected (rti_sd.min.js:1)
    at u.click (rti_sd.min.js:1)
    at Object.<anonymous> (core.js:357)
    at Object.callEvent (eventsystem.js:56)
    at y (customevents.js:7)
    at HTMLBodyElement.<anonymous> (ready.js:56)

This problem has been resolved.

[RTI Issue ID SYSD-930]

4.5.2.12. drop_incomplete_coherent_set element missing from PRESENTATION QosPolicy

The drop_incomplete_coherent_set element was missing and has been added to the PRESENTATION Qos Policy.

The QoS tab in general has also been updated, reorganizing the elements to match their positions in the QoS Policy structure as documented in the API Reference HTML documentation.

[RTI Issue ID SYSD-937]

4.5.2.13. Invalid first option shown when selecting a value for any Mask field

System Designer showed an invalid first option when selecting a value for any Mask field. This problem has been resolved.

[RTI Issue ID SYSD-938]

4.5.2.14. Empty value for kind field if value in XML started with DDS_

System Designer showed an empty value for a kind field if its value in XML started with DDS_. For example, if the XML contained DDS_BEST_EFFORT_RELIABILITY_QOS instead of BEST_EFFORT_RELIABILITY_QOS, System Designer showed an empty value for that field. This problem has been resolved.

[RTI Issue ID SYSD-943]

4.5.2.15. Invalid behavior when browsing folders using File Browser window

Invalid behavior occurred when browsing folders using the File Browser window:

  • System Designer showed an invalid Path when trying to open a project file if you clicked on any directory.

  • Typing escape didn’t close the File Browser window if you navigated to a different directory.

These issues have been resolved.

[RTI Issue ID SYSD-945]

4.5.2.16. “Multi channel” editor failed to dismiss dialog when clicking OK

The “Multi channel (Multicast Channel QoS Policy)” editor failed to dismiss the dialog when clicking the OK button. This problem has been resolved.

Multichannel Editor Problem

The “Multi channel” editor has also been improved by adding a pick list of the available transports for you to select, rather than your having to type in the transport.

Multichannel Transport Picklist Problem

[RTI Issue ID SYSD-949]

4.5.2.17. Failure to load XML file if any <group_data>, <user_data>, or <topic_data> tags used a value from new representation added in 6.1.0

Release 6.1.0 updated the type used by <group_data>, <user_data>, and <topic_data>. The new representation is a xs:hexBinary value. System Designer was not updated to support this new representation. As a result, System Designer failed when trying to load an XML file containing a value from the new representation.

This problem has been resolved; however, due to the fix, now only values from the new representation can be added when using System Designer. The old format, in which the content is provided as a set of comma-separated decimal or hexadecimal element values, will still be accepted by System Designer; however, it will be transformed into the new format.

For more information about this change see XML Compatibility, in the RTI Connext Migration Guide.

[RTI Issue ID SYSD-959]

4.5.2.18. Failure to show content of some directories if path to directory contained special characters

System Designer failed to show the content of some directories if the path to that directory contained any special characters, such as +. This problem has been resolved.

[RTI Issue ID SYSD-970]

4.5.2.19. Error when adding non-alphanumeric characters to name of any entity in Domain or Participant tab

System Designer did not allow adding non-alphanumeric characters, except . and _, to the name of any entity in the Domain or Participant tab. This problem has been resolved.

[RTI Issue ID SYSD-971]

4.5.3. What’s New in 6.1.0

System Designer 6.1.0 is the first official release of System Designer.

If you had access to previous experimental releases, this release makes the product more robust and adds new functionality.

System Designer 6.1.0 is built on Connext DDS 6.1.0. The previous, experimental release of System Designer (version 0.4.0) was built on Connext DDS 6.0.1.

4.5.3.1. Improved XML and IDL view with Markdown

The text area of the XML and IDL view has been improved with Markdown. For example, tags and attributes are now highlighted in XML.

Markdown in Text Area

4.5.3.2. New validation button to check XML files with Code Generator

A new validation button enables you to select an XML file and have it validated by Code Generator to confirm that the current state of the file can be used to generate code. This validation also provides the output from Code Generator if there are errors.

Validate XML

4.5.3.3. Ability to view content of a specific IDL file

Now you can view the content of a specific IDL file. To do so, select the Types tab, then the IDL tab. Choose a file from the list of IDL files in the drop-down menu. This is similar to the behavior of the XML tab.

4.5.3.4. Valuetypes enabled by advanced project properties

Valuetypes are deprecated and therefore can only be activated via a project setting in the project properties file. To use valuetypes in System Designer, navigate to Project -> Properties -> Advanced -> and check the Enable Valuetypes check box.

4.5.3.5. Support for use of environment variables as domain ID

System Designer now allows setting the domain ID as an environment variable $(ENV_VAR_DOMAIN_ID).

4.5.3.6. Delete project files when removing a project

Now when you remove a project from the System Designer workspace, you can also choose to delete the project files from the filesystem.

4.5.3.7. Create a domain without a domain ID

It is no longer a requirement to set a domain ID when creating a domain.

4.5.3.8. “Add” buttons merged into a single, context-aware Add button

The Add buttons in the QoS, Domain, and Participant panels have been merged into a single context-aware Add button. This new button contains the same functionality as the previous two add buttons in each panel. Previously, to create a QoS you had to click first on +Library to create a library and then +Profile to create a profile inside the library. Now, you need only click on the Add button to first create a Library, and then, with the library selected by default, click Add again to create a profile inside the library.

4.5.3.9. Updated “Configure Security” dialog with new security properties

The “Configure Security” dialog for a Participant QoS has been updated. The following fields have been added to configure new security properties; an example is shown below:

  • DataWriter Data and Metadata Key Sharing Enabled (Cryptography tab)

  • RTPS Protection Key (Cryptography tab)

  • Alternative Permissions CA certificate(s) (Access control tab)

  • Alternative CA file(s) (Authentication tab)

  • Enforce X.509 v3 Extension (Authentication tab)

Cryptography Tab New Elements

In addition, the following fields and properties have been added to the “Security Global Settings” dialog; an example is shown below:

  • Private Key Password (Authentication tab)

  • Authentication Request Timeout (sec) (Participant Trust tab)

  • Simple Participant Discovery DataReader’s Mode (Participant Trust tab)

Global Authentication Tab New Elements

4.5.4. What’s Fixed in 6.1.0

4.5.4.1. Existing comments in XML/IDL text area not updated when modified

Editing an existing comment in the XML/IDL view via the Comment box in the upper-right didn’t update the comment in the text area. The updated comment was only shown after reopening the XML/IDL view. Now the comment is updated without reopening the XML/IDL view.

Comments

[RTI Issue ID SYSD-727]

4.5.4.2. Invalid content in IDL view when using aliases

Using aliases (long, short, …) for types resulted in “undefined” types in the IDL view. Now aliases are properly shown in the IDL view.

[RTI Issue ID SYSD-740]

4.5.4.3. Crash when trying to create a type inside a module

System Designer crashed when trying to create a type inside a module under the following circumstances:

  • Select a module and click on the + button located in the Structured View. Don’t select any element and instead click outside of the menu.

  • Click on the + button near the Help button. Again, don’t select any element and click outside the menu.

  • Click again on the + button located in the Structured View.

This problem has been resolved.

[RTI Issue ID SYSD-765]

4.5.4.4. Uint64 member produced invalid IDLs

Adding a Uint64 member to a structure produced an invalid IDL. This issue has been resolved.

[RTI Issue ID SYSD-766]

4.5.4.5. Use of constants in @min, @max, and @default fields

System Designer now allows you to use constant value names in @min, @max, and @default fields.

[RTI Issue ID SYSD-767]

4.5.4.6. Version control issues

System Designer saved the project path (ui_projectPath), causing issues when dealing with the version control system. This issue has been resolved.

[RTI Issue ID SYSD-769]

4.5.4.7. Inheritance Chain edit icon was enabled when the QoS Profile was a QoS Snippet

The Inheritance Chain edit icon was enabled when the QoS Profile was a QoS Snippet. Now the edit button is only enabled when the QoS profile is not an QoS Snippet.

[RTI Issue ID SYSD-810]

4.5.4.8. Unbounded sequences of strings converted to strings

Refreshing System Designer caused unbounded sequences of strings to be transformed into strings. This problem has been resolved.

[RTI Issue ID SYSD-816]

4.5.4.9. System Designer failed to delete QoS Library, Domain Library, and Participant Library

Previously, when you deleted a QoS Library, Domain Library, or Participant Library, then later reopened the project, System Designer had actually failed to delete the library. Now System Designer deletes it.

[RTI Issue ID SYSD-833]

4.5.4.10. Union Editor did not allow addition of cases after adding default case

Previously, System Designer prevented you from adding any cases to a union after the “default” case was added. Now you can. As part of this fix, System Designer now also prevents you from adding duplicate default cases.

[RTI Issue ID SYSD-835]

4.5.4.11. System Designer didn’t allow creating a constant of an enumerator

System Designer now allows you to create a constant of an enumerator.

[RTI Issue ID SYSD-839]

4.5.4.12. List of XML files incorrectly updated when importing invalid XML file

If the process of importing an XML file failed—for example, the XML file contained an element already defined in the open project—System Designer still showed that file in the list of XML files. This problem has been resolved.

[RTI Issue ID SYSD-854]

4.5.4.13. List of XML files in XML view not updated when creating new XML file

The list of XML files in the XML view was not updated when creating a new XML file. Now, the newly created file will be shown in the list of XML files.

[RTI Issue ID SYSD-855]

4.5.4.14. Browse button in EZ-Secure dialog didn’t work

Selecting a folder by the Browse button in the EZ-Secure dialog didn’t work. This prevented System Designer from generating all the required Secure files and updating the participant QoS. This issue has been resolved.

[RTI Issue ID SYSD-862]

4.5.4.15. Invalid (HTTP) 400 Bad Request when checking if a file exists

System Designer produced a (HTTP) 400 Bad Request if, when checking if a file exists, the file didn’t exist. This problem has been resolved. System Designer no longer produces an error in this case.

[RTI Issue ID SYSD-871]

4.5.4.16. Updated security property names

The following security properties have been renamed to match the latest DDS Security speficication:

Legacy property name (prefix with com.rti.serv.secure)

New property name (no prefix)

authentication.ca_file

dds.sec.auth.identity_ca

authentication.private_key_file

dds.sec.auth.private_key

authentication.certificate_file

dds.sec.auth.identity_certificate

access_control.permissions_authority_file

dds.sec.access.permissions_ca

access_control.governance_file

dds.sec.access.governance

access_control.permissions_file

dds.sec.access.permissions

The legacy property names are no longer supported. System Designer will generate a warning if it detects any of the legacy property names being used by any XML file. For example, if the following XML file is loaded:

<participant_qos>
  <property>
      <value>
          <element>
              <name>com.rti.serv.secure.authentication.ca_file</name>
          </element>
      </value>
  </property>
</participant_qos>

System Designer will generate the following warning:

com.rti.serv.secure.authentication.ca_file has been deprecated, System Designer will
ignore its value. Please update the property name with the new one:
<dds.sec.auth.identity_ca>

These properties have been moved from the Security Configuration dialog to the Global Security configuration. This dialog can be accessed by clicking on the “Globals” button in the Security Configuration dialog.

[RTI Issue ID SYSD-875]

4.5.4.17. System Designer crashed when attempting to load XML file that contained a forward_dcl

System Designer crashed when attempting to load an XML file that contained a forward declaration (forward_dcl). This issue has been resolved.

[RTI Issue ID SYSD-876]

4.5.4.18. @key fields couldn’t be set in derived structures

A derived structure couldn’t configure any of its members to be keyed. Now it can.

@key grayed out

[RTI Issue ID SYSD-882]

4.5.4.19. System Designer failed to import a zip project in Windows

System Designer failed to import a zip project in Windows with the following error:

SyntaxError: Unexpected token U in JSON at position XX

This problem has been resolved.

[RTI Issue ID SYSD-898]

4.6. Known Issues

Modules can be defined in multiple files, and each file might define the module with different annotations:

  • @autoid

  • @transfer_mode

  • @language_binding

  • @allowed_data_representation

Semantically, those annotations (when defined in a module) apply only to the contained entities.

Since internally modules are identified by a single object, when their definition comes from multiple files, their annotations must be the same.