Releases: OpenC3/cosmos
v7.0.0
OpenC3 COSMOS Core 7.0.0 - The Next Generation
Welcome to OpenC3 COSMOS Core 7.0.0!
We are thrilled to announce the official release of OpenC3 COSMOS 7! This milestone represents months of intensive development, building on the foundation of v6 to deliver a faster, more scalable, and more integrated platform for command and control.
⚠️ Critical Update Note
If you are updating from a 7.0.0 Release Candidate, a full TSDB cleanup is required as table names now include the SCOPE.
- Action: Run
openc3.sh cleanup(Note: This drops all logged data!!!). - Alternative: Manually delete the volume via
docker volume rm xxx-tsdb-v.
🚀 Headline Feature: High-Performance TSDB (QuestDB)
The core of COSMOS 7 is a brand-new Time Series Database powered by QuestDB. This transition marks a significant leap forward:
- Speed: Data retrieval is now an order of magnitude faster.
- Simplicity: We have removed the reducer microservices and associated data overhead.
- Accessibility: Explore your data directly with SQL via the new TSDB Admin tab or the QuestDB console.
⚖️ License Update
We have transitioned from the AGPL to the COSMOS Builder’s License.
- Why? To ensure better compatibility with our upcoming App Store.
- Note: This license maintains your existing development rights but explicitly prohibits providing COSMOS as a managed or hosted service.
🛑 Breaking Changes
- S3 Backend Migration: Migrated from MINIO to versitygw.
- See the Migration Guide for details.
- Security: Support for plaintext passwords via the API has been removed.
- See the Password Security Guide for details.
🛠 New Behavior & Deprecations
- All containers have read-only file systems. This improves security across our containers.
- Unit Handling: The WITH_UNITS type has been removed. Existing with_units APIs (e.g., tlm_with_units) are now deprecated and will return the formatted value.
- Target Files: get_target_file now returns None/nil if a file is not found.
- Sparse Packets: Items outside buffer bounds in undersized packets now return nil/None instead of 0. This enables better support for sparsely populated packets.
- New keywords
CMD_DECOM_RETAIN_TIMEandTLM_DECOM_RETAIN_TIME- See the Configuration Changes for details.
Enhancements
- Add docker containers now have read-only file systems
- Add CONVERTED_DATA keyword for conversions
- Add
check_boxScript Runner prmopt - Add open_bucket_dialog script API selecting bucket files
- Enable LATEST in Data Extractor
- Allow TlmViewer to clear transient errors
- Detailed logs around Scope/Settings changes
- Ability to hide Legend on Telemetry Grapher
- Allow manually entered values for states on Command Sender
- New OPENC3_ALLOW_HTTP env var to make it easier to allow http
- Filter Limits Monitor items by state
- UI theming support - check the Admin Settings to change COSMOS colors
- New TEMPLATE_BASE64 keyword for binary templates in the config files
- Queue interface packets by default with update at 0.1s
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget
- App store API updates
- Optimize command and telemetry decom performance in Ruby and Python
- Add hint to admin console about setting k8s secrets
- New API for scripts and screens to open a browser tab
- Make Command Parameter list scrollable for Command Editor
- Validate SCREEN params and make options dialogs consistent throughout
- Bucket Explorer delete directory
- Telemetry Grapher select graph button
- Migrate Python package from Poetry to UV
- Workflow to restart microservices for a plugin
- Warn when packets are defined without ID_ITEMs
- Add UUID to Script Runner temp files to prevent name collision
- Update to Vite 7
- Update to Rails 8
- Switch from Redis to Valkey
- Switch from Vuex to Pinia
- Switch password hashing algorithm to argon2
Bug Fixes
- Fix Python Interface Microservice accessing attributes
- Fix Script Runner autocomplete when using LATEST
- Fix Command Sender Mode -> Disable Parameter Conversion checkbox
- Fix limits bar when displaying the value 0
- Fix FORMATVALUE widget for 64-bit integer values
- Fix Python Suite Runner to preserve add_script insertion order
- Fix plugin downloads
- Fix tools bucket routing in standalone EC2 deployment to S3 buckets
- Fix Python TcpipSocketStream write look lockup
- Fix interface disconnect loop when deleting packets from a plugin
- Fix xtce_converter CLI crash
- Fixes for STRUCTURE use
- Fix TSDB with Python conversions
- Fix Python custom microservices
- Fix Python script syntax check and CheckError display
- Fix screen overlay in Command Sender and clear transient screen errors in Telemetry Viewer
- Fix secret unpacking in Python
- Fix time picker to remove milliseconds
- Fix Python JSON telemetry performance (10x increase in speed)
- Fix Packet Viewer initial refresh
- Fix Python http client to close the socket on disconnect
- Fix recurring activities on Calendar (Enterprise)
- Fix variable_bit_size command corruption. If a command has more than one VARIABLE_BIT_SIZE declaration it would not be created correctly.
- Fix Script Runner mnemonic checker crashes and false positives
- Fix Telemetry Viewer Textfield input bug in float mode
- Fix Script Runner bug with no scrollbar in message dialogs
- Fix Telemetry Grapher performance with large historical data
- Fix zoom in Data Flow Diagrams
- Fix wait_check blocking on user input when sleep_time is 0
What's Changed
- Queue interface packets by default with update at 0.1s by @jmthomas in #2371
- Remove WITH_UNITS as type by @jmthomas in #2380
- Update to vite 7 by @ryan-pratt in #2518
- 2472 | get_target_file now returns None/nil when file is not found by @EmilyRagan in #2519
- Remove plaintext password support for api by @ryan-pratt in #2588
- Quest setup by @jmthomas in #2578
- Switch password hashing algorithm to argon2 by @ryan-pratt in #2608
- Rails 8 by @jmthomas in #2678
- Reinstall all plugins to support QuestDB by @jmthomas in #2636
- Disable dependabot PRs by @jmthomas in #2725
- Convert streaming api to the TSDB by @jmthomas in #2647
- Switch from Redis to Valkey by @ryanmelt in #2687
- Questdb migration by @jmthomas in #2683
- Switch from Minio to Versitygw by @jmthomas in #2656
- Fix Python script syntax check and CheckError display by @jmthomas in #2737
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget by @jmthomas in #2734
- Clear transient screen errors and fix screen overlay in Command Sender by @jmthomas in #2733
- [Documentation] Embed feature highlight videos to docs by @clayandgen in #2735
- App store API updates by @ryan-pratt in #2497
- Optimize command and telemetry decom performance in Ruby and Python by @jmthomas in #2726
- Return nil for items outside buffer bounds in undersized packets by @jmthomas in #2685
- Fix secret unpacking by @ryan-pratt in #2736
- Clarify offline installation and project version by @jmthomas in #2745
- Sonarqube cleanup by @jmthomas in #2738
- Bump aquasecurity/setup-trivy from 0.2.4 to 0.2.5 by @dependabot[bot] in #2747
- Add hint to admin console about setting k8s secrets by @ryan-pratt in #2750
- Open tab api for scripts and screens by @jmthomas in #2744
- Update vulnerabilities and codeql config by @jmthomas in #2748
- Add JsonAccessor buffer type tests and improve code quality by @mcosgriff in #2754
- Validate SCREEN params and fix options dialogs by @jmthomas in #2752
- Move curl from devlopment to guides by @jmthomas in #2758
- Add TlmViewer playback test and fix time picker by @jmthomas in #2759
- Document keycloak tokens and update curl examples by @jmthomas in #2762
- Remove "verified" from plugins by @ryan-pratt in #2746
- TSDB decoding consistency by @jmthomas in #2757
- Add throughput testing infrastructure and fix Python telemetry performance by @jmthomas in #2742
- [Enhancement] Packet viewer refresh by @clayandgen in #2761
- Update documentation to include Windows 11 installation video by @clayandgen in #2765
- [Bug] Python Http Client Close by @clayandgen in #2767
- Update dependencies by @jmthomas in https://github.co...
v7.0.0-rc3
OpenC3 COSMOS Core 7.0.0 Release Candidate 3 - Welcome to the future of COSMOS!
Welcome to OpenC3 COSMOS Core 7.0.0 Release Candidate 3!
We're super excited to announce the third release candidate of COSMOS 7.
Important
If updating from RC1 you should first do a "openc3.sh cleanup" as all the TSDB table names changed to now include the SCOPE. Note: Cleanup drops all logged data.
Key Changes since RC3:
- Fix the streaming api pulling data from the TSDB. This fixes Data Extractor, Data Viewer, and Telemetry Grapher.
- Fixes to the new python uv installation process
- Various security and login enhancements
This release is months in the making and builds upon all the changes we made to COSMOS 6. Note that this is a Release Candidate and thus should not be used for Production deployments at the moment. We want to allow time for testing and exploration before we announce a final release.
The headline feature of COSMOS 7 is our new time series database (TSDB) powered by QuestDB! This database allows us to speed up our data retrieval times by an order of magnitude and enables optimizations like the removal of the reducer microservices and associated data. This is going to enable a host of new integrations and use-cases. I invite you to enable the QuestDB console and experiment with SQL access to your data!
We've also changed our License from the AGPL to the new COSMOS Builder's License. This gives you the same rights but is more compatible with our new App Store. It explicitly does not allow providing COSMOS as a hosted or managed service.
Breaking Changes
- Migration from MINIO to versitygw as a S3 backend. See upgrading.md for more information.
- Removed plaintext password support for API. See upgrading.md for more information.
New Behavior
- Remove
WITH_UNITSas type. Note that existingwith_unitsAPIs (tlm_with_units,check_with_units, etc) are deprecated and will simply return theformattedvalue. get_target_filenow returns None/nil when file is not found- Return
nil/Nonefor items outside buffer bounds in undersized packets. Previously this would return 0. This allows for sparsely populated packets.
Known Issues
The migration script is currently hard coded to use the logs and config bucket names. If you have renamed these using the .env file OPENC3_LOGS_BUCKET or OPENC3_CONFIG_BUCKET this will not take effect. This will be fixed in the final release.
Enhancements
- Detailed logs around Scope/Settings changes
- Ability to hide Legend on Telemetry Grapher
- Allow manually entered values for states on Command Sender
- New OPENC3_ALLOW_HTTP env var to make it easier to allow http
- Filter Limits Monitor items by state
- UI theming support - check the Admin Settings to change COSMOS colors
- New TEMPLATE_BASE64 keyword for binary templates in the config files
- Queue interface packets by default with update at 0.1s
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget
- App store API updates
- Optimize command and telemetry decom performance in Ruby and Python
- Add hint to admin console about setting k8s secrets
- New API for scripts and screens to open a browser tab
- Make Command Parameter list scrollable for Command Editor
- Validate SCREEN params and make options dialogs consistent throughout
- Bucket Explorer delete directory
- Telemetry Grapher select graph button
- Migrate Python package from Poetry to UV
- Workflow to restart microservices for a plugin
- Warn when packets are defined without ID_ITEMs
- Add UUID to Script Runner temp files to prevent name collision
- Update to Vite 7
- Update to Rails 8
- Switch from Redis to Valkey
- Switch from Vuex to Pinia
- Switch password hashing algorithm to argon2
Bug Fixes
- Fix Script Runner autocomplete when using LATEST
- Fix Command Sender Mode -> Disable Parameter Conversion checkbox
- Fix limits bar when displaying the value 0
- Fix FORMATVALUE widget for 64-bit integer values
- Fix Python Suite Runner to preserve add_script insertion order
- Fix plugin downloads
- Fix tools bucket routing in standalone EC2 deployment to S3 buckets
- Fix Python TcpipSocketStream write look lockup
- Fix interface disconnect loop when deleting packets from a plugin
- Fix xtce_converter CLI crash
- Fixes for STRUCTURE use
- Fix TSDB with Python conversions
- Fix Python custom microservices
- Fix Python script syntax check and CheckError display
- Fix screen overlay in Command Sender and clear transient screen errors in Telemetry Viewer
- Fix secret unpacking in Python
- Fix time picker to remove milliseconds
- Fix Python JSON telemetry performance (10x increase in speed)
- Fix Packet Viewer initial refresh
- Fix Python http client to close the socket on disconnect
- Fix recurring activities on Calendar (Enterprise)
- Fix variable_bit_size command corruption. If a command has more than one VARIABLE_BIT_SIZE declaration it would not be created correctly.
- Fix Script Runner mnemonic checker crashes and false positives
- Fix Telemetry Viewer Textfield input bug in float mode
- Fix Script Runner bug with no scrollbar in message dialogs
- Fix Telemetry Grapher performance with large historical data
- Fix zoom in Data Flow Diagrams
- Fix wait_check blocking on user input when sleep_time is 0
What's Changed RC3
- Wrap videos row in docs by @ryan-pratt in #2864
- Fixed Python TcpipSocketStream write loop locking up on unhandled socket errors by @mcosgriff in #2865
- Update dependencies by @jmthomas in #2862
- Fix stale tlmcnt Redis keys causing interface disconnect loops by @mcosgriff in #2857
- [Accessibility] Add Astro compatibility to LimitsColor Widget by @clayandgen in #2866
- [Enhancement] Fixes Nav Bar clickability by @clayandgen in #2879
- [Enhancement] Limits Monitor Filtering by @clayandgen in #2881
- Resolved some SonarQube findings from uv conversion by @mcosgriff in #2807
- Allow traefik to route to the as-named tools bucket by @jmthomas in #2871
- Fix plugin downloads by @jmthomas in #2882
- Move CSP from HTML meta tag to Traefik header set by OPENC3_ALLOW_HTTP by @jmthomas in #2872
- Update Protocol Buffer documentation by @jmthomas in #2888
- Fix Python Suite Runner to preserve add_script insertion order by @jmthomas in #2885
- Fix FORMATVALUE widget for 64-bit integer values by @jmthomas in #2892
- [Bughancement] Limit Bar on Zero and Colors on DetailsDialog by @clayandgen in #2891
- Add note about command params with states to upgrade guide by @ryan-pratt in #2897
- App store plugin versions by @ryan-pratt in #2858
- [Enhancement] Highlight AppNav item on Refresh by @clayandgen in #2894
- Add validate and timeout info to queued commands by @jmthomas in #2893
- [Bug] Command Sender Disable Param Conversion checkbox stuck by @clayandgen in #2904
- Migrate plugin Python package management from pip3 to uv by @mcosgriff in #2902
- Add ability to pull to openc3_util by @jmthomas in #2898
- API rate limiting by @ryan-pratt in #2884
- Use parameterized queries to the TSDB by @jmthomas in #2908
- [Enhancement] Manually Entered on Command Sender by @clayandgen in #2906
- Disallow using session token to change password by @ryan-pratt in #2905
- Fix migration and better handle migration errors by @jmthomas in #2901
- Logout when changing password to clear sessions by @jmthomas in #2909
- Correcting some theming related color changes by @clayandgen in #2903
- Clear env vars from running scripts by @jmthomas in #2912
- Prevent path traversal in tool config names by @jmthomas in #2910
- [Enhancement] Ability to hide Legend on TlmGrapher by @clayandgen in #2895
- Follows Astral's recommended pattern for installing uv in Docker by copying the statically-compiled binary directly from the official image rather than installing via pip. by @mcosgriff in #2880
- Cancel previous CI jobs for current PR/branch when new commit(s) are pushed by @EmilyRagan in #2919
- Fix streaming from TSDB by @jmthomas in #2900
- The command
uv pip install --no-warn-script-locationno supported byuvby @mcosgriff in #2926 - One-time use tokens for AnyCable by @ryan-pratt in #2911
- [Enhancement] Detailed logs around Scope/Settings Changes by @clayandgen in #2916
- Bump docker/login-action from ...
v7.0.0-rc2
OpenC3 COSMOS Core 7.0.0 Release Candidate 2 - Welcome to the future of COSMOS!
Welcome to OpenC3 COSMOS Core 7.0.0 Release Candidate 2!
We're super excited to announce the second release candidate of COSMOS 7.
Important
If updating from RC1 you should first do a "openc3.sh cleanup" as all the TSDB table names changed to now include the SCOPE. Note: Cleanup drops all logged data.
Key Changes since RC1:
- TSDB Table Names now contain the SCOPE
- New TEMPLATE_BASE64 Keyword
- New Themes in Admin Settings!
- Several bug fixes involving the TSDB, STRUCTURE keyword, python microservices, and XTCE
This release is months in the making and builds upon all the changes we made to COSMOS 6. Note that this is a Release Candidate and thus should not be used for Production deployments at the moment. We want to allow time for testing and exploration before we announce a final release.
The headline feature of COSMOS 7 is our new time series database (TSDB) powered by QuestDB! This database allows us to speed up our data retrieval times by an order of magnitude and enables optimizations like the removal of the reducer microservices and associated data. This is going to enable a host of new integrations and use-cases. I invite you to enable the QuestDB console and experiment with SQL access to your data!
We've also changed our License from the AGPL to the new COSMOS Builder's License. This gives you the same rights but is more compatible with our new App Store. It explicitly does not allow providing COSMOS as a hosted or managed service.
Breaking Changes
- Migration from MINIO to versitygw as a S3 backend. See upgrading.md for more information.
- Removed plaintext password support for API. See upgrading.md for more information.
New Behavior
- Remove
WITH_UNITSas type. Note that existingwith_unitsAPIs (tlm_with_units,check_with_units, etc) are deprecated and will simply return theformattedvalue. get_target_filenow returns None/nil when file is not found- Return
nil/Nonefor items outside buffer bounds in undersized packets. Previously this would return 0. This allows for sparsely populated packets.
Known Issues
The migration script is currently hard coded to use the logs and config bucket names. If you have renamed these using the .env file OPENC3_LOGS_BUCKET or OPENC3_CONFIG_BUCKET this will not take effect. This will be fixed in the final release.
Enhancements
- UI theming support - check the Admin Settings to change COSMOS colors
- New TEMPLATE_BASE64 keyword for binary templates in the config files
- Queue interface packets by default with update at 0.1s
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget
- App store API updates
- Optimize command and telemetry decom performance in Ruby and Python
- Add hint to admin console about setting k8s secrets
- New API for scripts and screens to open a browser tab
- Make Command Parameter list scrollable for Command Editor
- Validate SCREEN params and make options dialogs consistent throughout
- Bucket Explorer delete directory
- Telemetry Grapher select graph button
- Migrate Python package from Poetry to UV
- Workflow to restart microservices for a plugin
- Warn when packets are defined without ID_ITEMs
- Add UUID to Script Runner temp files to prevent name collision
- Update to Vite 7
- Update to Rails 8
- Switch from Redis to Valkey
- Switch from Vuex to Pinia
- Switch password hashing algorithm to argon2
Bug Fixes
- Fix xtce_converter CLI crash
- Fixes for STRUCTURE use
- Fix TSDB with Python conversions
- Fix Python custom microservices
- Fix Python script syntax check and CheckError display
- Fix screen overlay in Command Sender and clear transient screen errors in Telemetry Viewer
- Fix secret unpacking in Python
- Fix time picker to remove milliseconds
- Fix Python JSON telemetry performance (10x increase in speed)
- Fix Packet Viewer initial refresh
- Fix Python http client to close the socket on disconnect
- Fix recurring activities on Calendar (Enterprise)
- Fix variable_bit_size command corruption. If a command has more than one VARIABLE_BIT_SIZE declaration it would not be created correctly.
- Fix Script Runner mnemonic checker crashes and false positives
- Fix Telemetry Viewer Textfield input bug in float mode
- Fix Script Runner bug with no scrollbar in message dialogs
- Fix Telemetry Grapher performance with large historical data
- Fix zoom in Data Flow Diagrams
- Fix wait_check blocking on user input when sleep_time is 0
What's Changed RC2
- Fix xtce_converter CLI crash with gem_name nil and PythonProxy .class by @jmthomas in #2841
- TEMPLATE_BASE64 and Fixes for STRUCTURE use by @ryanmelt in #2846
- Prepend scope name to QuestDB table names by @jmthomas in #2848
- Upgrade updates by @jmthomas in #2838
- Add Linux video to documentation by @clayandgen in #2843
- Add new architecture page by @jmthomas in #2845
- Fix QuestDB ingress errors for Python conversions without converted_type by @jmthomas in #2849
- When looking for python binary to replace, need to handle single string and one word per parameter modes by @mcosgriff in #2851
- UI Theming support by @clayandgen in #2852
- Fix TlmViewer Playback missing scope argument by @ryanmelt in #2853
What's Changed RC1
- Queue interface packets by default with update at 0.1s by @jmthomas in #2371
- Remove WITH_UNITS as type by @jmthomas in #2380
- Update to vite 7 by @ryan-pratt in #2518
- 2472 | get_target_file now returns None/nil when file is not found by @EmilyRagan in #2519
- Remove plaintext password support for api by @ryan-pratt in #2588
- Quest setup by @jmthomas in #2578
- Switch password hashing algorithm to argon2 by @ryan-pratt in #2608
- Rails 8 by @jmthomas in #2678
- Reinstall all plugins to support QuestDB by @jmthomas in #2636
- Disable dependabot PRs by @jmthomas in #2725
- Convert streaming api to the TSDB by @jmthomas in #2647
- Switch from Redis to Valkey by @ryanmelt in #2687
- Questdb migration by @jmthomas in #2683
- Switch from Minio to Versitygw by @jmthomas in #2656
- Fix Python script syntax check and CheckError display by @jmthomas in #2737
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget by @jmthomas in #2734
- Clear transient screen errors and fix screen overlay in Command Sender by @jmthomas in #2733
- [Documentation] Embed feature highlight videos to docs by @clayandgen in #2735
- App store API updates by @ryan-pratt in #2497
- Optimize command and telemetry decom performance in Ruby and Python by @jmthomas in #2726
- Return nil for items outside buffer bounds in undersized packets by @jmthomas in #2685
- Fix secret unpacking by @ryan-pratt in #2736
- Clarify offline installation and project version by @jmthomas in #2745
- Sonarqube cleanup by @jmthomas in #2738
- Bump aquasecurity/setup-trivy from 0.2.4 to 0.2.5 by @dependabot[bot] in #2747
- Add hint to admin console about setting k8s secrets by @ryan-pratt in #2750
- Open tab api for scripts and screens by @jmthomas in #2744
- Update vulnerabilities and codeql config by @jmthomas in #2748
- Add JsonAccessor buffer type tests and improve code quality by @mcosgriff in #2754
- Validate SCREEN params and fix options dialogs by @jmthomas in #2752
- Move curl from devlopment to guides by @jmthomas in #2758
- Add TlmViewer playback test and fix time picker by @jmthomas in #2759
- Document keycloak tokens and update curl examples by @jmthomas in #2762
- Remove "verified" from plugins by @ryan-pratt in #2746
- TSDB decoding consistency by @jmthomas in #2757
- Add throughput testing infrastructure and fix Python telemetry performance by @jmthomas in #2742
- [Enhancement] Packet viewer refresh by @clayandgen in #2761
- Update documentation to include Windows 11 installation video by @clayandgen in #2765
- [Bug] Python Http Client Close ...
v7.0.0-rc1
OpenC3 COSMOS Core 7.0.0 Release Candidate 1 - Welcome to the future of COSMOS!
Welcome to OpenC3 COSMOS Core 7.0.0 Release Candidate 1!
We're super excited to announce the first release candidate of COSMOS 7. This release is months in the making and builds upon all the changes we made to COSMOS 6. Note that this is a Release Candidate and thus should not be used for Production deployments at the moment. We want to allow time for testing and exploration before we announce a final release.
The headline feature of COSMOS 7 is our new time series database (TSDB) powered by QuestDB! This database allows us to speed up our data retrieval times by an order of magnitude and enables optimizations like the removal of the reducer microservices and associated data. This is going to enable a host of new integrations and use-cases. I invite you to enable the QuestDB console and experiment with SQL access to your data!
We've also changed our License from the AGPL to the new COSMOS Builder's License. This gives you the same rights but is more compatible with our new App Store. It explicitly does not allow providing COSMOS as a hosted or managed service.
Breaking Changes
- Migration from MINIO to versitygw as a S3 backend. See upgrading.md for more information.
- Removed plaintext password support for API. See upgrading.md for more information.
New Behavior
- Remove
WITH_UNITSas type. Note that existingwith_unitsAPIs (tlm_with_units,check_with_units, etc) are deprecated and will simply return theformattedvalue. get_target_filenow returns None/nil when file is not found- Return
nil/Nonefor items outside buffer bounds in undersized packets. Previously this would return 0. This allows for sparsely populated packets.
Known Issues
The migration script is currently hard coded to use the logs and config bucket names. If you have renamed these using the .env file OPENC3_LOGS_BUCKET or OPENC3_CONFIG_BUCKET this will not take effect. This will be fixed in the final release.
Enhancements
- Queue interface packets by default with update at 0.1s
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget
- App store API updates
- Optimize command and telemetry decom performance in Ruby and Python
- Add hint to admin console about setting k8s secrets
- New API for scripts and screens to open a browser tab
- Make Command Parameter list scrollable for Command Editor
- Validate SCREEN params and make options dialogs consistent throughout
- Bucket Explorer delete directory
- Telemetry Grapher select graph button
- Migrate Python package from Poetry to UV
- Workflow to restart microservices for a plugin
- Warn when packets are defined without ID_ITEMs
- Add UUID to Script Runner temp files to prevent name collision
- Update to Vite 7
- Update to Rails 8
- Switch from Redis to Valkey
- Switch from Vuex to Pinia
- Switch password hashing algorithm to argon2
Bug Fixes
- Fix Python script syntax check and CheckError display
- Fix screen overlay in Command Sender and clear transient screen errors in Telemetry Viewer
- Fix secret unpacking in Python
- Fix time picker to remove milliseconds
- Fix Python JSON telemetry performance (10x increase in speed)
- Fix Packet Viewer initial refresh
- Fix Python http client to close the socket on disconnect
- Fix recurring activities on Calendar (Enterprise)
- Fix variable_bit_size command corruption. If a command has more than one VARIABLE_BIT_SIZE declaration it would not be created correctly.
- Fix Script Runner mnemonic checker crashes and false positives
- Fix Telemetry Viewer Textfield input bug in float mode
- Fix Script Runner bug with no scrollbar in message dialogs
- Fix Telemetry Grapher performance with large historical data
- Fix zoom in Data Flow Diagrams
- Fix wait_check blocking on user input when sleep_time is 0
What's Changed
- Queue interface packets by default with update at 0.1s by @jmthomas in #2371
- Remove WITH_UNITS as type by @jmthomas in #2380
- Update to vite 7 by @ryan-pratt in #2518
- 2472 | get_target_file now returns None/nil when file is not found by @EmilyRagan in #2519
- Remove plaintext password support for api by @ryan-pratt in #2588
- Quest setup by @jmthomas in #2578
- Switch password hashing algorithm to argon2 by @ryan-pratt in #2608
- Rails 8 by @jmthomas in #2678
- Reinstall all plugins to support QuestDB by @jmthomas in #2636
- Disable dependabot PRs by @jmthomas in #2725
- Convert streaming api to the TSDB by @jmthomas in #2647
- Switch from Redis to Valkey by @ryanmelt in #2687
- Questdb migration by @jmthomas in #2683
- Switch from Minio to Versitygw by @jmthomas in #2656
- Fix Python script syntax check and CheckError display by @jmthomas in #2737
- Add hover tooltip, context menu, and stale overlay to LIMITSCOLOR widget by @jmthomas in #2734
- Clear transient screen errors and fix screen overlay in Command Sender by @jmthomas in #2733
- [Documentation] Embed feature highlight videos to docs by @clayandgen in #2735
- App store API updates by @ryan-pratt in #2497
- Optimize command and telemetry decom performance in Ruby and Python by @jmthomas in #2726
- Return nil for items outside buffer bounds in undersized packets by @jmthomas in #2685
- Fix secret unpacking by @ryan-pratt in #2736
- Clarify offline installation and project version by @jmthomas in #2745
- Sonarqube cleanup by @jmthomas in #2738
- Bump aquasecurity/setup-trivy from 0.2.4 to 0.2.5 by @dependabot[bot] in #2747
- Add hint to admin console about setting k8s secrets by @ryan-pratt in #2750
- Open tab api for scripts and screens by @jmthomas in #2744
- Update vulnerabilities and codeql config by @jmthomas in #2748
- Add JsonAccessor buffer type tests and improve code quality by @mcosgriff in #2754
- Validate SCREEN params and fix options dialogs by @jmthomas in #2752
- Move curl from devlopment to guides by @jmthomas in #2758
- Add TlmViewer playback test and fix time picker by @jmthomas in #2759
- Document keycloak tokens and update curl examples by @jmthomas in #2762
- Remove "verified" from plugins by @ryan-pratt in #2746
- TSDB decoding consistency by @jmthomas in #2757
- Add throughput testing infrastructure and fix Python telemetry performance by @jmthomas in #2742
- [Enhancement] Packet viewer refresh by @clayandgen in #2761
- Update documentation to include Windows 11 installation video by @clayandgen in #2765
- [Bug] Python Http Client Close by @clayandgen in #2767
- Update dependencies by @jmthomas in #2770
- [Bug] Recurring activities on Calendar by @clayandgen in #2756
- Add CMD/TLM to the TSDB table names by @jmthomas in #2766
- Fix VARIABLE_DESCRIPTION and VARIABLE_STATE docs by @jmthomas in #2778
- Update docs to mention TEMPLATE for tlm accessors by @jmthomas in #2781
- Remove unused packet_log_writer_pair from interface_thread.py by @jmthomas in #2789
- [Bug] Make Command Parameter list scrollable for Command Editor by @clayandgen in #2779
- Bump actions/checkout from 4 to 6 by @dependabot[bot] in #2791
- Bump actions/setup-python from 5 to 6 by @dependabot[bot] in #2790
- Rename bucket volume & fix received_time in TSDB by @jmthomas in #2784
- Fix variable_bit_size command corruption and add UI support by @jmthomas in #2777
- Fix mnemonic checker crashes and false positives by @jmthomas in #2788
- Better errors for missing required bucket param by @ryan-pratt in #2792
- Bucket Explorer delete directory by @jmthomas in #2794
- Update docs by @ryan-pratt in #2797
- Fix textfield input bug in float mode and improve drag UX by @mcosgriff in #2796
- [Enhancement] Telemetry Grapher sel...
v6.10.4
OpenC3 COSMOS Core 6.10.4 - Enhancements and bug fixes
Welcome to OpenC3 COSMOS Core 6.10.4!
We're back with a lot of documentation updates and a few cool new features. The first is the addition of the VARIABLE_DESCRIPTION and VARIABLE_OPTION keywords for plugin.txt. This will allow you to add documentation and drop down selections when VARIABLES are rendered when installing a new plugin. Here's an example from our Demo:
We also added a global setting to use a 24 hour clock chooser instead of the 12 hour AM/PM chooser.
With this release the focus now turns to COSMOS 7! We have a lot of great changes coming up including the use of the QuestDB time series database. We're also making a lot of internal changes to keep up with changing open source software.
As a reminder we made a critical security patch in COSMOS 6.10.2 which is included in this release.
All users regardless of current running version MUST upgrade to 6.10.2+ as soon as possible
Enhancements
- Add VARIABLE_DESCRIPTION and VARIABLE_OPTION keywords for plugin.txt
- Add global 24-hour time chooser setting
- Data extractor log extra in decom
- Add Force Re-init process
- Select tgt, pkt, item name text when clicked
- Various improvements to the Python websockets implementation
- Config parser updates
- Document upgrade instructions
- Document derived item ordering behavior in Telemetry Viewer
- Document PATH as reserved environment variable name
- Document credentials and deployment security
- Document microservices development
- Document encryption protocols
- Document read_details and write_details protocol methods
Bug Fixes
- Fix Ruby JSON encoding to preserve Unicode characters like µA
- Update ace-diff to fix line merging bugs
- Remove hard coded tag in upgrade script
What's Changed
- Remove hard coded tag in upgrade script by @jmthomas in #2693
- Update upgrade instructions by @jmthomas in #2694
- Document derived item ordering behavior in Telemetry Viewer by @jmthomas in #2695
- Web socket improvements by @EmilyRagan in #2692
- Document PATH as reserved environment variable name by @jmthomas in #2698
- Add global 24-hour time format setting by @jmthomas in #2704
- Data extractor log extra in decom by @clayandgen in #2706
- Fix JSON encoding to preserve Unicode characters like µA by @jmthomas in #2707
- Select tgt, pkt, item name text when clicked by @jmthomas in #2705
- Pre-commit hook to update copyright dates in changed files by @EmilyRagan in #2710
- Add Force Re-init process by @clayandgen in #2711
- Add security documentation for credentials and deployment by @jmthomas in #2696
- Bump dependencies by @jmthomas in #2715
- Add public dir to templated gemspec by @ryan-pratt in #2714
- Add microservices development documentation by @jmthomas in #2700
- Document encryption protocols by @jmthomas in #2699
- Document read_details and write_details protocol methods by @jmthomas in #2702
- Add VARIABLE_DESCRIPTION and VARIABLE_OPTION keywords for plugin.txt by @jmthomas in #2703
- Config parser updates and notebook setup by @ryanmelt in #2708
- Add Latin check to prevent binary data from being treated as UTF-8 text by @jmthomas in #2719
- Update ace-diff to fix line merging bugs by @jmthomas in #2724
Full Changelog: v6.10.3...v6.10.4
v6.10.3
OpenC3 COSMOS Core 6.10.3 - Enhancements and bug fixes
Welcome to OpenC3 COSMOS Core 6.10.3!
We've made a number of enhancements and bug fixes as we close out the year and close out development of COSMOS 6. With this release the focus now turns to COSMOS 7! We have a lot of great changes coming up including the use of the QuestDB time series database. We're also making a lot of internal changes to keep up with changing open source software.
As a reminder we made a critical security patch in COSMOS 6.10.2 which is included in this release.
All users regardless of current running version MUST upgrade to 6.10.2+ as soon as possible
Enhancements
- Upgraded XTCE converted to support 1.2
- Add limits bar to details dialog for items with limits
- Data Extractor add Username/Approver to command export
- Telemetry Viewer file display and file checksum widgets
- Telemetry Viewer generic tooltip capability
- Script Runner indicator for tlm overrides
- Command Sender description is yellow if hazardous parameter
- Bucket Explorer enforce RBAC in config / logs buckets
- Improve log sorting in CmdTlmServer log messages
- Include shard logic in Kubernetes networking
- Retry JsonDrb and API requests
- Document cmd/tlm naming conventions
- Document using target_name in ERB
- Document Subpackets
Bug Fixes
- Fix array of strings
- Fix put_target_file won't accept IO files
- Fix bracket items in Limits Monitor
- Fix goto in Python with indentation
- Fix python packet item ordering
- Various fixes to QuestDB microservice
What's Changed
- Upgrading the Cosmos -> XTCE converter to support v1.2. by @alex-pope-sdl in #2615
- Remove return in generic conversion examples by @jmthomas in #2643
- Fix array of strings by @jmthomas in #2646
- Add naming convention to both Commands and Telemetry by @jmthomas in #2645
- [Feature] Add Username/Approver to the Command Export by @clayandgen in #2648
- [Feature] File Display Widget by @clayandgen in #2652
- Document using target_name in ERB by @jmthomas in #2655
- Indicator for SR overrides by @markjmiller in #2654
- Fix put_target_file won't accept IO files by @markjmiller in #2659
- Fix bracket items in Limits Monitor by @jmthomas in #2663
- Make command description yellow if hazardous parameter by @jmthomas in #2662
- Update Anycable, Minio, vuetify, various other frontend by @jmthomas in #2653
- [Feature] Filechecksum Widget by @clayandgen in #2660
- Add generic tooltip capability by @jmthomas in #2674
- Allow goto with various indentation by @jmthomas in #2664
- Add styles and include tool-base in build by @jmthomas in #2677
- Add CLAUDE.md and fix-github-issue by @jmthomas in #2680
- Various enhancements to QuestDB microservice by @jmthomas in #2673
- Fix all ESLint warnings across Vue packages by @jmthomas in #2682
- Add limits bar to details dialog by @jmthomas in #2679
- Fix python packet item ordering by @jmthomas in #2675
- Document Subpackets by @ryanmelt in #2661
- Improve log sorting by @EmilyRagan in #2684
- Enforce RBAC in Bucket Explorer by @jmthomas in #2666
- Include shard logic in networking by @jmthomas in #2665
- Bump dependencies by @jmthomas in #2688
- Retry JsonDrb and API requests in Python by @jmthomas in #2676
- Fix minio release version by @jmthomas in #2689
New Contributors
- @alex-pope-sdl made their first contribution in #2615
Full Changelog: v6.10.2...v6.10.3
v6.10.2
OpenC3 COSMOS Core 6.10.2 - Bug Fixes and Critical Security Patch
Welcome to OpenC3 COSMOS Core 6.10.2!
This is patch release to address a critical security issue and it also addresses several bugs.
Details of the security issue will be disclosed in a couple weeks after users have had a chance to upgrade.
All users regardless of current running version MUST upgrade to 6.10.2+ as soon as possible
If you are an OpenC3 customer and unable to upgrade near-term, please reach out to [email protected] and we will help with coming up with a patch strategy for older versions.
See our Upgrade Docs
Enhancements
- Added a message when microservices shutdown cleanly to indicate why they are shutting down
- Improved handling of array data and object data in commands
- Improved docs
Bug Fixes
- Fixed regular importing of target libraries in ScriptRunner (broken in 6.10.1)
- Fixed handling of TEMPLATE in python
- Fixed System.telemetry.value() with the LATEST packet in python
What's Changed
- Bump node-version to 24 by @jmthomas in #2610
- Add code sample for python ccsds plugin by @mcosgriff in #2619
- Bump dependencies by @jmthomas in #2613
- Add documentation on Cleanup options by @clayandgen in #2623
- Printing binary causes SR to not finish #2621 by @markjmiller in #2627
- Fix python target lib import by @ryanmelt in #2628
- Bump prettier from 3.7.3 to 3.7.4 in /playwright by @dependabot[bot] in #2605
- Bump react from 19.2.0 to 19.2.1 in /docs.openc3.com by @dependabot[bot] in #2604
- Add documentation on api v script and initialize_offline_access by @clayandgen in #2630
- Fix python error messages by @jmthomas in #2633
- Update plugin docs by @jmthomas in #2632
- Update array and object convert to value by @ryanmelt in #2634
- Add new deprecated option for docs and mark UNIQUE_ID_MODE by @jmthomas in #2629
- Fix default values for TEMPLATE items by @jmthomas in #2635
- Bump deps by @jmthomas in #2640
- Fix Python System.telemetry.value with LATEST by @ryanmelt in #2641
- Add message when microservice shuts down cleanly by @jmthomas in #2631
- Bump dependencies by @ryan-pratt in #2642
Full Changelog: v6.10.1...v6.10.2
v6.10.1
OpenC3 COSMOS Core 6.10.1 - Sub-packets and Structures
Welcome to OpenC3 COSMOS Core 6.10.1!
We're excited to announce several new features in COSMOS 6.10 related to how you can define and use packets.
The first is sub-packets which enable channelized telemetry. Sub-packets come with 2 new keywords: SUBPACKET and SUBPACKETIZER. The SUBPACKET keyword is added to a packet declared in your cmd/tlm definitions. The packet is then not used except via the SUBPACKETIZER for identifying chunks of data as a packet. Additional documentation and examples are coming soon!
The next is structures which allow you to include and automatically flatten structures that use a different Accessor in the middle of the packet. For example, you can insert a JSON structure right in the middle of a binary data packet! The new keyword is STRUCTURE and APPEND_STRUCTURE similar to our ITEM keywords.
To better support JSON we have added additional types including BOOL, ARRAY, OBJECT, and ANY. These are Booleans (true/false), arrays of unknown data type, objects with unknown contents, and a completely unknown data type with ANY.
Enhancements
- Subpackets provides a process for breaking up packets during decom into subpackets
- Structure items allow you to include structures with different accessors in a packet
- Extended types including BOOL, ARRAY, OBJECT and ANY
- Packet Viewer virtual table instead of pagination
- Bucket Explorer multiple select and download
- Interpret environment variable value as boolean instead of string
- Keep menu open when submenu is clicked
- Restrict file uploads for plugin installs to gem files
- Add documentation for
open_file_dialoganddownload_file - Add selective UBI builds and air-gapped network support for podman
- Better error messages on plugin gem file upload
- Implement missing System Telemetry and System Commands methods in python
- Ensure python protocols support hex strings for parameters
- Table Manager usability including File New and File Save workflows
- Autonomic add buttons to Enable/Disable All Triggers
Bug Fixes
- Support binary commands in Command Queue APIs and UI
- Add RESTRICTED keyword to python
- Fix CTRF download for Script Runner logs
- Fix ScriptRunner handling of script crashed state
- Fix screen generator for packet items containing brackets, e.g.
ITEM[X] - Packet Viewer move tooltip to card header so that it is visible
- Autonomic fix for listing all reactions for a given trigger
- Autonomic fix for editing trigger changes value type
- Autonomic timestamp in the event logs does not respect UTC timezone
- View-only users can now use Command History and get command data from Data Extractor
What's Changed
- fix pnpm publish by @ryan-pratt in #2511
- [Manual] Update version to 6.9.3-beta0 by @ryan-pratt in #2512
- 2515 unify openc3sh and openc3bat between regular and project by @mcosgriff in #2517
- Update anycable and other dependencies by @jmthomas in #2531
- Add some Ruby / Python tabs by @jmthomas in #2542
- Add RESTRICTED keyword to python by @jmthomas in #2540
- Subpackets by @ryanmelt in #2474
- feat(ci): frontend generator tests by @mcosgriff in #2543
- PacketViewer virtual table by @EmilyRagan in #2547
- Interpret environment variable value as boolean instead of string by @EmilyRagan in #2544
- Keep menu open when submenu is clicked by @EmilyRagan in #2554
- Limit file uploads for plugin installs to gem files by @EmilyRagan in #2558
- [Documentation] Add docs on download_file by @clayandgen in #2555
- Unify Suite output timestamps, fix CTRF d/l by @jmthomas in #2524
- Bump the npm_and_yarn group across 2 directories with 1 update by @dependabot[bot] in #2545
- [Feature] Multi-select + Download in Bucket Explorer by @clayandgen in #2559
- feat(cli): add selective UBI builds and air-gapped network support for podman by @mcosgriff in #2546
- Bump actions/checkout from 5 to 6 by @dependabot[bot] in #2567
- Remove COSMOS 5 references by @jmthomas in #2566
- Minor updates to unified openc3 scripts by @mcosgriff in #2568
- Fix ScriptRunner handling crashed state by @jmthomas in #2563
- Better error messages on plugin gem file upload #2516 by @markjmiller in #2548
- Queue binary by @jmthomas in #2535
- Make PacketViewer table loading state more robust by @EmilyRagan in #2560
- Bump sass from 1.93.3 to 1.94.0 in /openc3-cosmos-init/plugins by @dependabot[bot] in #2550
- Implement missing System Telemetry and System Commands methods in python by @mcosgriff in #2569
- Fix screen generator by @jmthomas in #2576
- Use locally built mc by @jmthomas in #2577
- move tooltip to card header so that it is visible again by @EmilyRagan in #2582
- Fix RESTRICTED in python by @jmthomas in #2583
- Generated python and ruby tests for hex value support in MINIMUM_VALUE, MAXIMUM_VALUE, and DEFAULT_VALUE by @mcosgriff in #2581
- Verify python protocols support hex strings by @mcosgriff in #2587
- [Enhancement] Table Manager usability by @clayandgen in #2574
- Add dependabot ignore for npm packages we update manually by @ryan-pratt in #2589
- [Bugs] Autonomic bug updates by @clayandgen in #2584
- Update Alpine 3.22, Ruby 3.4, Traefik 3.6.2 and JS deps by @jmthomas in #2585
- Fix gem update to 3.7.2 by @jmthomas in #2596
- Tweak feature request template verbiage by @ryan-pratt in #2598
- Allow streaming with cmd_info permission by @jmthomas in #2600
- Structure items by @ryanmelt in #2579
- Extended types by @ryanmelt in #2597
- Cleanup by @EmilyRagan in #2603
- Fix CmdSender binary commands by @jmthomas in #2606
- Update release to push to npm by @jmthomas in #2609
Full Changelog: v6.9.2...v6.10.1
v6.9.2
OpenC3 COSMOS Core 6.9.2 - Important bug fixes
Welcome to OpenC3 COSMOS Core 6.9.2!
This release includes a few enhancements, a whole host of important bug fixes, and some documentation updates.
Enhancements
- Bucket Explorer Refresh Interval configurable
- Add confirmation in Script Runner on modified file navigation
- Add ability to select queue from Command Sender
- Add CLI option to create a command validator
- ZSH autocomplete for openc3.sh
- More consistent dialog behavior
- Support pyproject.toml as well as requirements.txt in python plugins
- Documentation updates for Admin tool, roles and permissions
- Document openc3.sh and all the options
- Add vulnerabilities page to docs
Bug Fixes
- Add scrolling on list of modified files in the Plugins Tab
- Fix Plugin tab state handling causing failed App-Store installs
- Fix Script Runner log scrolling
- Fix Script Runner stuck in readonly with only custom roles
- Fix Telemetry Grapher "Value Type," "Reduced," and "Reduced Type" dropdowns
- Fix Telemetry Grapher pause button positioning
- Fix Telemetry Grapher pointsSaved (truncate the saved points)
- Fix Data Extractor binary output
- Telemetry Viewer update screens on target change and better handle target deletion
- Fix tool generators to create working package.json files
- Fix
__name__in Python scripts - Fix python router logic
- Obfuscate pw / token in logs
- Start queue_microservice with existing state (HOLD / RELEASE / DISABLED)
What's Changed
- README grammar nitpicks by @EzraBrooks in #2419
- [Documentation] Add documentation on roles / permissions by @clayandgen in #2421
- Update python error formatting by @mcosgriff in #2430
- Script runner messages scroll by @EmilyRagan in #2426
- Bump github/codeql-action from 3 to 4 by @dependabot[bot] in #2434
- Bump stefanzweifel/git-auto-commit-action from 6 to 7 by @dependabot[bot] in #2435
- Generate openc3.sh autocomplete for ZSH to allow for real-time suggestions for commands by @mcosgriff in #2437
- Bump pnpm/action-setup from 4.1.0 to 4.2.0 by @dependabot[bot] in #2433
- [Enhancement] Bucket Explorer Refresh Interval configurable by @clayandgen in #2440
- Add imports to command validator in documentation by @mcosgriff in #2444
- use pnpm for publishing packages by @ryan-pratt in #2448
- fix openc3_set_versions script by @ryan-pratt in #2449
- Plugin metadata by @ryan-pratt in #2386
- [Bug] Obfuscate pw / token on direct access grant failure by @clayandgen in #2432
- Fix tlmgrapher pause button positioning by @ryan-pratt in #2443
- Fix Plugin Tab State Handling Causing Failed Store Installs by @ryanmelt in #2464
- Fix ScriptRunner stuck in readonly with only custom roles by @ryanmelt in #2458
- Fix binary output in Data Extractor by @jmthomas in #2428
- [Bug] Add overflow y scrolling on modified files list by @clayandgen in #2462
- Dialog persistence consistency by @EmilyRagan in #2466
- [Enhancement] Add confirmation on SR on modified file navigation by @clayandgen in #2465
- Dependencies by @jmthomas in #2471
- Add CLI option to create a command validator via cli_generator by @mcosgriff in #2467
- Update files and fix playwright by @jmthomas in #2473
- 2215 document openc3sh and all the options by @mcosgriff in #2476
- Add vulnerabilities page to docs by @ryan-pratt in #2475
- Browser compat docs by @ryan-pratt in #2479
- 2416 add ability to select queue from command sender by @mcosgriff in #2468
- Python name variable not correct #2356 by @markjmiller in #2438
- OpenC3 TSDB UBI9 Support by @stephen-ritter in #2407
- Bump the npm_and_yarn group across 18 directories with 1 update by @dependabot[bot] in #2469
- Update deps to fix dependabot by @jmthomas in #2480
- Add eslint to CI by @EmilyRagan in #2481
- Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in #2482
- [Documentation] Admin docs update + pnpm-lock update by @clayandgen in #2483
- Add npm to dependabot.yml by @jmthomas in #2488
- Build Minio from source by @jmthomas in #2486
- Fix python router logic by @jmthomas in #2504
- 2198 cli needs a real args parser by @mcosgriff in #2505
- Bump dependencies by @jmthomas in #2506
- Start queue_microservice with existing state by @jmthomas in #2489
- Handle None in TSDB by @jmthomas in #2501
- TlmViewer handle target change and target deletion by @jmthomas in #2500
- Enforce pointsSaved by @jmthomas in #2502
- Bump pnpm/action-setup from 4.1.0 to 4.2.0 by @dependabot[bot] in #2490
- Consider support pyproject.toml #2292 by @markjmiller in #2503
New Contributors
- @EzraBrooks made their first contribution in #2419
- @mcosgriff made their first contribution in #2430
- @EmilyRagan made their first contribution in #2426
Full Changelog: v6.9.1...v6.9.2
v6.9.1
OpenC3 COSMOS Core 6.9.1 - Queue updates, docs, and bug fixes
Welcome to OpenC3 COSMOS Core 6.9.1!
We added queue_remove to the queue scripting APIs and fixed sending commands from the Command Queue (Enterprise) tool. We also changed several of the queue api parameters from index to id to better represent the usage.
Docs were updated and a few bugs fixed. This was a quick release from 6.9.0 as we continually improve the COSMOS experience.
Enhancements
- Add queue_remove to scripting API
- Updated Calendar docs
- Updated CmdTlmServer docs
- Limits Monitor wider item column
Bug Fixes
- Fix default tab in CmdTlmServer
- Fix connecting to running Script Runner Test Suite
All Pull Requests
- Fix default tab in CmdTlmServer by @jmthomas in #2410
- [Documentation] Calendar docs by @clayandgen in #2413
- Limits Monitor wider item column by @clayandgen in #2414
- Fix connecting to running suite by @jmthomas in #2409
- Update cmd_tlm_server docs by @jmthomas in #2415
- Add queue_remove to scripting API by @jmthomas in #2411
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:
- git clone https://github.com/openc3/cosmos-project.git cosmos-myproject
- cd cosmos-myproject
- Run Linux/Mac: ./openc3.sh run
- Run Windows: openc3.bat run
- Connect a web browser to http://localhost:2900/
- Have fun running OpenC3 COSMOS!
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 [email protected].
Thanks!
Full Changelog: v6.9.0...v6.9.1