Release Notes¶
To install the latest version of our package, run the following command:
python3 -m pip install \
--force-reinstall \
--extra-index-url https://release.zeloscloud.io/py/simple \
'zeloscloud[all]'
To install a specific version of our package, run the following command:
python3 -m pip install \
--force-reinstall \
--extra-index-url https://release.zeloscloud.io/py/simple \
'zeloscloud[all] == x.y.z'
Replace x.y.z
with the versions below.
App 25.0.6 — April 14, 2025¶
Fixed¶
- Export With No Signals: Fixed a bug that prevented exporting trace messages when no signals were present.
- Export Error Handling: The export process will continue with remaining trace messages, rather than stop at the first error.
App 25.0.5 — April 12, 2025¶
Changed¶
- Double-Clicking: On Plot panels, the first double-click will return to your initial pause point, and the second will resume live mode
- Timeline Reset Button: When zoomed or panned on a plot, a reset icon will appear to return back to your initial view
Python 0.0.51 — April 12, 2025¶
Fixed¶
- Zelos Trace Plugin: dropping some data points when recording
zeloscloud.pytest.trace
plugin now handles messages with empty schemaszeloscloud.pytest.trace
plugin now performs best effort writing to the trace file (instead of early return on error)- See Zelos Trace Plugin for more information
App 25.0.4 — April 3, 2025¶
Fixed¶
- Crash Reporting On Native Errors: Improved crash reporting to capture native process crashes.
- Plotting Non-Numeric Signals: Fixed issue where plotting non-numeric signals resulted in no data displayed.
- Signal Pane Flickering: The signal pane no longer flickers when not attached to a live connection or trace.
- Log Spam With Expired Refresh Tokens: We no longer attempt to retry logins once the refresh token has expired.
App 25.0.2 — March 27, 2025¶
Fixed¶
- Log spam resulting in full disk: Improved log filtering to decrease log disk utilization.
App 25.0.1 — March 26, 2025¶
Fixed¶
- Exporting Data with NaN values: Resolved an issue where NaN values were not processed correctly when exporting data.
App 25.0.0 — March 25, 2025¶
Changed¶
- Improved Table Panel: All new redesign and implementation for the table panel. Read more.
- Easily filter, sort, and view multiple messages/signals in a tabular view
- Built in column searching that works across messages, signal names and values
- Quickly copy data to your clipboard as JSON
- Default Data Retention: 8 hours is now the default data retention period.
Fixed¶
- Memory Leak in Live Mode: The app should no longer cause an out-of-memory condition when running in live mode.
- Auto-restart UI on Crash: The UI will automatically restart if it crashes (white screen).
Python 0.0.50 — March 25, 2025¶
Added¶
- Zelos Trace Plugin: data streaming and recording
zeloscloud.pytest.trace
plugin for streaming and recording *.trz trace files during test runs- User hooks for configuring the trace file name, location, and more
- See Zelos Trace Plugin for more information
- UDS: Additional functionality
- Added support for Routine Control, IO Control, and File Transfer
- See UDS Codec for more information
- CanCodec: Config options
- Added
"suppress_errors"
flag to suppress log messages - Added
"emit_schema"
flag to emit the CAN schema for all messages/signals on init - Note: This can be useful for users who want to know which messages/signals are available (but not actually sent)
- See CanCodec for more information
- Added
- gRPC Codec/Link:
- Provides protocol-level handling for gRPC communication, all RPC types and streaming
- See GrpcCodec for more information
- Async IO: Add support for async throughout the entire zeloscloud core
Fixed¶
- CanCodec: Error handling
- Allow CAN messages with undefined multiplexer values
- Suppress log messages during the trace emit stage (after decoding)
Changed¶
- Link Imports: Improving dependency management
zeloscloud.links
now encourages users to import links from the specific link module.- Warnings are emitted when using the legacy
from zeloscloud.links import CanLink
import. - Before:
from zeloscloud.links import CanLink
- After:
from zeloscloud.links.can_link import CanLink
App 24.1.11 — December 2, 2024¶
Added¶
- Timeline: An interactive timeline bar with finely tuned controls. Read more.
- Drag left and right markers to adjust the start and end times of your time window
- Click and drag the highlighted area to move the entire time window along the timeline range
- New pulsating live data indicator shows when live data is being streamed
- Play/Pause live data with a single click, and use Left/Right arrow buttons to navigate the time window
- Timeline Shortcuts: Added shortcuts for controlling the timeline
- Left/Right Arrow Keys: Move the time window left or right
- Spacebar: Play or pause live data in live mode
Changed¶
- Tooltips: Improved tooltip behavior for better usability and responsiveness
- Station Configs: Renamed “Trace Config” to “Station Config” for improved clarity and consistency
Fixed¶
- Tabs:
- Enhanced light/dark mode support for tabs
- Active tab is always visible in the tab bar
- Fixed maximum character limit for tab names to prevent truncation
App 24.1.10 — November 21, 2024¶
Added¶
- Tab Reordering: Tabs can now be dragged to reorder them
- Tab Shortcuts: Added shortcuts (with associated macOS command variants)
ctrl-t
new tabctrl-w
close tabctrl-[1-9]
switch to tabctrl-shift-[
previous tabctrl-shift-]
next tabalt-left-arrow
previous tabalt-right-arrow
next tab
Python 0.0.49 — November 12, 2024¶
Fixed¶
- zelos trace: Fixed
AttributeError: 'Message' object has no attribute 'multiplexer_values'
error
Python 0.0.48 — November 7, 2024¶
Added¶
- zelos trace capture: Added a zelos trace capture command to capture a local .trz file
Removed¶
- zelos trace compact: Removed legacy trz folder compaction command
App 24.1.9 — November 6, 2024¶
Fixed¶
- Time Axis Labels: Axis labels always indicate the full timestamp
App 24.1.8 — November 5, 2024¶
Added¶
- Signal Value Decoding: Signals with enumerated values now display their string value in the UI
- Value Panels: Shows the latest value of a signal on a panel
- Plot Custom Colors: Added a color picker for choosing custom colors
- Show Full Name in Panel Options: In the edit panel menu, added an option to display the full signal name
Python 0.0.47 — November 5, 2024¶
Added¶
- Trace Values Tables: the
zelos-trace
command now sends enumerated value definitions to the app
Fixed¶
- Trace Optimization: Decreased CPU utilization when recording a trace
App 24.1.7 — October 25, 2024¶
Added¶
- Crash Log Telemetry: Added additional crash log reporting
App 24.1.6 — October 16, 2024¶
Fixed¶
- Python Extension: The python package now installs successfully on macOS
App 24.1.5 — October 16, 2024¶
Added¶
- Automatic Log File Cleanup: Log files will now be automatically deleted after 14 days (configurable in Settings > Advanced)
Fixed¶
- Ubuntu Excessive Syslog Spam: Fixed logs going to syslog
Python 0.0.46 — October 10, 2024¶
Added¶
- Linux AArch64 Support: Added pre-built wheels for manylinux2014 aarch64
Python 0.0.45 — October 8, 2024¶
Added¶
- Station Config: Added support for
_scope_
and_open_
tags for custom context management
Fixed¶
- Trace Conversion on Windows: Resolved issues creating
.trz
files on Windows - Serial Echo: Correctly ignore echoed data when echo flag is set
App 24.1.3 — October 7, 2024¶
Fixed¶
- TLS Root Store: Resolved issues with custom TLS root certificates
App 24.1.2 — October 7, 2024¶
Added¶
- Improved Logging: Added additional logging for login and crash handlers
Fixed¶
- Windows Compatibility: Switched to MSVC 2019 for increased compatibility
App 24.1.1 — October 2, 2024¶
Added¶
- Data Retention: Added a control to the general settings to configure data retention. By default, we retain 24 hours of data in memory.
- Table Panel: Added a table view that shows the last received values for each message.
- Station Configuration Editor: A new UI enables editing the current station configuration via the Trace Capture controls selector.
Fixed¶
- Faster UI Runtime: Switched UI runtimes to improve performance on Linux.
- Account Login: Resolved a bug where sessions expired frequently.
- Window Location Persistence: The app will now open to the last display it was open on.
Python 0.0.44 — October 2, 2024¶
Added¶
- Trace Quiet Flag: Added a
--quiet
flag to thezelos-trace
command. - Periphery Links: Added support for the Linux peripherals GPIO, I2C, MMIO, PWM, SPI.
Fixed¶
- Trace Performance: Improved performance when running in
--no-ws
mode. - CanCodec float scaling: Log CAN signals with float scaling factors as floats.
App 24.0.0-alpha+29 — August 14, 2024¶
Added¶
- SSO login: Login to the application using Github, Microsoft, or Google SSO. You'll automatically be added to your Org based on the email. Read more.
- Layouts: Create, save, share, and apply layouts for all your visualization/debugging workflows. Login is required to use this feature. Read more.
- Converters: Automatically convert from common CAN formats such as
.asc
,.trc
,.log
into Zelos traces. Only supported on MacOS & Linux.
Changes¶
- Fix light mode text colors
- Improve scrolling behavior across all platforms
- Better support for .trz extensions on linux
- Made search default to case-insensitive
- General bug fixes, optimizations, and improvements!
Python 0.0.43 — August 14, 2024¶
Added¶
- Links: Added new Zelos App tracing support for links
Changes¶
- CAN Codec: Improve logging behavior for warning/errors
App 24.0.0-alpha+25 — July 26, 2024¶
- Server: Bind to 0.0.0.0 rather than localhost to enable capturing data from WSL VMs.
- Advanced Settings: Add settings for framerate, fetch interval, database memory usage, and database thread count.
- Advanced Settings: Add "Clear All Data" button.
- Installer: Add Apt repository for Ubuntu 22.04 Jammy (amd64).
- Extensions: Use the native certificate store, enabling support for corporate HTTPS proxies.
Python 0.0.42 — July 19, 2024¶
Changes¶
- CAN Codec: If
allow_duplicates=True
is passed to the CAN codec, don't fail for name collisions between signal/messages. Messages will take higher precedent, and the conflicting signal must be accessed by the message instance.
App (Alpha) — July 18, 2024¶
- Alpha release of the all new Zelos App! For more details and an installation guide, you can see more here.
Python 0.0.41 — July 18, 2024¶
Added¶
- BLE Codec: Codec support for BLE-enabled devices. Services, characteristics, fields and more with a custom schema for testing and visualizing data with messages/signals. Read more.
- BLE Link: Client link support for BLE-enabled devices. Support for both async and non-async methods for connecting, read/write characteristics, notifications, and more. Read more.
- Trace Plugin: Added new
trace
plugin that enables observability for all codecs with the new Zelos App. - Serial/Visa Schema: The serial schema used by SerialCodec and VisaCodec now support adding a "unit" field.
- Check Plugin: The checker plugin now supports duration based checks. Check that a condition is true within a specific duration or that it was true for a specific duration.
Changes¶
- Serial/Visa Codec: Serial/Visa signals that were part of a message must now be accessed directly from the message. Previously, you could do
codec.message_signal.set()
, and now you must docodec.message.signal.set()
. - Check Plugin: Checker ops parameters are now plumbed through to
.that()
using explicit args/kwargs params. See examples. - CAN Codec: Changed CAN decoding errors into warnings.
- PPK2: Signals are now placed under a "measurements" grouping in Zelos plot.
- Trace: Allow bitrate configuration support for the --can option in zelos-trace.
- Core:
- Removed IoBase class and consolidated into CodecBase.
- Renamed Signaller to MessageBase and improved signal support.
- Tons of bug fixes, optimizations, and logging improvements!
Plot — May 10th, 2024¶
Added¶
- web/zplot: Added workspaces and workspace imports to the application.
Python 0.0.40 — May 9, 2024¶
Fixed¶
- trace: Resolved memory leak when using the
zelos-trace
server
Python 0.0.39 — May 3, 2024¶
Added¶
- cli/zelos: Added
zelos test
command - test/visa: add more default IEE 288.2 commands
- trace: Automatically increase
RLIMIT_NOFILE
to prevent running out of file descriptors when recording or converting traces. - trace/mock: Add measurements message with additional mock data.
Changed¶
- cli/zelos: Replaced
zelos trace convert trc
command with genericzelos trace convert can
command.
Plot — April 30, 2024¶
Added¶
- Dashboards and tabs
- Grouped table data
Python 0.0.38 — April 11, 2024¶
Added¶
- cli/zelos: Added
zelos trace convert trc
command
Python 0.0.37 — March 29, 2024¶
Added¶
- test/ios: Added IO support for PowerProfileKit2 (PPK2), zplot io support, and examples/documentation.
Python 0.0.36 — March 29, 2024¶
Fixed¶
- cli/zelos-uds: Fixes
zelos-uds
to work withUdsCodec
interface changes - test/UdsCodec: Fixes default config parameter when no config is given
Python 0.0.35 — March 27, 2024¶
Added¶
- test/UdsCodec: Added preliminary support for UDS DIDs in Zelos Plot and configurable periodics
- telemetry: Log anonymous telemetry on exceptions with the zelos cli
Developer Notes¶
- test/UdsCodec: Interface breaking changes. UdsCodec now accepts a consolidated dictionary
config
which should be populated with the existing parametersclient_config
anddid_definitions
.config["did_periodics"]
is a new entry which can be used to configure periodic DID reads/writes (read period determines zplot update rate)
Python 0.0.34 — March 12, 2024¶
Fixed¶
- cli/zelos-uds: Implemented pathlib.Path.home() for Windows compatibility.
Python 0.0.33 — March 12, 2024¶
Added¶
- docs/CAN+Visa: Added documentation for CAN and Visa codec and links.
Fixed¶
- cli/zelos-uds: Fixed UDS data payloads.
Python 0.0.32 — March 11, 2024¶
Added¶
- test/plugins: Added preliminary support for a JIRA plugin.
Fixed¶
- web/zplot: Fixed issue where cmdquery events weren't showing up.
Python 0.0.31 — March 9, 2024¶
Added¶
- cli/zelos: Updated project template to include serial configuration.
- cli/zelos: Added a new command to the CLI:
zelos compact
. - cli/zelos: Added alias
-h
for--help
command. - cli/zelos: Improved help text and added support for URLs in terminals without hyperlink support.
- docs/Serial: Improved serial documentation with better examples, helpers, and troubleshooting tips.
Fixed¶
- test/VisaCodec: Fixed custom codec value types in the visa codec.
- test/VisaCodec: Fixed issues related to binary handling in the visa codec.
- test/SerialCodec: Fixed issue in the serial codec where messages would not receive all data.
Python 0.0.30 — March 8, 2024¶
Added¶
- test/SerialLink: Defaulted to removing return/new-line characters from data in the serial link.
- cli/zelos-uds: Fixed custom codec value types.
- web/zplot: Changed text on local open button.
- web/zplot: Added reconnect button to connection widget.
- web/zplot: Added functionality for opening local files.
- docs/zplot: Removed "Cannot open local files" limitation from docs.
Fixed¶
- test/Serial+Visa: Fixed custom codec value types.
- test/Serial+Visa: Propagated echo option to signals/messages.
Python 0.0.29 — March 7, 2024¶
Added¶
- test/VisaCodec: Added support for visa codec/links, matches implementation of command/query signal/messages from serial.
- Added voltage signal set/gets example.
- test/CanCodec: Set rcvbuf to a larger value on socketcan interfaces.
- test/SerialCodec: Added tracing support for the serial codec.
- cli/zelos-uds: Added color, improve output, and more documentation.
Fixed¶
- test/SerialCodec: Fixed CmdQuerySignal sets/gets so they actually work.