Foxglove v2.7.0
ποΈ List available services from ROS and custom Foxglove WebSocket connectionsβ
When streaming live data for visualization over the Foxglove bridge, the available services are now listed in the Service Call panel.
βοΈ Quickly access recent cloud data sourcesβ
Recently accessed cloud data sources will now show in the "recent sources" list on both the dashboard and the left-hand menu. These sources will be marked with a βοΈ icon.
π Construct shareable links using your device nameβ
You can now create shareable links using ds.deviceName
to refer to data associated with one of your devices using the name you gave it in Foxglove. For example, to create a shareable link that visualizes data from my-device
between specified start and end times with the layout ID abc123
, use the following parameters:
ds.deviceName=my-device
ds.start=2024-04-18T16:26:41.371Z
ds.end=2024-04-18T16:30:51.055Z
ds.layoutId=abc123
The URL will look like this and can be shared with anyone in the my-org
organization:
https://app.foxglove.dev/my-org/view?ds=foxglove-stream&ds.deviceName=my-device&ds.start=2024-04-18T16%3A26%3A41.371Z&ds.end=2024-04-18T16%3A30%3A51.055Z&layoutId=abc123
Note that parameters must be URL encoded, so for example 2024-04-18T16:26:41.371Z
becomes 2024-04-18T16%3A26%3A41.371Z
.
π Performance gains on macOSβ
The Foxglove desktop app on Mac now uses Metal, a high-performance graphics API developed by Apple. By using Metal, we're now able to reduce CPU overhead and get nearly direct access to GPU resources for significant performance gains.
New & Improved
- When adding a 3D panel, a grid is now automatically added to the scene to make the ground plane clear
- Added support for streaming schemaless JSON topics
- If the same recording is uploaded twice for one device with two different recording
key
values, the duplicate is now assumed to be an error and is rejected - We've unified timezone settings between data management and visualization
- The Raw Message panel now displays human-readable enum values when viewing vectors of enums typed as uint8 from flatbuffer data sources
Performance
- Performance improvements for preloading topics
- Improved memory estimation to reduce out-of-memory issues with data containing high-frequency signals and large numbers of message fields
Fixes
- Fixed an issue that resulted in numerous app upgrade notifications on desktop
- Fixed an issue where double-clicking an MCAP file to open it with the desktop app would not add it to recents
- Fixed an issue with timeseries plot dataset preloading
- Fixed an issue with message converters being called more frequently than necessary for preloaded topics
- Fixed an issue causing some User Scripts to fail
API
- The
retainRecordingsSeconds
property for Edge Sites on the/sites
API has been updated to intepret0
as indefinite retention period
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal
Foxglove v2.6.1
Primary Site v0.0.41
π οΈ Sorting messages by log timeβ
The inbox listener will now sort messages in files by their log time while importing. This means that if messages are recorded out of order because of multithreading, clock skew, or other reasons, they can still stream back in time-stamp order. See the inbox listener configuration documentation for configuration options.
New & Improved
- Updated the inbox listener so if a file is provided with an invalid device name or ID, the import will fail immediately rather than being retried repeatedly
- Added support for importing and streaming MCAP files containing channels with schema ID 0 (no schema)
Fixes
- Fixed an issue where the stream server would exit uncleanly and log an error then the
SHUTDOWN_TIMEOUT
was exceeded while waiting for open requests to complete after being sentSIGTERM
Agent v1.1.3
Foxglove v2.6.0
βοΈ Renaming Tab panelsβ
Weβve made it easier to rename Tab panels. The Tab panel can be helpful for organizing complex layouts where you need lots of information at hand without switching layouts.
π¨ Better handling of conflicting message schemasβ
Robotic systems are complex and multi-faceted. Itβs occasionally possible to accidentally introduce two different versions of the same schema on the same robot system. To help with this, we added friendly error messages that surface in the Problems sidebar when conflicting duplicate schema names are found in an MCAP file and cause replay issues.
New & Improved
- Added clarifying tooltips to the settings of several panels
Performance
- Improved speed of loading recording data when no User Scripts are in use
- Performance improvements to the Plot panel in multiple places including during playback and when using the derivative math modifier
Fixes
- Fixed an issue where reinstalling a local extension would temporarily clear out the settings editor for custom panels
- Fixed an issue in the Raw Messages panel where some values were not properly left-aligned
- Fixed a bug where Global Variables were being initialized as a string containing two quotes (
"\"\""
) - Fixed an issue with opening items from the recent list in multiple windows
- Fixed an issue where series in the Plot panel with auto-assigned colors would change color when another series was removed
- Fixed an issue where uploading and then deleting a recording with a
key
via the/data
REST API prevented uploading another recording with the same key ever again - Fixed an issue in the Raw Messages panel preventing users from opening items in long arrays one at a time
- Fixed an issue preventing Foxglove from initializing when many instances of the app with multiple extensions are open
API
- Added
includeData
andupdatedSince
query parameters to the/layouts
REST API
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal
Edge Site v0.0.26
Edge Site v0.0.25
This release contains minor improvements and fixes.
New & Improved
- Validation was added to
POST /v1/recordings
to return an error status if thedeviceName
does not match our existing API's validation criteria
Fixes
- Fixed an issue where garbage collection was not working for Edge Sites with a retention period configured and the site token configured via
FOXGLOVE_SITE_TOKEN
Foxglove v2.5.1
This release contains some minor bug fixes.
Fixes
- Fixed an issue with drag-and-drop that resulted in opening the dragged file too many times
- The Plot legend now correctly respects math modifiers used in message paths
Foxglove v2.5.0
π€ Customize table viewsβ
You can now manage and resize table columns on the Device and Event tables to customize how you view your data.
β±οΈ RFC 3339 and 24-hour time formatsβ
Visualization playback now supports displaying timestamps in RFC 3339 (ISO 8601) and 24-hour formats in addition to 12-hour and epoch.
βοΈ Renamed NPM packageβ
When we launched Foxglove 2.0, we dropped the "Studio" name. In keeping with that, we renamed the @foxglove/studio
NPM package to @foxglove/extension
. Please update your custom extensions to depend on @foxglove/extension
to receive future SDK updates.
New & Improved
- All users on free plans have the βadminβ role to simplify how small teams and individuals use Foxglove
- Improved the discoverability of help text in settings
- Device name search in UI is now case insensitive
- When streaming a recording from Foxglove cloud, recording name shows in the app bar
- Added support for OMG IDL empty structs
- Added support for FlatBuffer
union
fields, vectors of unions, and fixed-length arrays - FlatBuffer messages fields are now displayed in the order of their
id
- Added the ability to create shareable links using user-defined
recordingKey
Performance
- Made additional memory usage optimizations for the state transition panel
- Improved the performance of querying Foxglove Events tied to a particular device
- Performance improvements for parsing FlatBuffer messages
- Performance improvements for loading recordings
- Performance improvements for computing message paths used in auto-complete
- Improved performance of connected-line scatter plots via downsampling
Fixes
- Fixed a bug on the desktop app where zooming in/out during playback would result in a misaligned app bar
- Fixed an issue where moving the desktop app between screens with different pixel densities would cause the toolbar to change size
- ixed an issue where plot panels with no x-axis range configured would cause downsampled data to jitter for some datasets
- Fixed multiple issues with the βreset viewβ button behaving incorrectly on the state transition panel
- Fixed a bug where window controls wouldn't appear in Linux desktop apps before sign in
- Fixed incorrect message count for topics with multiple MCAP channels
- Fixed a bug where message fields whose names contain special characters could not be plotted by clicking on the value from the Raw Message panel
- Prevent layout shifts when hovering over a value in the Raw message panel
- Fixed an issue causing drift of image annotations on large images when zooming in
- Fixed an issue preventing markers from being deleted and re-added with the same
id
- Hardware acceleration now works for the Foxglove Snap package
- Fixed decoding of JSON messages without complete JSON schema definitions
- Malformed video data no longer causes the image panel to crash