Version 1.4.1
Overview
Version 1.4.1 introduces significant improvements to the dashboard experience with inline chart controls, enhanced filtering capabilities, system theme support, and locale formatting options. This release also addresses several bugs affecting chart rendering, backup details loading, and server connectivity detection. Additionally, security vulnerabilities in dependencies have been resolved.
New features
Inline chart controls
- Chart time range selector: Stock-chart-style pill buttons (
1W | 2W | 1M | 3M) in chart panel headers for quick time range switching without navigating to Display Settings. Shares state with Display Settings. - Chart style toggle (issue #54): Toggle button to switch between line and bar charts directly from the chart panel header. Persisted and synced across all panels.
- Simplified time ranges: Reduced from 7 options to 4 focused ranges (1 Week, 2 Weeks, 1 Month, 3 Months), with 1 Month as the new default.
Display and formatting options
- System theme support: Display Settings now includes "System (follow OS)" option to automatically match your operating system's light/dark preference.
- Format locale override (issue #59): Users can select a formatting locale independently of UI language in Settings > Display Settings (416 locales supported). Date, time, and number formatting respects the selected format locale with live preview.
Server filtering
- Dashboard server filter: Search field moved to app header with auto-refresh and toolbar actions. Control shows only search icon when empty; hover/click expands text field.
- Improved filter matching (issue #53): Filter now matches server id, URL, and any backup job name. Fixed overview card grid not updating when filter changed.
- Settings filtering: Filter input added to server lists in Settings > Backup Monitoring and Settings > Servers.
Improvements
Chart data handling
- Rolling time windows: Time ranges now use rolling day windows: 1W = last 7 days, 2W = last 14 days, 1M = last 30 days, 3M = last 90 days (previously calendar-based).
- Data consolidation: All chart data points consolidated by calendar day before bucketing. Multiple backups on the same day are aggregated appropriately.
- Limited data points: Charts now enforce a maximum of 30 data points for better performance and readability.
- Tooltip simplification: Tooltip now displays only date (e.g., "5/12/26") instead of date and time.
Backup scheduling
- UTC-based calculations: Next expected backup and overdue detection now advances intervals and weekday checks in UTC instead of local time, avoiding one-hour UTC drift when the host timezone crosses DST.
- Increased overdue tolerance: New installs and defaults now use 2 hours instead of 1 hour for overdue tolerance.
Connectivity and reliability
- Connectivity loss detection: Added
/api/pingendpoint and a 30-second header-based connectivity probe. Refresh and auto-refresh failures now open the lost-connection modal without exposing raw error text. - UI preferences persistence: Fixed race conditions causing user UI preferences (overview side panel, chart time range, chart style) to not persist on page refresh.
Documentation
- Duplicati remote access clarification (issue #40): Documentation now clarifies that Duplicati remote access is optional and only necessary if direct links to the Duplicati UI are required.
Bug fixes
- Overview charts panel ignoring time range filter: Fixed panel displaying all data points regardless of selected time range. Panel now fetches its own data from API with proper time range parameters.
- OOM crash on backup details (issue #62): Prevented
JavaScript heap out of memoryby optimizing queries and UI rendering. Backup logs are now fetched on-demand instead of loading all at once, with a maximum of 1000 lines. - Backup version parsing (issue #65):
convertTimestampToISO()now handles all common locale-specific timestamp formats used by Duplicati across different system locales.
Security
Dependency vulnerability fixes
-
npm audit vulnerabilities: Resolved 7 vulnerabilities (1 high, 6 moderate):
- Updated
nextto16.3.0-canary.19to fixpostcss@8.4.31(XSS) - Added
.pnpmfile.cjsto forceserialize-javascript@^7.0.5(RCE, DoS) - Updated
mermaidoverride to>=11.14.1(4 moderate vulnerabilities) - Added explicit
postcss@^8.5.14andserialize-javascript@^7.0.5dependencies
- Updated
-
pnpm overrides: Added root
pnpm.overridesfor transitiveuuid >=14.0.0andpostcss >=8.5.10. -
High-severity vulnerabilities: Fixed 4 high-severity vulnerabilities via pnpm overrides for
minimatch >=3.1.4andserialize-javascript >=7.0.3.
Migration notes
From version 1.3.2
When upgrading to version 1.4.1:
- No database migration required: This release does not require any database schema changes.
- New default overdue tolerance: New installations will default to 2 hours overdue tolerance instead of 1 hour. Existing settings remain unchanged.
- Chart preferences: Chart time range and style preferences are now stored differently and will reset to defaults (1 Month, Line chart) after upgrade.
- Dependencies: Run
pnpm installto apply the updated lockfile and overrides.
Support
Getting help
- Documentation: User Guide
- Email settings: Email configuration guide
- API reference: API documentation
- Migration guide: Version upgrade migration
- Community: GitHub Discussions
- Issues: GitHub Issues
Reporting bugs
When reporting bugs, please include:
- Version: 1.4.1
- Operating system and version
- Docker/podman version
- Container type (Docker or podman/Pod)
- Error messages and logs
- Steps to reproduce
Changelog
Version 1.4.1 changes
- Added: Inline Chart Time Range Selector with pill buttons (1W, 2W, 1M, 3M) in chart panel headers.
- Added: Inline Chart Style Toggle to switch between line and bar charts (issue #54) from the chart panel header.
- Added: Chart Style setting in Display Settings (Smooth Lines / Bar Chart toggle).
- Added: Theme "System (follow OS)" option to automatically match OS preference.
- Added: Format locale override (issue #59) — select formatting locale independently of UI language (416 locales supported).
- Added: Server filtering (issue #53)in Settings > Backup Monitoring, Settings > Servers, and main Dashboard.
- Added: Connectivity loss detection with
/api/pingand 30-second header-based probe. - Changed: Chart Time Range options reduced from 7 to 4 (1W, 2W, 1M, 3M), default is now 1 month.
- Changed: Time range calculations now use rolling day windows (1W = last 7 days, etc.).
- Changed: Chart data consolidated by calendar day before bucketing; maximum 30 data points enforced.
- Changed: Chart tooltip now displays only date instead of date and time.
- Changed: Default overdue tolerance changed from 1h to 2h for new installs.
- Changed: Next expected backup calculations now use UTC to avoid DST drift issues.
- Changed: Dashboard server filter moved to app header with auto-refresh.
- Fixed: User UI preferences not persisted on page refresh.
- Fixed: Overview charts panel ignoring time range filter.
- Fixed: OOM crash on backup details (issue #62) — logs now fetched on-demand with 1000 line limit.
- Fixed: Backup version parsing for locale-specific timestamp formats (issue #65).
- Security: Resolved 7 npm audit vulnerabilities via dependency updates and pnpm overrides.
- Security: Fixed high-severity vulnerabilities in
minimatchandserialize-javascript.
License
This project is licensed under the Apache License 2.0.
Copyright © 2026 Waldemar Scudeller Jr.