Skip to main content

Primary Site v0.0.84

This primary site release adds an optional feature that will send health metrics to Foxglove.

These metrics are all Prometheus metrics generated by the Foxglove services in the chart (query-server, inbox-listener or indexer, and site-controller) as well as the new kube-state-metrics component that monitors the pods and deployments in your cluster's Foxglove namespace.

This feature can be disabled by setting the following in your values.yaml:

globals:
publishSiteMetrics: false
Added
  • Added new deployment for kube-state-metrics. This will monitor the Foxglove namespace and produce metrics about the health of pods.

    It can be disabled by updating your values.yaml file:

    kubeStateMetrics:
    enabled: false
  • The site-controller will now gather health metrics from the Foxglove namespace and send them to Foxglove. These metrics will be used to monitor the health of your deployment.

    It can be disabled by updating your values.yaml file:

    globals:
    publishSiteMetrics: false

Docs: About | Install | Upgrade

Foxglove 2.39.1

This release contains minor bug fixes.

Fixes
  • Fix issue with series in index-based plots which contain all undefined values
  • Fix @derivative and @delta math modifiers for filtered message paths

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

Foxglove 2.39.0

🐍 Python Notebook Integration

You can now visualize data in any Jupyter-like notebook environment using the new notebook integration. Install the package with pip install "foxglove-sdk[notebook]", then use foxglove.init_notebook_buffer() to create a buffer for collecting and displaying data in an interactive Foxglove viewer within your notebook.

The integration supports:

  • Streaming data visualization in Jupyter Notebook, JupyterLab, Google Colab, and VS Code
  • Real-time updates using refresh() to update viewer data
  • Local layout management for customized visualizations

Learn more in the Jupyter notebook documentation.

🔎 Recording Metadata Search API

The optional metadataQuery parameter is now available in the Recordings List API. You can filter recordings by metadata using key-value search syntax:

  • temperature:high — find recordings with sensor metadata where temperature is high
  • status:* location:lab — find recordings with any status AND location lab
  • *:error — find any key with "error" value
  • warehouseName:"leaping llama" — use quotes for values with spaces

🔗 Iframe Embedding

Embed Foxglove in your application or website using our TypeScript or React SDKs. The embedding capability enables multi-modal data visualization and debugging within your application.

The embedding SDK supports:

  • Multiple data sources: load from local files, recordings, and live connections
  • Local layout persistence: embed layouts now persist in IndexedDB, allowing users to make layout changes that are saved automatically
  • Programmatic control: switch between layouts, revert changes, export layouts, and manage multiple layouts with the selectLayout API
  • Extension support: install custom extensions programmatically (Enterprise only)

Learn more in the embedding documentation.

📜 Custom User Script Utilities

Extension authors can now register custom utilities that user scripts can import and use. Create reusable functions in your extensions to share complex data processing logic across multiple user scripts.

info

User script utilities are currently in beta. The API may change based on testing and feedback.

This feature lets you:

  • Register TypeScript utilities in extensions using registerUserScriptUtility
  • Import and use utilities in user scripts like standard modules
  • Keep utilities self-contained with their own source code and types
  • View utility source code in the User Script panel's "Utilities" tab

Utilities are great for implementing domain-specific algorithms, helper functions, and reusable transformations that users might need across different scripts.

Learn more in the user script utility documentation.

New & Improved
  • Added visual indicators for deprecated message fields in the Raw Messages panel with warning icons and tooltips
Performance
  • General performance improvements
Fixes
  • Fixed OMG IDL @default annotation handling during deserialization
  • Fixed missing data in message path-based XY plots after reset view
  • Fixed pan and zoom performance issues for plots with locked 1:1 scales
  • Fixed User Script autosave when viewing utility or generated files

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

Foxglove 2.38.0

🔎 Search Over Recording Metadata

You can now query the metadata on your recordings stored in Foxglove to filter and find the right data. All MCAP metadata records attached to files uploaded to Foxglove are automatically indexed and made available for search.

⌨️ Keyboard Shortcuts for Recording Navigation

We've added keyboard shortcuts to jump to the start and end of your recording, along with shortcuts for various seeking intervals:

ShortcutDescription
SpaceToggle playback
Seek backward 100ms
Seek forward 100ms
Shift + Seek backward 10ms
Shift + Seek forward 10ms
Alt + (Windows and Linux)
Option + (macOS)
Seek backward 500ms
Alt + (Windows and Linux)
Option + (macOS)
Seek forward 500ms
Home (Windows and Linux)
Fn + (macOS)
Seek to start
End (Windows and Linux)
Fn + (macOS)
Seek to end

📊 Event Overlays on Time Series

Hovering over events in the playback bar or events sidebar now displays overlays in your Plot and State Transitions panels, making it easier to correlate events with your time series data.

🏷️ Multi-Select Custom Properties

Custom properties now support multi-enum values, allowing you to select multiple options from a dropdown. Perfect for tagging devices with multiple attributes.

New & Improved
  • Improved tab panel usability with scrollable tabs and the "new tab" button positioned on the left, similar to Chrome
  • Added confirmation dialog when closing tabs containing layouts to prevent accidental data loss
  • Improved settings panel readability by limiting label width and allowing 2-line labels before truncation
  • Improved user experience of seeking in the Image panel using a progressively expanding time window to find keyframes
Performance
  • General performance improvements
  • Stabilized iterable player URL state to reduce component re-renders
  • General stability improvements
API
  • The /v1/data/topics endpoint now streams responses for improved performance with large datasets
Fixes
  • Fixed dropdown menu actions when viewing recordings by recording key
  • Fixed rare error when reading ROS2 db3 bag files with invalid channels
  • Fixed blank video frames when seeking to already-played keyframes
  • Location fixes now correctly use the selected coloring method and show override notifications
  • Fixed Plot and State Transitions panel messages not being cached properly
  • Simplified embed validation to rely on the embedded viewer's validation
  • TF tree scale now correctly matches world units (1 = 1 meter), consistent with pose topic scaling

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

Foxglove 2.37.0

🎯 Follow Specific Location Fixes

When using LocationFixes with multiple location fixes in a single topic, you can now select which specific fix to follow in the Map panel. When following is enabled, panning is disabled and zooming is centered on the followed coordinate for a better tracking experience.

🔄 Gauge Panel Reverse Direction

Control the gauge display direction with the new reverse direction button, allowing for more flexible data visualization. The existing "Reverse" setting has been renamed to "Reverse Colors" for clarity.

New & Improved
  • Added new "Multi-line text" type for device custom properties
  • Added reset view button to the Map panel toolbar
  • Added site name and edge site columns to the recordings table for better organization
  • Added multi-line text input fields in panel settings with optional line limit for custom panels
  • Added Map panel setting to control point size (now in pixels instead of relative scale)
  • Variable Slider panel now shows the variable name in the toolbar by default
Performance
  • General performance improvements
Fixes
  • Fixed an issue with OMG IDL struct members being read out of order when explicit @id annotations were used
  • Fixed latched topics occasionally not appearing when switching tabs or layouts
  • Fixed Table panel column sorting to sort all items instead of only the current page
  • Prevented ROS bag downloads when topic encoding doesn't match, disabling the format option when incompatible
  • Fixed panning in orthographic mode having reduced effect when the perspective camera looks towards the horizon
  • Fixed a rare bug causing a blank screen
  • Fixed tab dragging keyboard interactions so holding Alt or Meta during drag results in copy instead of move
  • Fixed browser autocomplete appearing in the layout menu search
  • Fixed latched messages not being shown when switching between tabs
  • Fixed Map panel memory leak when toggling between point styles for location fixes

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

SDK v0.14.3

Foxglove SDK

This release contains a fix for a memory leak in C++ and other minor changes.

What's Changed

Fixed
  • C++: Fix memory leak in generic_client allocate_message
  • Python: expose Context.default in type stubs
  • Documentation fixes

Docs: Introduction | Reference: Rust, Python, C++ | Source: github | C++ Artifacts: github

Agent v1.4.4

Agent

This release contains minor improvements, and switches to a single-threaded runtime.

Changed
  • Switched to a single-threaded runtime
  • Enabled HTTP/2 keepalives for uploads, where available
  • Added release version to user-agent string

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