Skip to content

v6.0.0

Compare
Choose a tag to compare
@ryanmelt ryanmelt released this 18 Dec 05:27
· 37 commits to main since this release

OpenC3 COSMOS 6.0.0 - Frontend Apps Updated to Vue 3

Welcome to OpenC3 COSMOS 6.0.0!

This release focuses on bringing all our dependencies up to the latest versions primary for the COSMOS user interface. The big changes are:

  • Vue 2 upgraded to Vue 3
  • Vuetify 2 upgraded to Vuetify 3
  • Traefik 2 upgraded to Traefik 3
  • Grafana 10 upgraded to Grafana 11 (Enterprise)
  • Webpack replaced with Vite
  • Many other minor depenencies updated

Potentially Breaking Changes

The change from Traefik 2 to Traefik 3 changed the traefik configuration file format. Please update your traefik config files with the latest from cosmos-project.

Any custom Vue based tools will need to be upgraded to Vue 3 / Vuetify 3 / Vite. We've put together a detailed writeup to help with this process here: https://docs.openc3.com/docs/getting-started/upgrading#migrating-from-cosmos-5-to-cosmos-6

Our @openc3/tool-common npm package was broken up into @openc3/js-common and @openc3/vue-common packages. This would affect tools written in any frontend framework.

Commands with states now enforce using defined states. If you need to send an arbitrary value for a command with states you will need to use cmd_no_range_check().

Greatly Improved Container Build Times

Building our containers from source is now about 4 times faster. This is mainly due to the change from Webpack to Vite.

Greatly Improved Documentation

Accessors are now fully documented at docs.openc3.com! Also, more Interfaces and Protocols are documented. The Enterprise Command History Tool is now documented. Every TlmViewer widget now has screen shots.

More Python Parity

Almost every Interface and Protocol available in Ruby is now available in Python (Only current exception is SerialInterface).

BucketExplorer View Files

You can now view files in BucketExplorer, rather than having to download and open them in a separate application.

Sharded Operator (Generally Enterprise)

The operator container can now be run multiple times, each with a unique OPENC3_SHARD environment variable. This is intended as an alternate to using the Kubernetes Operator, if you don't have access to the Kubernetes API.

Other Improvements

  • CrcProtocol now supports Crc8
  • Installing Plugins and Packages now uses a button, rather than the old paperclip style text area

Other Bug Fixes

  • ScriptRunner Suite level setup and teardown now work in Python suites
  • Some ScriptRunner output wasn't colored when intended
  • Importing from openc3.script now works in Python suites
  • Fixed an issue with selecting modified scripts in Calendar and Autonomic (Enterprise)

All Pull Requests in this Release

New Contributors

Prerequisites:
Docker - Running OpenC3 requires a working Docker or Podman installation. Typically Docker Desktop on Windows / Mac. Plain Docker or Podman also works on linux. We actively develop and run with Docker Desktop on Mac/Windows, and Linux on Raspberry Pi, so if you have any issues on another platform, please let us know by submitting a ticket!

Minimum Resources allocated to Docker: 4GB RAM, 1 CPU, 80GB Disk
Recommended Resources allocated to Docker: 16GB RAM, 2+ CPUs, 100GB Disk
Also requires docker compose version 1.27+

To Run:

Please see our documentation at https://openc3.com

Try it out and let us know what you think! Please submit any issues as Github tickets, or any generic feedback to support@openc3.com.

Thanks!

Full Changelog: v5.20.0...v6.0.0