# Changelog All notable changes to ProxMorph will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ## [2.7.3] - 2026-06-12 ### Fixed - **All themes** — Task Viewer window no longer loses its scrollbar. The blanket `.x-window .x-panel-body { overflow: visible !important }` rule was overriding ExtJS's own inline `overflow: auto` on scrollable panel bodies (`.x-scroller`). Fixed by scoping the rule to `:not(.x-scroller)`. Issue [#49](https://github.com/IT-BAER/proxmorph/issues/49) - **All themes** — CT and VM creation dialog tabs are no longer pushed off-screen. `position: relative !important` on `.x-tab` was overriding ExtJS box layout's absolute positioning, causing each tab's offset to double-count (natural flow position + intended left = tabs spreading ~1.5× wider than the container). Removed the offending declaration. Issue [#50](https://github.com/IT-BAER/proxmorph/issues/50) - **Catppuccin Latte** — Text on colored elements (progress bar fill, active buttons, badges) is now visible. `--ctp-on-accent` was set to `var(--ctp-base)` (`#eff1f5`, near-white), which is invisible on the light Latte background. Changed to `#ffffff` for proper contrast against vivid Latte accent fills (mauve, red, yellow). Issue [#51](https://github.com/IT-BAER/proxmorph/issues/51) ## [2.7.2] - 2026-04-16 ### Fixed - **Sensors** — Added pre-patch Perl syntax check on Nodes.pm before applying the sensor patch. If Nodes.pm is already broken (e.g. from the v2.7.0 APT-hook heredoc bug), the user now gets an actionable error: *"Run 'apt install --reinstall pve-manager' to restore it, then re-run ProxMorph install."* instead of a misleading post-patch rollback message. Issue [#47](https://github.com/IT-BAER/proxmorph/issues/47) - **Sensors** — Rollback on post-patch syntax failure now restores from `Nodes.pm.original` backup when available, falling back to sed marker removal only if no backup exists. ## [2.7.1] - 2026-04-05 ### Fixed - **APT Hook** — Fixed broken heredoc escaping in `post-update.sh` that caused the Nodes.pm sensor patch to be injected as a single malformed line, breaking Perl syntax and preventing `pveproxy` from starting after a PVE update. Issue [#45](https://github.com/IT-BAER/proxmorph/issues/45) - Added Perl syntax check (`perl -c`) after patching with automatic rollback if validation fails ## [2.7.0] - 2026-04-01 ### Added - **Sensor Selector** — Interactive per-sensor filtering for hardware monitoring. Issue [#44](https://github.com/IT-BAER/proxmorph/issues/44) - `enumerate_sensors()` discovers all available sensors (CPU, NVMe, HDD, Fan) via `sensors -j` - `configure_sensor_filter()` interactive multi-select menu to choose which sensors to display - Filter stored in `/opt/proxmorph/.sensors-filter` (chip:label format), synced to cluster nodes - `manage-sensors` menu gains option 4) Configure sensor selection - `sensors configure` CLI subcommand for non-interactive reconfiguration - Backwards-compatible: missing/empty filter file shows all sensors - **proxmorph-sensors.js** (v1.2.0) — Client-side sensor filtering - Reads `sensorsFilter` from API on each render (no first-load flash) - CPU cores shown individually when filter selects specific cores without Package sensor - APT hook updated to persist filter across PVE updates ## [2.6.0] - 2026-03-16 ### Added - **Proxmox Datacenter Manager (PDM) Support** — Full theme support for PDM 1.x: - New `install.sh` product detection: auto-detects PDM alongside PVE and PBS - 22 PDM-specific CSS override themes injected as `` tags into `index.hbs`, activated via JavaScript based on `localStorage` selection - `proxmorph-pdm-base.css` — always-on component styling (rounded corners, shadows, button/panel/grid refinements) - `pdm-theme-selector.js` — MutationObserver-based patch that injects ProxMorph themes into PDM's native Theme dialog dropdown alongside built-in Desktop/Crisp options - PDM themes use CSS custom property overrides to remap `--pwt-color-*` tokens from the WASM-loaded base theme - Inline `