Skip to main content

Foxglove v0.18.1

Fixed

  • Fixed multiple preloaded datasets from overlapping in the State Transitions panel
  • Prevented late hover events from triggering when hovering on a Plot panel
  • Fixed a crash when loading layouts created with older versions of Foxglove or Webviz

Foxglove v0.18.0

Added

  • Added support for decoding /rosout via native ROS 2 connections
  • Added support for clicking on a graph to seek to the corresponding timestamp in the State Transitions panel
  • Added preloading support to the State Transitions panel
  • Added a vertical line indicating the current playback time in the State Transitions panel
  • Added a title setting to the Plot panel

Changed

  • Cleaned up styling in the app settings' "Experimental Features" section
  • Changed default behavior for time-based Plot panels by keeping their x-axes synced, even after panning or zooming
  • Updated docs to link out to external doc pages on foxglove.dev
  • Used consistent sentence-casing throughout the app

Fixed

  • Fixed topic filter settings in the Topic Graph panel
  • Fixed a bug where selecting a message path from the Plot panel's dropdown would replace the wrong text, resulting in an invalid path
  • Fixed issue where the user receives an un-actionable message when the playback bar has an invalid range
  • Fixed an issue with the tooltip getting stuck open on the playback controls
  • Fixed Plot panel tooltip to show data from the nearest point when hovering over a certain x-axis value
  • Fixed "Studio Debug Panels" experimental feature flag to hide debugging panels by default
  • Improved plot downsampling algorithm to avoid introducing gaps with adjacent datasets
  • Fixed issue with native ROS 2 connections not being established correctly due to implicit history size

Foxglove v0.17.0

Added

  • Added beta support for ROS 2 native connections (ROS 2 Rosbridge connections are more battle-tested)
  • Added support for loading ROS 2 Eloquent bag files
  • Added ability to explicitly save a layout, and to revert a layout to its last explicitly saved state
  • Added a clickable file icon in the macOS window titlebar to show the loaded file's location

Changed

  • Removed fine-grained undo/redo functionality for layouts in favor of the new ability to revert changes to baseline layout
  • Implemented more accurate sampling in the Plot panel for highly variable data points
  • Sorted layouts in alphabetical order
  • Automatically added a Welcome layout when deleting the last layout

Fixed

  • Fixed drag & drop handling of .xacro files
  • Fixed layout issues with full screen panels
  • Aligned field labels in the Raw Messages panel and the 3D panel's marker details modal
  • Fixed plots with a custom (non-timestamp) x-axis from attempting to sync
  • Fixed OOM on Linux loading certain bag files
  • Improved CPU usage when connected to a live data source
  • Improved Plot panel performance when connected to a live data source

Foxglove v0.16.0

We've added a Teleop panel, as well as support for live ROS 2 Rosbridge Websocket connections!

Added

  • Added a Teleop panel to send geometry_msgs/Twist messages with a configurable publish rate
  • Added advertise, unadvertise, and publish methods to the panel extensions API
  • Added ROS 2 support to panels that support only certain datatypes (e.g. sensor_msgs/msg/Image in addition to sensor_msgs/Image), to improve compatibility with ROS 2 bags, WebSocket connections, and future native connections
  • Added a README.md for @foxglove/studio-base
  • Added ROS 2 support for Rosbridge WebSocket connections
  • Added "Foxglove Studio" after the current data source in the titlebar title

Changed

  • Detected host platform to display the correct shortcut key in the Welcome panel
  • Added a check to avoid rendering if point cloud field offsets point past the end of the byte array
  • Improved error handling for native ROS 1 connection failures, by surfacing them as player problems
  • Added a check for the size of ROS 1 messages before deserializing, surfacing failures as player problems or user notifications
  • Removed in-app title bar to display connection problems as a badge on the connections icon or as text inside the connections tab

Fixed

  • Fixed Legacy Plot to properly display data when read from bags and other data sources using lazy messages
  • Display title and axis labels from message on the Legacy Plot
  • Fixed ROS 2 message parsing and deserialization, and improved error reporting
  • Fixed issue where panels would sometimes disappear from the layout when dragged out of Tab panels
  • Fixed an issue with performing mDNS lookups with a @foxglove/electron-socket update
  • Filtered the datasets down to the configured view bounds before sending to the Plot panel
  • Fixed ROS 1 message decoding regression with a @foxglove/rosmsg-serialization update
  • Fixed ROS 1 publishing with @foxglove/ros1 and @foxglove/electron-socket updates
  • Fixed State Transitions panel to place chart items under the correct legend item
  • Fixed styling on the Plot panel's hover bar to appear consistently on all browsers

Internal

  • Removed punycode, a dependency for older libraries with Webpack v4, from appearing in web builds
  • Remove unused code
  • Migrate to @foxglove/rostime package

Foxglove v0.15.0

In this release, we focused on bug fixes and making further improvements to app styling.

Changed

  • Enabled the Image panel's image markers dropdown, even when their topic name does not match the camera image topic
  • Scoped app styling to a top-level app container, instead of applying styles globally

Fixed

  • Fixed the Image panel's download feature to download the image at its original size
  • Fixed a crash when hovering on int64 or uint64 values inside arrays in the Raw Messages panel
  • Fixed a memory leak when attempting to automatically re-establish a connection to a rosbridge WebSocket
  • Fixed 3D panel error that appears when turning a topic off after toggling its namespace markers
  • Removed outdated Slack channel from Node Playground panel documentation

Internals

  • Removed references to global React in the ErrorBoundary component
  • Added back the legacy 2D Plot panel under a feature flag
  • Deleted unused code from the @foxglove/studio-base package
  • Upgraded dependencies, including @foxglove/rosbag
  • Updated lint rules to ban the use of the any type in conditionals

Foxglove v0.14.0

We've migrated more components to use FluentUI, made improvements to our web build, and fixed some outstanding bugs.

Added

  • Added browser support message when trying to load web build on unsupported browsers or versions
  • Added message encouraging users to install desktop app when they try to install extensions on the web build
  • Added a ?demo URL param to the web build to force loading the Welcome layout
  • Added a dialog for activating a sign-in code

Changed

  • Improved appearance of ErrorBoundary component
  • Moved notifications to be displayed in toasts
  • Moved the 3D panel's polygon drawing feature behind a feature flag to prepare for deprecation

Fixed

  • Fixed React key warnings on tooltips
  • Fixed bugs in how the timestamp tooltip appears above playback bar
  • Fixed the dropdown menus in 3D panel's topic settings editor to be consistently clickable
  • Fixed issue where PointClouds didn't render with non-RGB color fields
  • Added back the alpha field for PoseStamped messages' topic settings editor in the 3D panel
  • Handled corrupt layouts gracefully by allowing users to switch layouts or add panels from scratch
  • Fixed error when dragging and dropping panels into an empty layout
  • Fixed React warning for uncontrolled input

Internals

  • Added layout storage providers for team shared layouts feature
  • Converted player components to use FluentUI
  • Added support for ROS 2 Rosbridge (Websocket) connection behind a feature flag
  • Removed unused constants
  • Added business logic to add a preconfigured panel to layout
  • Added web analytics for web build
  • Gated layout debugging in dev
  • Added tracking for layout management metrics – i.e. adding and removing panels, creating / sharing layouts
  • Removed global styles
  • Simplified layout API by merging shareLayout and renameLayout into updateLayout
  • Renamed rosbag.js to @foxglove/rosbag
  • Automated release workflow

Foxglove v0.13.2

Added

  • Added ability to toggle different groups of topics in the Topic Graph panel
  • Enabled loading and playing bags containing topics with empty message definitions
  • Displayed banner when opening app.foxglove.dev on an outdated version of Chrome or an unsupported browser
  • Added a spinner when lazily loading panels

Changed

  • Removed unsupported options to connect to a ROS 1 or Velodyne LIDAR data source in the web build
  • Removed experimental feature flag for "Extension Marketplace" to always display extension marketplace in sidebar

Fixed

  • Updated rosbag.js to gracefully handle truncated or corrupted bag files

Internals

  • Changed panel components to be lazily loaded
  • Updated dependencies on internal packages, including @foxglove/ros1, @foxglove/rosbag2-web, @foxglove/rosmsg-msgs-common, @foxglove/rosmsg-msgs-foxglove, and @foxglove/rosmsg-serialization

Foxglove v0.13.0

Foxglove now supports loading and visualizing two new data sources – ROS 2 bag files and Velodyne LIDAR!

Added

  • Added support for loading and visualizing rosbag2 files; renamed ROS 1 data sources
  • Added a Velodyne LIDAR data source in the Connection tab that connects directly to Velodyne LIDAR hardware by listening for packets on a local UDP port
  • Enabled hovering on a map point to highlight the corresponding playback time, and clicking on a map point to seek to that time
  • Added panel setting to hide topics without subscribers in Topic Graph panel

Changed

  • Allowed filtering topic messages based on any field value in Raw Messages panel
  • Transitioned more components to use FluentUI
  • Sorted panels alphabetically in Add Panel sidebar

Fixed

  • Fixed issue with displaying bigint values in Raw Messages panel
  • Fixed image markers that became blurry on zoom in Image panel
  • Fixed issue where a split panel incorrectly loses its state
  • Fixed playback bugs when no layout is present
  • Fixed issue with copying messages in Raw Messages panel

Internals

  • Added UX issue template
  • Updated bug report template
  • Added and resolved lint rules
  • Extracted packages into separate npm packages
  • Updated repo README

Foxglove v0.13.1

This is a patch release with no new features since v0.13.0. Some of the release binaries for v0.13.0 were incorrect, so we have re-published the correct binaries under a new version number.