⚡ All new State Transitions panel
We re-wrote the State Transitions panel from the ground up to improve performance and usability. While things may look the same, the new State Transitions panel is more than 2x faster loading saved data, and more than 10x faster rendering high-frequency (> 1kHz) messages as points. We've also cut latency in half when panning and zooming, making it feel smoother and more responsive.
We've also made lots of little tweaks like making labels easier to understand when you zoom out. This is only a start; we have more to come.
⛵ Expand and explore topics
The updated topic sidebar (open with [
shortcut) allows you to expand and explore topics in your data. You can now see the structure of your data and easily navigate through it. Select fields you're interested in and drag them into relevant panels to visualize them.
🧠 Intelligent settings for live vs replay
The Plot panel and State Transitions panel now automatically switch the default time-range displayed based on the data source type. Live data defaults to showing the last 30 seconds while replayed recordings show the full time-range. These defaults can be overridden in the panel settings.
♻️ Manage data retention on your devices
The Foxglove Agent now makes managing data on your robot easy. Once you've installed the Foxglove Agent on your robot and connected it to Foxglove using a device token, set the retainRecordingsSeconds
property for your device using the devices
API. As data gets on your robot's disk ages out, the Foxglove Agent will automatically delete it based on the policy you've set.
Setting the retention period to zero retains data indefinitely and is the default state. You can set different retention policies for each of your devices and update them at any time. Each time your device connects to Foxglove, it will automatically sync its settings.
📎 Copy links and download data in viz
You can now copy links to your visualization or download data from the visualizaiton UI. Click the ⌄ button in the top bar next to the data source name to copy a link to your current visualization or download the data. On download you'll be able to edit the time range, which topics you want, and the format of the data.
New & Improved
- Improved search in the topic sidebar to make it easier to find specific message fields
- Added a splash screen when launching the app
- Font size can now be changed for the Indicator panel in the settings
- Global variables are now supported in message paths for the Indicator and Gauge panels
- Added support for DELIMITED_CDR2-encoded appendable sequences and arrays
Performance
- Plot panel stability improvements
- Reduced desktop app initialization time
- Stability improvements for panels subscribing to the transform tree
- Improved app stability for Ubunutu 22.04 users
Fixes
- Fixed a bug with the
importStatus
field of webhooks notifications for recordings that were deleted and then re-uploaded
- Fixed a bug where Map panel settings would not display in some cases
- Fixed a bug causing the last message to be skipped during playback in some cases
- Fixed a bug where the performance sidebar would show multiple entries for user scripts
- Fixed a bug causing the app to occasionally crash when double-clicking files to open them in the desktop app
- Fixed a bug preventing editable transform fields in the 3D panel from being set to values less than 0.1
- Fixed a bug preventing user scripts from importing
.ts
modules in certain scenarios
- Fixed a bug where
publishTime
was not set on message events when streaming from Foxglove
- Fixed a bug where transform frames would be incorrectly visualized when their parent frame changed
- Fixed a bug loading flatbuffer data with large or numerous fields
API
- Deprecated
mcap0
in favor of mcap
as an outputFormat option for /data/stream
- You can now create devices automatically when using the
/data/upload
API by specifying a new deviceName
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal