Skip to content

Releases: xronos-inc/xronos

Release v0.11.1

16 Apr 19:06

Choose a tag to compare

Improvements 🛠️

VS Code Extension:

  • Support for MacOS
  • Windows support through WSL

Fixes 🐛

  • Stabilized initialization of the diagram view

Release v0.11.0

09 Apr 19:20
fb57a49

Choose a tag to compare

Features 🚀

VS Code Extension:

Improvements 🛠️

VS Code Extension:

  • Dropped dependency on external Node.js to make the extension self-contained

Xronos Dashboard:

  • No login required on first use

Release v0.10.0

31 Mar 19:27
36ac4b1

Choose a tag to compare

Features 🚀

  • New xronosinc/xronos docker base image with preinstalled Xronos SDKs and tools.

Improvements 🛠️

SDKs:

  • Provide more detailed feedback including reaction names when dependency cycles are detected

VS Code Extension:

  • Visualize deadline in the reactor diagrams
  • Improved handling of errors during diagram generation

Xronos Dashboard:

  • Improved visual appearance of the trace panel
  • Visualization of deadlines in the trace panel
  • Hide trace details when showing large time spans

Fixes 🐛

  • Fixed duplicated names in some C++ examples

Release v0.9.0

26 Feb 14:23
575de88

Choose a tag to compare

Features 🚀

  • Initial support for specifying and checking reaction deadlines. This includes:
    • New C++ SDK methods: add_reaction_with_deadline(), deadline(), is_before_deadline(), remaining_slack()
    • Visualization of deadlines in the Xronos Dashboard trace panel

Improvements 🛠️

  • Improved zooming and navigation behavior in the diagram view of the Xronos VS Code Extension
  • Updated the Xronos Dashboard to Grafana 12.4.0

Release v0.8.0

21 Jan 16:47
b177953

Choose a tag to compare

Examples 💡

Improvements 🛠️

  • Enforce uniqueness of element names to avoid ambiguity in the diagrams and dashboard. (C++ and Python SDK)
  • Provide better error message when a reaction returns no handler or the returned handler is invalid. (Python SDK)

Fixes 🐛

  • Fixed platform tag of python wheels.

Release v0.7.0

23 Dec 17:33
96a971d

Choose a tag to compare

Features 🚀

  • Python source distribution for installation on not officially supported platforms (e.g., macOS)
  • Experimental API for specifying serializers (C++ SDK)

Improvements 🛠️

  • Shared libraries only export SDK symbols and hide symbols from third party dependencies for better compatibility with external libraries.

Cleanup 🧹

  • Simplified the default runtime and removed legacy code

Examples 💡

  • Hello World demo comparing a simple demo between ROS2 and Xronos and highlighting some of ROS2's concurrency issues.

Release v0.6.0

27 Sep 12:52
d48c3f1

Choose a tag to compare

Features 🚀

  • Modularized the backend infrastructure so that the same Xronos program can execute on different runtimes.
  • Added optional runtime_provider argument to execute() allowing the user to provide a different runtime that should be used for execution. (C++ SDK)
  • Introduced shutdown effects, allowing reactions to explicitly declare that they might invoke shutdown and providing the trigger_shutdown() method. This replaces the request_shutdown()` method. (Python, C++)

Deprecated 🗑️

  • Removed the request_shutdown() method. (Python, C++)

Release v0.5.0

18 Aug 13:32
9176499

Choose a tag to compare

Features 🚀

  • Python 3.14 support (Python SDK)
  • Installable pre-compiled artifacts (C++ SDK)

Improvements 🛠️

  • Fully implemented compilation firewall using pImpl to improve API stability and decouple user code from internal changes (C++ SDK).
  • Replaced our build tool earthly with Docker bake
  • Added build options for disabling the diagram and telemetry features to allow a minimal build (C++ SDK)

Documentation 📖

  • Integrated C++ docs with main documentation website at https://docs.xronos.com/
  • Updated and improved C++ and Python API docs
  • Show current SDK version

Release v0.4.0

10 Jun 04:07
c264735

Choose a tag to compare

Features 🚀

  • New dashboard panel for showing reaction traces

Improvements 🛠️

  • Added Reactor.request_shutdown() method (Python)
  • Added add_attributes() method to all elements (C++)
  • Added get() and is_present() methods to the PortEffect class (C++)
  • Periodic timers require a nonzero period (Python)
  • Switched lag and execution time panels to showing points instead of interpolated lines (Dashboard)
  • Switched execution time panel to logarithmic timescale (Dashboard)
  • Disabled auto-refresh by default (Dashboard)
  • Improved positioning of "Refresh" and "Back" buttons in metrics view (VS Code)

Fixes 🐛

  • Exclude lag from reaction spans shown (Dashboard)
  • Correctly display FQNs in the metrics view (VS Code)
  • Also include inherited attributes in the metrics view (VS Code)

Examples 💡

  • Added Python Webots example showing software-in-the-loop simulation

Deprecated 🗑️

  • Removed the deprecated enable_tracing() method (Python, C++)
  • Removed Reactor.environment property (Python)
  • Removed StartupDeclaration and ShutdownDeclaration (Python)

Release v0.3.0

11 May 14:14
be86c72

Choose a tag to compare

Features 🚀

  • New metrics view showing all the metrics reported by the application in the VS Code extension
  • New dashboard panels showing:
    • lag of all reactions
    • execution times of all reactions
    • number of reactions executed in the current time window
    • a metric as selected by the new drop-down menu in the top

Improvements 🛠️

  • Compatibility with cmake 4.0.0
  • Reduced sensitivity when scaling diagrams in the VS Code extension
  • Show informative error message when calling execute() multiple times on the same environment (C++ SDK)
  • Introduced enable_telemetry() method in Python and C++ SDKs

Examples 💡

  • Added C++ example showing interoperability with ROS 2
  • Added Python keyboard synthesizer example

Deprecated 🗑️

  • Removed the options panel from the VS Code extension
  • Removed the Source class from Python and C++ SDKs
  • Removed the add_source() method from the Python SDK
  • Deprecated enable_tracing() which is replaced by enable_telemetry()