Release date: March 2026
Milestone: [#91](https://github.com/nicolargo/glances/milestone/91?closed=1)
21 issues & pull requests closed
Overview
Glances 4.5.1 is a stability and quality release that addresses regressions introduced
in the 4.5.0.x series, fixes cross-platform compatibility issues (OpenBSD, macOS, Snap),
and ships several community-driven enhancements — most notably Intel GPU monitoring,
Docker container health alerting, and per-plugin min/max/mean statistics.
🐛 Bug Fixes
Plugins
-
DiskIO — crash on OpenBSD ([#3452](#3452))
A regression introduced in 4.5.0.5 caused Glances to crash on OpenBSD when the DiskIO
plugin was active. The root cause was an unguarded attribute access inmsg_curse().
Fixed and covered by an additional test case. -
DiskIO — empty
argsnot handled inmsg_curse()([#3429](#3429))
ATypeErrorwould be raised in specific runtime configurations whereargswas not yet
populated whenmsg_curse()was called. A safe default is now enforced. -
Filesystem —
KeyError: '/etc/hostname'onget_view([#3470](#3470))
Certain bind-mounted or virtual paths (e.g./etc/hostnameinside containers) could
trigger aKeyErrorin the FS plugin's view logic. The lookup is now guarded with a
safe fallback. -
Sensors — show/hide by alias name broken ([#3439](#3439))
Filtering sensors by alias name via the configuration file had no effect in some
configurations. Sensor aliasing and the associated hide/show logic are now correctly
applied together. -
SMART — non-uniform key types cause
TypeErrorwith InfluxDB2 export ([#3449](#3449))
Mixed integer/string key types in the SMART plugin's device stats dict were causing a
TypeErrorwhen exporting to InfluxDB2. Key types are now normalized before export.
Web UI
- Fahrenheit display incorrect in WebUI ([#3450](#3450))
Temperature values were not properly converted to Fahrenheit in the Web UI when the
--fahrenheitoption was set. The unit conversion is now applied consistently on the
frontend side.
Snap Packaging
-
AMD GPU plugin:
PermissionErroron/usr/share/libdrm/amdgpu.ids([#3456](#3456))
Glances packaged as a Snap would refuse to start on systems with an AMD GPU because the
GPU plugin attempted to open a file outside the Snap sandbox. The exception is now
caught at the correct level (open()rather thanf.read()), preventing the crash at
startup. -
NVIDIA GPU not detected under Snap ([#3292](#3292))
The Snap package was missing theopenglinterface declaration insnapcraft.yaml,
preventing the NVIDIA GPU plugin from accessing the required device nodes under strict
confinement. The interface is now correctly declared.
MCP Server
- DNS rebinding protection blocks external MCP clients ([#3467](#3467))
The MCP server was rejecting connections from external hosts because the underlying SSE
transport's DNS rebinding protection only allowedlocalhostby default. A new
mcp_allowed_hostsconfiguration key (parsed inGlancesRestfulApi.load_config()and
forwarded viaTransportSecuritySettings) lets operators explicitly whitelist external
hostnames, following the same pattern ascors_origins.
✨ Enhancements
Intel GPU Monitoring ([#994](#994))
Intel GPU metrics are now supported in the GPU plugin, closing a long-standing feature
request. The implementation follows the multi-vendor reader architecture, joining the
existing NVIDIA and AMD backends.
Docker Container Health Status & Alerts ([#3402](#3402))
The containers plugin now surfaces Docker's native health check status (healthy,
unhealthy, starting) and integrates it with Glances' alert system so that unhealthy
containers trigger visible warnings in the TUI and API.
VM Plugin — libvirt Support in Docker Image ([#3427](#3427) / [#3436](#3436))
The official Glances Docker image now includes the libvirt-client toolchain, enabling
the VMs plugin to discover and monitor KVM/QEMU virtual machines when the host's
libvirt socket is bind-mounted into the container.
SMART Plugin — DeviceName Key Added ([#3457](#3457))
Each SMART device entry now carries an explicit DeviceName field, making device
identification unambiguous in exports (InfluxDB, CSV, etc.) and the REST API.
Per-Plugin Min / Max / Mean Statistics ([#3462](#3462))
All plugins now compute and expose min, max, and mean values accumulated since
Glances startup. These aggregate metrics are available via the REST API and can be used
for lightweight trend analysis without requiring a full time-series export stack.
CPU Plugin — Improved Display on macOS ([#3464](#3464))
The CPU plugin's TUI and WebUI rendering has been improved for macOS, where certain
fields (e.g. steal, guest) are not available. The layout now adapts gracefully to
the subset of metrics exposed by the platform rather than showing empty or misleading
columns.
History — --enable-history Flag Restored ([#3416](#3416))
The --enable-history CLI flag was silently ignored in recent releases. It is now
correctly wired to the graph export backend, restoring the ability to write per-plugin
time-series data to disk from the command line.
🔧 Code Quality & Refactoring
-
JSON serializer hardened ([#3454](#3454))
The internal JSON serializer now performs comprehensive type normalization (e.g.
numpyscalars,Decimal, non-serializable objects) before encoding, preventing
silent data corruption or export failures. Covered by a new test suite. -
split_esccyclomatic complexity reduced ([#3461](#3461))
Thesplit_esc()utility function inglances_globalswas refactored to lower its
cyclomatic complexity, improving readability and reducing the risk of regressions in
escape-sequence parsing. -
Plugin tests added to Makefile ([#3446](#3446))
Individual plugin test targets are now available viamake test-plugins, making it
easier for contributors and CI pipelines to run focused plugin-level regression checks.
📖 Documentation
- Code block formatting fixed in docs ([#3447](#3447))
Several documentation pages contained malformed fenced code blocks. Formatting has been
corrected for proper rendering on GitHub and ReadTheDocs.
Upgrade Notes
This is a drop-in replacement for 4.5.0.x. No configuration file changes are required
unless you want to take advantage of the new mcp_allowed_hosts option.
Snap users are strongly encouraged to upgrade: the AMD GPU startup crash and the
NVIDIA GPU detection fix are both included and require no manual intervention beyond
refreshing the snap package.
Contributors
Many thanks to all the contributors who reported issues and submitted pull requests for
this release:
[@YamiYukiSenpai](https://github.com/YamiYukiSenpai),
[@amzon-ex](https://github.com/amzon-ex),
[@axodentally](https://github.com/axodentally),
[@fpusan](https://github.com/fpusan),
[@janusn](https://github.com/janusn),
[@kleinmatic](https://github.com/kleinmatic),
[@lcheylus](https://github.com/lcheylus),
[@lubomir-moric](https://github.com/lubomir-moric),
[@mark-rahal](https://github.com/mark-rahal),
[@mikemhenry](https://github.com/mikemhenry),
[@Ambika-Patidar](https://github.com/Ambika-Patidar),
[@AbdelhamidKhald](https://github.com/AbdelhamidKhald),
[@Julietmgbole](https://github.com/Julietmgbole),
[@sdoshi2061](https://github.com/sdoshi2061),
[@cjlindem](https://github.com/cjlindem)
Full changelog: https://github.com/nicolargo/glances/milestone/91?closed=1