0.10.1.0-beta #74
sassanix
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
🚀 Big update with New Features, Fixes, & Enhancements
This release introduces significant new features, including public global warranty viewing, comprehensive push notification support via Apprise, advanced filtering and sorting, and visual product photo thumbnails. It also includes critical bug fixes addressing caching, permission issues, settings persistence, and notification reliability, alongside important security hardening and branding consistency updates.
Thanks to everyone who reported issues and provided feedback—your input directly improves Warracker!
✨ Added
Public Global Warranty View for All Users
A major update extending the global warranty view functionality to all authenticated users, providing transparency while maintaining security.
Apprise Push Notifications Integration
Implemented a comprehensive push notification system supporting over 80 services for warranty expiration alerts.
Warranty Type Filtering and Sorting
Enhanced the home page with new filtering and sorting options based on warranty type.
Product Photo Thumbnails on Warranty Cards
Added visual product photo thumbnails to warranty cards across all viewing modes (Grid, List, Table).
🛠 Fixes
Status Dashboard Chart.js Canvas Errors
Resolved "Canvas is already in use" errors preventing charts from rendering correctly on the status page.
CSS Cache Busting for Domain Consistency
Implemented version parameters for CSS and JavaScript files to prevent caching issues when accessing the app via local IP vs. domain.
style.css,script.js, etc.).Settings Page Admin Permission Issues
Fixed critical database connection and 403 permission errors affecting regular users on the settings page.
Settings Persistence Critical Fixes
Resolved major issues where user preferences, particularly Apprise notification settings, would not persist correctly after saving.
/api/auth/preferencesendpoint that prevented Apprise settings from being saved due to strict conditional logic.Notification System Comprehensive Overhaul
Fixed critical timing issues and duplicate notifications for both email and Apprise scheduled alerts.
Technical Implementation for Global View Features
Details on the technical changes made to implement the Public Global Warranty View and related features.
app.py): Added/api/warranties/global,/api/statistics/global, and/api/settings/global-view-statusendpoints. Addedglobal_view_enabledandglobal_view_admin_onlysite settings.script.js): RenamedinitAdminViewControls()toinitViewControls(), removed admin restriction for initialization, added permission logic for edit/delete buttons, updated API calls, and added automatic fallback.index.html): Updated tooltips and labels.style.css): Added styling for view-only placeholder.settings-new.html): Added Global View settings toggles.settings-new.js): Added loading/saving logic for global view settings.status.html): Added view switcher and owner column to table.status.js): Added global view logic, API switching, and permission checks.Security Features (Related to Global View)
User Experience (Related to Global View)
✨ Enhanced
Footer Links
Updated all "Powered by Warracker" footer links to point to
https://warracker.comfor consistent branding and direct access to the official website.PostgreSQL Security Hardening
Removed unnecessary SUPERUSER privileges from the application database user, significantly improving the security posture by adhering to the principle of least privilege.
fix_permissions.sql,migrations/011_ensure_admin_permissions.sql).Dockerfile.📁 Summary of Files Changed
Backend:
backend/app.pybackend/apprise_handler.pybackend/db_handler.pybackend/fix_permissions.sqlbackend/migrations/011_ensure_admin_permissions.sqlbackend/migrations/026_add_apprise_settings.sqlbackend/notifications.pybackend/requirements.txtFrontend JS:
frontend/script.jsfrontend/settings-new.jsfrontend/status.jsfrontend/sw.jsfrontend/auth.jsFrontend HTML:
frontend/index.htmlfrontend/settings-new.htmlfrontend/status.htmlfrontend/login.htmlfrontend/register.htmlfrontend/reset-password.htmlfrontend/reset-password-request.htmlfrontend/auth-redirect.htmlfrontend/about.htmlFrontend CSS:
frontend/style.cssfrontend/settings-styles.cssfrontend/header-fix.cssfrontend/mobile-header.cssConfig/Other:
docker-compose.ymlenv.exampleDockerfile💔 Known Issues
📸 Screenshots
Beta Was this translation helpful? Give feedback.
All reactions