Welcome to COSMOS 4.1! The COSMOS API has transitioned from a custom TCP protocol to HTTP. This will make interfacing to COSMOS from programming languages other than Ruby much easier. There are also many new APIs that allows the full functionality of the CmdTlmServer and Replay to be controlled remotely. See below for the full list of changes!

New Features:

  • #531 Command sequence export option
  • #558 subscription APIs should work in disconnect mode
  • #559 Build Replay Functionality into CmdTlmServer
  • #578 Add ability to query available screens from Telemetry Viewer
  • #579 Create zip of configuration in saved config
  • #581 Make various log files readonly
  • #587 AUTO_INTERFACE_TARGETS ignore existing interfaces
  • #591 Investigate creating single COSMOS UDP socket for case where read_port == write_src_port
  • #599 Create subscription API for CTS messages
  • #601 Add background task and other status APIs
  • #606 Enhancement to Open File Script Interface - File Filter
  • #612 CSV support for strings and symbols
  • #620 Move Script Runner step button next to start/go
  • #625 Add APIs to start/stop background tasks
  • #626 Add API functions to get ignored parameters/items
  • #635 get_cmd_param_list should return the type for each command parameter
  • #642 Handle Infinity/NaN without invalid JSON

Maintenance:

  • #510 Investigate changing JsonDrb to running over HTTP
  • #603 CmdTlmServer invalid constructor argument
  • #614 Pass server message color to message subscriptions
  • #619 Script Runner instrumenting comments and whitespace
  • #630 Add ConfigEditor and CmdSequence to install launcher
  • #647 Make packet item sort consistent
  • #649 Add codecov support

Bug Fixes:

  • #562 #562 Template protocol should fill Id fields
  • #577 #577 Telemetry Viewer has fatal exception when called with JSON-RPC method display
  • #593 #593 Race condition in Cosmos.kill_thread
  • #607 #607 Support latest version of wkhtmltopdf for pdf creation and properly set working dir
  • #610 #610 target shouldn’t report error requiring file in target lib
  • #616 #616 Ignore untested Windows version message in Windows 10
  • #617 #617 Ruby 2.4’s inherent Warning class shadows Qt::MessageBox::Warning
  • #633 #633 combo_box is mutating input
  • #639 #639 Partial rendering in config parser should enforce that rendered partials start with underscore
  • #654 #654 Test Runner crashes with no config file
  • #655 #655 Metadata system triggers a nil router error in api.rb with basic setup
  • #659 #659 Hazardous commands throwing errors

Migration Notes from COSMOS 4.0.x:

Any custom tools in other languages that use the COSMOS API will need to be updated.

To upgrade to the latest version of COSMOS, run “bundle update cosmos” in your COSMOS project folder.