.. include:: vars.rst .. _section-release_notes: ************* Release Notes ************* Language Support ================ |TSS| supports FACE TSS C and C++ APIs. .. _section-platform-support: Platform Support ================ Demonstrated Architectures -------------------------- .. note:: |TSS| 4.1.0-EAR is an early access release. It is intended for customer development evaluation. It is not intended for production; a production-ready version of 4.1.0 will be available in the future. This |TSS| release supports |CONNEXT_MICRO| 2.4.13.1, 2.4.13.4, and 2.4.13.5. |TSS| has been demonstrated with |CONNEXT_MICRO| on the platforms in :numref:`TableMicroDemoPlatforms`. .. list-table:: Connext DDS Micro - Demonstrated Architectures :name: TableMicroDemoPlatforms :widths: 10 20 10 15 25 10 :header-rows: 1 * - OS - Version - CPU - Compiler - RTI Architecture Abbreviation - OSS Profile * - LynxOS-178 - 2022.07.01 - X86 - gcc 7.1.0 - x86Lynx1782022.07.1.APEXgcc7.1.0FACE_SB - SafetyBase * - VxWorks 653 - VxWorks 653 3.0.1.1 SP5 - PPC e6500 - gcc 4.3.3 - ppce6500Vx653-3.0.1.1gcc4.3.3FACE_SB - SafetyBase * - Linux - Red Hat Enterprise Linux 8.0 - x64 - gcc 8.5.0 - x64Linux4gcc8.5.0FACE_GP - GeneralPurpose * - - Ubuntu 22.04 - x64 - gcc 11.4.0 - x64Linux5gcc12.3.0FACE_GP - GeneralPurpose * - - Ubuntu 22.04 - x64 - gcc 11.4.0 - x64Linux4gcc12.3.0FACE_SB - SafetyBase * - Microsoft Windows - Windows 11 - x64 - VS2022 - x64Win64VS2022FACE_GP - GeneralPurpose .. note:: Windows is not a FACE supported operating system. Some changes were required to get |TSS| to run. Those changes are not guaranteed to be compatible with other UoC's or UoP's ported to Windows. Some integration may be required. What's New in 4.1.0-EAR ======================= .. FACETSS-1416 Added support for FACE TSS C API -------------------------------- This release adds support for the FACE TSS C API. .. FACETSS-1096 Added support for Transport Protocol Module ------------------------------------------- Support for the FACE Transport Protocol Module (TPM) has been added. This feature has been implemented in the TSS/TA and as an adapter that works with |CONNEXT_MICRO|. Therefore, it's an option to use both RTI's Connext TSS and TPM with |CONNEXT_MICRO|. Or, either individually with other versions of TSS or TPM enabled protocols. In addition, RTI's TSS supports multiple TPMs simultaneously. Implementing this feature required a re-architecture of the |TSS|. It now implements a FACE Type Abstraction (TA) layer. In addition, this release now supports serialize and deserialize injectables. .. note:: The re-architecture required to implement TPM and other features in the 4.1.0-EAR changed the way |TSS| sets up and sends data with DDS. At the time of this release, 4.1.0-EAR interoperability with FACE applications using Connext TSS 3.1.2 and 3.1.1 is not tested. .. FACETSS-1304 Implemented certifiable FACE String and Sequence classes -------------------------------------------------------- This release implements the FACE string and sequence classes in C and wraps them with an optional C++ API. This new implementation is easier to certify and addresses the following issues reported in previous versions: * Freeing and reallocating string and sequence classes did not work in Safety Base. * Destructor of sequences of sequences created a memory leak. * The C++ sequence class required casting. * Bound, Capacity, and Length of sequences of structures became corrupted. * Having two sequence types in the same structure could crash the application. .. FACETSS-1782 RTI logging replaced by FACE logging ------------------------------------ RTI's proprietary logging has been replaced with the FACE logging injectable. For more information, see the :ref:`api_logging` section of the API reference. .. FACETSS-1793 Added support for LynxOS-178 ---------------------------- Support for the LynxOS-178 ARINC operating system has been added. .. FACETSS-1373 Added support for FACE GUIDs ------------------------------ To increase FACE conformance, |TSS| now supports FACE GUIDs. .. FACETSS-1750 Added injectable interface for callbacks ---------------------------------------- Added an injectable interface for callbacks. .. THIRDPARTY-284 Third-party software changes ---------------------------- The following third-party software is now used by |TSS|: .. list-table:: New Third-Party Software :name: TableThirdPartySoftwareNew410 :widths: 60 30 :header-rows: 1 * - Third-Party Software - Version * - XML Parser for C - 0.1.0 For information on all third-party software used by |TSS|, see the :ref:`section-thirdparty` document in this manual. What's Fixed in 4.1.0-EAR ========================= .. FACETSS-1296 Sequences of arrays caused compile errors ----------------------------------------- The managed copy constructor of a sequence of arrays attempted to copy the contained arrays incorrectly. [RTI Issue ID FACETSS-1296] .. FACETSS-1279 Possible memory leak when RTI_TSS_Impl_new() did not check for NULL after allocation ---------------------------------------------------------------------------------------- If memory was unavailable, a null pointer could have been passed to an underlying DDS call when creating a new TSS instance. [RTI Issue ID FACETSS-1279] .. FACETSS-1370 No longer necessary to use #ifdef FACE_SEQUENCE_AND_STRING_IMPLEMENTED flag --------------------------------------------------------------------------- The ``FACE_SEQUENCE_AND_STRING_IMPLEMENTED`` flag has been removed. Therefore, it's not necessary to use this flag to enable strings and sequences. [RTI Issue ID FACETSS-1370] .. FACETSS-1653 Known Issues in 4.1.0-EAR ========================= .. FACETSS-1490 Problems with the C and C++ API html documentation -------------------------------------------------- There are problems with the Doxygen-generated C and C++ API documentation. Some content is missing, and other content is not in the correct location. As a workaround, refer to the :ref:`section-api_reference` section in this manual. This section describes the C++ API; the C API is identical, except that the function names replace all instances of ``::`` with ``_``. [RTI Issue ID FACETSS-1490] .. FACETSS-1749 Static tables that allocate memory for hash tables is determined at compile time -------------------------------------------------------------------------------- The size of the internal hash tables is defined at compile time and cannot be changed at runtime. [RTI Issue ID FACETSS-1749] .. FACETSS-1862 Windows Emitter Warnings ------------------------ When building examples on Windows, VS compiler warns that some files were not generated by the output and could cause incremental build issues. [RTI Issue ID FACETSS-1862] Previous Releases ================= What's New in 3.1.2 ------------------- .. FACETSS-998 Added support for Deos 653 ^^^^^^^^^^^^^^^^^^^^^^^^^^ This release adds support for building the TSS libraries on the DDC-I DESK Console, as well as an example to be built and run on a Deos 653 CPU via OpenArbor. .. FACETSS-939 Changed Logging verbosity to be set by command line switches ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In this release, logging verbosity is changed by command line switches passed to Cmake while building the TSS Libraries. See the :ref:`build-cmakeCommand-label` section of the :ref:`section-build` chapter for more information. .. note:: Logging verbosity can only be set at compile time, not at run time. .. FACETSS-1021 Renamed Cmake architecture files for VxWorks7 to include FACE_GP ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The cmake architecture files ``armv8Vx7SR0660llvm10.0.1.cortex-a53.cmake`` and ``armv8Vx7SR0660llvm10.0.1.cortex-a53_rtp.cmake`` have been renamed to ``armv8Vx7SR0660llvm10.0.1.cortex-a53FACE_GP.cmake`` and ``armv8Vx7SR0660llvm10.0.1.cortex-a53_rtpFACE_GP.cmake``, respectively. What's Fixed in 3.1.2 --------------------- .. FACETSS-1086 Build time FACE conformance warning message ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In previous releases, when building |TSS| with |CONNEXT| *Professional* for the FACE GeneralPurpose profile, the build system generated the following message: .. code-block:: bash -- Connext TSS with Connext DDS Pro does not conform with FACE GeneralPurpose Profile in this version. This message was not accurate and is no longer generated. [RTI Issue ID FACETSS-1086] .. FACETSS-729 Double quotation marks in command line contexts ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In the Porting documentation for this release, instances of double quotation marks (“) in command line contexts have been changed to double quotes (") to avoid corrupting OpenArbor projects with copied and pasted commands. [RTI Issue ID FACETSS-729] .. FACETSS-905 Source file types.c was compiled when flag was set to true ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In previous releases, the file ``src/micro/types.c`` was still compiled and linked with the |TSS| library when ``FACE_SEQUENCE_AND_STRING_IMPLEMENTED`` was set to false. This issue has been resolved. [RTI Issue ID FACETSS-905] .. FACETSS-679 Receive_Message() unable to retrieve multiple messages in the reader queue ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ When a TSS application called ``Receive_Message()`` while multiple messages were present in the reader queue, the next ``Receive_Message()`` call would block on the waitset until a new sample arrived or the timeout expired. This issue has been resolved. [RTI Issue ID FACETSS-679] What's New in 3.1.1 ------------------- Removed the Static Configuration API ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. FACETSS-705 Static configuration has been removed from the TSS code and generated files. Some header files have been removed, hence, this release is incompatible with previous engineering releases. There are changes to the generated files as well; code regeneration is required for this release. Previous engineering releases included a note that this was being deprecated. Now it is removed. Updated source files to meet RTI and FACE coding standards ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. FACETSS-716 The source files have been reformatted to meet the RTI and FACE coding standards. Updated parameter checking and return codes ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. FACETSS-855, FACETSS-859 This release includes updated parameter checking and the associated return codes for the SafetyBase profile. What's Fixed in 3.1.1 --------------------- Updated rtiddsgen to meet FACE 3.1 Conformance ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. FACETSS-641 A bug in rtiddsgen caused the TypedTS and TypedTS Injectable files to not be generated in the folder structure defined in the spec. This issue has been resolved. The TypedTS and TypedTS Injectable files will now be created in the correct folder structure. [RTI Issue ID FACETSS-641] Known Issues in 3.1.1 --------------------- Compiler warnings ^^^^^^^^^^^^^^^^^ When building for VxWorks 7 systems with the llvm 10.0.1 compiler (armv8Vx7SR0660llvm10.0.1.cortex-a53_rtp_pro_Release), you may get a *'CPU macro redefined'* compile warning if ``-Wmacro-redefined`` is enabled on the compiler command line. You may also see a ``-Wreturn-type-c-linkage`` warning. These warnings do not affect |TSS| during runtime. [RTI Issue ID FACETSS-955] Warning when loading hello_goodbye_dkm_static example ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The following warning occurs when loading the ``hello_goodbye_dkm_static`` example into a physical board: .. code-block:: bash ld 1< hello_goodbye_app.so Warning: module 0xffff800000aaab60 holds reference to undefined symbol __dso_handle. ld(): module contains undefined symbol(s) and may be unusable. value = 0 = 0x0 This issue does not affect |TSS| during runtime. [RTI Issue ID FACETSS-1048]