Tangram Pro™ Release Notes

Week of July 12, 2021

Features and Updates

AADL Export

  • Download an AADL representation of a Tangram Pro™ Component from the Workspace

New Message Transforms

  • Additional bidirectional transforms between LMCP and OMS are available in Tangram Pro™

Flex Compositional Transforms

  • Expanded transform capabilities to generate transforms between two message where an explicit direct transform does not exist, but intermediate transforms do

Flex REPL

  • Updated Flex REPL

Helm Chart Network Policy

  • Security enhancements to deployments in Kubernetes

Sentry Error Reporting

  • Aggregation of anonymous error data to a central location for faster bug mitigation in Tangram Pro™
4 Likes

Really exciting features being added with each release!

2 Likes


Week of August 2, 2021

Features and Updates

FlexLang Editor

  • First step to enable Flex authorship
  • View Tangram Flex “canonical” message sets and transforms
  • Create Flex custom packages
  • Create/edit Flex modules and Flex files (future use in making Flex authored messages in component ports)
  • Line column indexing and deep linking are featured in the editor

Deployment

  • Greater visibility into Kubernetes resources for more intelligent allocation of services across nodes

Code-Generation

  • Improved performance resulting from paying off tech debt and bug fixes
2 Likes

Flex Authorship is looking fantastic! Very excited about the future of this product!

1 Like

Week of September 13, 2021

Features and Updates

Flex Authorship

  • Add support for your own message set to Tangram Pro™
  • Create Your Own Message Set in FlexLang Editor including error checking
  • Publish the Message Set
  • Leverage the Message Set in a Component Based Design
  • Generate a Component Software Interface Leveraging the Message Set

Flex Authorship Tutorial

Note: Flex Documentation is coming soon and will be posted at https://docs.tangramflex.io/docs/flex/flex_overview. In the meantime, for questions on using the Flex Language post to https://discuss.tangramflex.io/

Week of November 15, 2021

Features and Updates

Flex Editor

  • Get help while writing Flex code. Click the gear icon on the top right while editing a Flex file to access Flex Docs.
  • Improved live type checking, which includes error highlighting for misspelled/nonexistent types referenced in a field.

Flex Language Documentation

  • Check out the latest update to Flex Docs! Here you will find information on how to get started writing Flex code. Included is an overview of the syntax of Flex with details about built-in types, operators, and literals. As well as how to declare objects, types, messages, functions, and transforms. We will continue to add more information over time. Stay tuned!

Transforms

  • Expanded the available Transform Functions between Message Sets.

Code Generation

  • Improved CSI Code Gen related to STANAG-4586 Messages.
  • Improved CSI Code Gen related to Rust language output.

MAVLink (Upcoming)

  • Our engineers have laid the groundwork to support MAVLink in Tangram ProTM. Look for MAVLink Message Sets in an upcoming release!

Fixes

  • Resolved an issue related to Admin LDAP Configuration.
  • Resolved an issue related to choosing “Accept Latest” after updating a Component used in a Transform.
2 Likes

Week of Dec 6th, 2021

Features and Updates

MAVLink

  • MAVLink Messages are now available in Tangram ProTM! :tada:
    “MAVLink is a very lightweight messaging protocol for communicating with drones (and between onboard drone components).” Select the MAVLink::v23 Message Set when editing a Component to choose between hundreds of new Messages.

Flex Editor

  • Contextual Transforms are now supported in Flex, allowing you to inject more dynamic information to Transforms based on context.
  • Improved live type checking, including error highlighting for unknown parameterized types (optional, stream, array, tuple), and allowing a bracket { to exist next to the return type of a function without a space.

Code Generation

  • Using Transforms between Components? Now with the Transform Workflow Plugin: CSI Message Transform, you can generate a full CSI-to-CSI Message Transform all in one go! This plugin will produce code for each Component, its Messages, and the Transform between them.
  • Improved code generation related to custom Messages authored in the Flex Editor which use data types defined in other modules/packages.

Transforms

  • Expanded the available Transform Functions between Message Sets.

Fixes

  • Resolved an issue related to value casting in Flex.
  • Resolved an issue related to list pagination with multiple Integrations.
  • Resolved an issue related to a blank screen in the Workflows Panel.
2 Likes

Week of Jan 3rd, 2022

Features and Updates

Streamed Workflow Logs

Workflow logs are now visible in the browser! You can view them without needing to download them.

  • Live progress of Workflow logs.
  • Color-coded breakdown of steps in a Workflow and the status of each one.
  • Visible logs for completed Workflows.

workflow_logs

Kaniko Workflow Plugin

  • “Kaniko Container Build” is now available as a Workflow Task. This allows you to build a Dockerfile from a Git repository.

Teams

  • Team Member Roles are now available to delineate between Viewer, Maintainer, and Owner.

Flex Editor

  • Improved live type checking, including duplicate field name detection and inferred variable types when calling getOrElse().

Code Generation

  • Under-the-hood enhancements to C++ Code Gen, serialization, and deserialization.

Fixes

  • Resolved an issue related to CSI Message Transform output and the compiled transform binary.
  • Resolved an issue related to the Workflows Panel when multiple Component tabs are open.
2 Likes

I really like the scroll and the logs now. Helps to show progress.

Week of March 7th, 2022

Features and Updates

Single Sign-On with OAuth

  • Tangram Pro™ can now be configured with a Single Sign-On authentication provider to simplify username and password management.
  • When configured, users can log in by clicking the “Log in with [provider name]” button instead of entering their Tangram Pro™ username and password.

Run-Time Assurance

  • Capture and validate messages in flight with built-in run-time assurance capabilities.
  • Tangram Pro™ generated CSI code now includes event hooks at various levels (Transport, Serialization, Generic API, and Message Sequence) to send, receive, and validate messages.

Activity

Audit Log

  • Admins can now view a history of changes made by all users in the new Audit Log section.

ROS Message Serializer

  • Tangram Pro™ generated CSI code now includes a ROS Serializer.

Serialization Tests

  • Updated AFL fuzzer to AFL++.
  • Updated serialization & deserialization tests to support AFL++ using the afl-clang-fast compiler, which now runs up to 20x faster.

Fixes

  • Resolved an issue preventing LMCP <> STANAG transforms from appearing in Tangram Maker™.
2 Likes

Week of March 28th, 2022

Features and Updates

ROS Support

  • ROS Messages are now available in Tangram Pro™ and Tangram Maker™! :tada:
  • Users can generate a CSI (Component Software Interface) that can communicate with a ROS system. “ROS (Robot Operating System) provides libraries and tools to help software developers create robot applications.”
  • Select the ROS::Common::v1 Message Set when editing a Component to choose between over a hundred new Messages. This Message Set contains commonly used messages in ROS, including messages for actions (actionlib_msgs), diagnostics (diagnostic_msgs), geometric primitives (geometry_msgs), robot navigation (nav_msgs), and common sensors (sensor_msgs), such as laser range finders, cameras, point clouds.

Workflow Duration

  • Running a Workflow now displays a duration timer above the progress bar.
    Workflow_Timer
  • Completed Workflows display the total duration.
    Workflow_Duration

Flex Editor

  • Improved live type checking, including error highlighting when extending a non-extensible struct.
  • Responsive tab resizing as more Flex files are opened, allowing you to view more tabs at once.
  • File Explorer highlights the Flex file currently being edited.

Code Generation

  • New CSV Serializer :tada: Generated CSI code now includes a CSV Serializer.
  • Run-Time Assurance hooks to are now available with the CSV and ROS Serializers.
  • Serialization Tests are now available with the CSV and ROS Serializers.

Site Performance

  • Reduced the loading time of various site assets, giving users a nice speed boost.

Transforms

  • Expanded the available Transform Functions between Message Sets.

Fixes

  • Resolved an issue related to navigation menu tooltips.
  • Resolved an issue related to Flex module tabs remaining open when the package is closed.
  • Resolved an issue related to deleting a Flex package while its files are open.
  • Resolved several minor issues related to Code Generation.

Week of May 9th, 2022

Features and Updates

Flex Editor

  • New keyboard shortcuts are available in the Flex Editor. Click the gear icon while editing a file to see them.

  • New built-in function arrayConcat() is supported for concatenating two arrays. For example:
    let array1 : int32[] = [1, 2, 3, 4];
    let array2 : int32[] = [5, 6, 7, 8];
    let concatAr : int32[] = concatArray(array1, array2);

  • The error tray will now automatically open when an error is detected.

  • Publishing a Flex package is now prevented if its files have unsaved changes, and a warning dialog is shown.

Workflows

  • Logs are now shown when viewing a completed workflow.
  • Artifact TAR files have a new naming convention. Downloaded artifacts are now named {ComponentName}-{TaskName}-{Timestamp}.tgz.
  • The Kaniko plugin has been updated to v1.81.

Code Generation

  • Expanded message generation capabilities for testing generated CSI.

Transforms

  • Expanded the available Transform Functions between Message Sets.

Fixes

  • Resolved an intermittent issue related to completed workflows shown as still running.
2 Likes