Skip to main content

Agent v1.3.0

Agent

This release contains several improvements and bugfixes.

New & Improved
  • More flexible filter configuration for identifying recording files
  • Added support for SHA-256 checksum-on-upload for AWS and S3-compatible object stores
  • Logs are forwarded to journald by default when installed via the .deb package
  • File creation time is used instead of ctime, on filesystems that support it
  • Azure and S3-compatible configuration variables have been renamed for consistency (old variables are still accepted for compatibility)
Deprecated
  • AZURE_INBOX_STORAGE_ACCOUNT_NAME renamed to AZURE_STORAGE_ACCOUNT_NAME
  • AZURE_INBOX_STORAGE_SERVICE_URL renamed to AZURE_STORAGE_ENDPOINT and made optional
  • RECORDING_STORAGE_S3_COMPATIBLE_ACCESS_KEY_ID renamed to S3_COMPATIBLE_ACCESS_KEY_ID
  • RECORDING_STORAGE_S3_COMPATIBLE_ACCESS_KEY renamed to S3_COMPATIBLE_ACCESS_KEY
  • RECORDING_STORAGE_S3_COMPATIBLE_REGION renamed to S3_COMPATIBLE_REGION
  • RECORDING_STORAGE_S3_COMPATIBLE_URL renamed to S3_COMPATIBLE_URL
  • WATCH_IGNORE_SUFFIX deprecated in favor of WATCH_(EXCLUDE|INCLUDE)_(REGEX|SUFFIXES)
Fixed
  • The agent now latches device identity, to detect potential misconfiguration
  • Fixed an issue where the agent consumes excessive CPU while handling filesystem events
  • Fixed an issue with enabling and starting the systemd service during install
  • Fixed an issue with recordings_gigabytes accuracy, which is now updated hourly

Docs: About, Install | Debian Packages: amd64, arm64 | Binary Files: amd64, arm64

Foxglove 2.20.0

↔️ Expand or trim the visualized time-range

You can now expand or trim the range of data visualized in Foxglove. Click the "adjust playback range" button in the lower left of the screen when replaying a recording or time-range of data.

Adjust range button

With these updates you can:

  • Drag the handles on the playback bar for quick adjustments
  • Enter specific times into the dialog for precise adjustments
  • Copy a link to share the updated time-range selection with your team

🔎 Improved topic search and exploration

When searching through the topics sidebar, you can now use search to narrow down to a topic and then expand it to view the fields that exist in that topic's message schema.

🚅 Better, faster Log panel

The Log panel has been rewritten for improved performance. The new panel shows indicators in the scrollbar to make it easier to find warning & error messages.

You can now copy links to recordings directly from the recording details page. This lets you easily copy links from the desktop app to share notable recordings with colleagues.

Recording details page

New & Improved
  • Extension panels will now display an alert when memory use limit is met for preloaded messages
  • The Image panel now uses a "frame lock" which ensures the image coordinate frame uses the image timestamp rather than the current time
  • Hide URDF link frames by default for better usability
  • Improved handling of topics that contain multiple conflicting schema definitions
  • Added an alert when the timestamps of the X and Y values in an XY (path based) plot do not match
Performance
  • Performance improvements for loading extensions
  • Improved the performance of scrubbing through a recording
  • Improved performance of the app while the settings sidebar is open
  • Performance improvements to the rotate() User Script utility function
Fixes
  • User Scripts output topics now have a Publish time, if available from the input topic
  • User Script's rotate() utility function now follows standard quaternion conventions
  • Fixed an issue where topic markers would flicker when on top of each other
  • Fixed an issue where scrolling in the Log panel would cause the selected lines to change
  • Fixed an issue where plots would not load correctly when switching layout tabs
  • Fixed an issue with the range calculation when plotting live data in index mode
  • Fixed an issue with rendering of enums/constant labels when the data is from an array of values
  • Fixed an issue with the formatting of auto-generated request messages in the Service Call panel
  • Fixed an issue with selecting image annotations
  • Fixed an issue where User Scripts hover overlays would not stay open when mousing over them
  • Fixed an issue with default array values when calling ROS 2 services
  • Fixed an issue preventing the User Scripts' problems list from scrolling
  • Fixed an issue where Events would continue to display in the playback bar after switching from cloud data to a local file
  • Fixed an issue when importing JSON Schema definitions with null properties
  • Fixed an issue that could crash the 3D and Image panels when visualizing corrupted text data
  • Fixed an issue where the 3D panel grid would occasionally flicker
  • Fixed an issue preventing of unindexed MCAPs with empty chunks from loading
  • Fixed an issue causing the Raw Message panel to display stale and data when using a path with global variables and changing the value of the global variable in the path
  • Fixed a performance regression with the State Transitions panel
  • Fixed an issue where the desktop app would not allow you to right-click and download an image from the Image panel
  • Fixed an issue where the 3D panel's grid color could shift at a distance
  • Fixed an issue where recordings with timestamps prior to Jan 1 2000 didn't appear in the Timeline view
  • Fixed an issue where the 3D panel's camera would rotate when switching from follow to other modes
  • Fixed an issue causing URDFs to be shown despite visibility being set to false

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal

Foxglove 2.19.0

🎬 Support for H265, AV1, and VP9 video codecs

Foxglove now supports H.265, AV1, and VP9 video codecs in the Image and 3D panels. This is in addition to the existing support for H.264.

See the CompressedVideo schema documentation for details on how to encode video messages in MCAP and codec specific information. An example utility for writing MP4 video files to MCAP is available here.

warning

Compressed video support is subject to hardware limitations and patent licensing, so not all encodings are supported on all platforms. See more about H.265 support, VP9 support, and AV1 support.

≥ New comparison operators supported in message paths

We've added support for !=, <, <=, >, and >= operators when using filters in message paths. This is in addition to the existing == operator. This means you can now execute more advanced filters on your data such as:

/markers/annotations.markers[:]{id<5000}{id>1000}.id

This would return annotation markers with ids between 1000 and 5000, exclusive.

🖥️ Quick access fullscreen

We've made it easy to quickly enter a panel's fullscreen mode with one click. Select the ⛶ icon in the top right corner of a panel to enter fullscreen mode.

New & Improved
  • Clicking left of the start in the Plot or State Transitions panel now sets playback to the start of the timerange
  • Read-only number inputs in settings no longer show increment and decrement buttons
  • The default flat color for points in Point Cloud and Laser Scan visualizations is now visible in both light and dark mode
  • The desktop app now uses native window controls in Linux to better match the system theme
  • Improved error reporting and recovery when receiving malformed data from WebSocket server implementations
  • Updated app settings to use the term "log time" instead of "receive time"—in line with MCAP terminology
  • Improved usability of the 3D panel's click-to-publish tool and settings
  • It's now possible to hide individual URDF links in the 3D panel
  • The display of joint information in the 3D panel has been simplified
  • It's now easier to set manual joint states for a URDF when no transforms are provided by the data source
  • URDF frame axis can now be toggled and scaled independently of the transform settings
  • Foxglove now surfaces an error if the data source does not provide all transforms for a URDF
  • Added support for floating-point numbers in message path filters with various common formats such as 0.5, -4.28e-5, .3333, +22.
Performance
  • Improved the performance of plot series loading
  • Improved pending imports table performance
  • Improved the performance of the Timezone selector UI
  • Various performance improvements
Fixes
  • Fixed a bug with the transparency of occupancy grids which occasionally caused rendering irregularities
  • Fixed a bug where dragging images outside the panel would highlight text
  • Fixed a bug causing values in the Plot panel tooltip to shift while panning
  • Fixed a bug causing flickering of the 'current time' bar in the Plot panel during live playback
  • Fixed a bug where ROS 2 messages containing only constants were not correctly serialized/deserialized
  • Fixed a bug where LaserScan visualization defaults appeared incorrectly in the settings panel
  • Fixed a bug preventing drag & dropped files from appearing in recents
  • Fixed a bug causing indexed-based plots to flicker
  • "Plot this value..." from the Raw Message panel will now check for a Plot panel with a compatible configuration
  • Fixed a bug allowing an invalid option "distance (auto)" to be selected in LaserScan color settings
  • Fixed a bug where map layer attribution would cover the map scale
  • Fixed a bug where switching between layouts would occasionally cause URDFs to load incorrectly
  • Fixed a bug where adding a URDF in one panel could affect the displayed transforms in another panel
  • Minor UI fixes

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal

Edge Site v0.0.32

This release adds additional customization options.

Feature
  • Feature: add support for extraVolumes, extraVolumeMounts, initContainers and custom image names

Docs: About | Install | Upgrade

Agent v1.2.3

Docker Image

This release is the first published as a Docker image. See Installation for usage instructions.

Fixes
  • Fix case where if DISABLE_SERVER is set to True, the agent exits immediately instead of monitoring for recordings.
  • Disable v1/recordings HTTP endpoint by default in .deb package.
  • Agent ignores subdirectories in the watch directory which it cannot read.

Docs: About, Install | Debian Packages: amd64, arm64 | Binary Files: amd64, arm64