You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SQL Persistence Layer: Migrate persistence layer from LokiJS to SQL (SQLite) with Drizzle ORM, automatic schema migrations, and transparent legacy data migration.
Role-Based Access Control (RBAC): 3 roles: Administrator (admin), Read/Write (rw), and Read-Only (ro).
User Management in Web UI: Database-backed user administration in Web UI (Configuration > Users) with role assignment and secure password resets.
Personal API Tokens: Generate personal API tokens with granular scopes (read, write) and optional expiration dates for programmatic REST API access.
OpenID Connect (OIDC) Role Sync: Automatic user onboarding and role synchronization from Identity Provider group claims (admingroup, rwgroup, groupsclaim).
User Profile & Theme Sync: User Profile page with theme preference synchronization (dark/light) across sessions, password change, and API token management.
Modern Logging: Migrate logger from unmaintained Bunyan to Pino with Pino-pretty formatting and live logs viewer via Server-Sent Events (SSE).
Interactive OpenAPI Documentation: Interactive OpenAPI API Reference in Docusaurus with "Try it out" explorer, request/response schema inspector, and code samples.
Docker Compose Stack Display: Display Docker Compose stack / project name with filtering chip and drawer details (#1205).
Home Assistant MQTT Overhaul: Full Home Assistant update entity support, bidirectional Install action button, per-watcher devices, and MQTT storm prevention (#1148, #649, #381, #216).
NTFY Enhancements: Support for tags and icon properties (#1216) and real container selection in Trigger Test dialog (#1216).
Docker Hardened Images: Support for Docker Hardened Images (dhi.io) registry (#875).
β οΈ Breaking Changes & Migration Guide
Anonymous authentication removed: WUD now enforces mandatory authentication. At least one administrator account must be provisioned (via WUD_AUTH_ADMIN_USER/WUD_AUTH_ADMIN_PASSWORD, legacy WUD_AUTH_BASIC_*, or an OIDC provider with an admin group). WUD will fail-fast on startup if no administrator is available.
Deprecate static Basic Authentication environment variables: Administrators should be bootstrapped via WUD_AUTH_ADMIN_USER/WUD_AUTH_ADMIN_PASSWORD (or via OIDC admin groups), and local users should be managed dynamically via the Web UI (Configuration > Users).
Standardized REST API contract and error responses: All error responses now consistently return { "error": "<ErrorType>", "message": "<Details>" }. Custom scripts or integrations parsing legacy flat error strings need to be updated to read message. External REST API requests use standard HTTP Basic Authentication (basicAuth).
π Bug Fixes
Fix docker watcher crashing on startup when watchdigestdefault is configured (#1150).