forked from DartSteven/Nutify
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathchangelog.txt
More file actions
executable file
·259 lines (227 loc) · 13.9 KB
/
Copy pathchangelog.txt
File metadata and controls
executable file
·259 lines (227 loc) · 13.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
# Nutify Changelog
## Version 0.1.7 (07/07/2025)
* **User Authentication System**: Implemented multi-user login functionality:
* Added administrator and user roles
* Administrator: Full access to all features and configurations
* User: Configurable permissions for individual pages and options tabs
* Admin can selectively grant users access to specific dashboard pages (energy, power, commands, etc.)
* Admin can selectively grant users access to specific options tabs (email, webhooks, advanced, database, etc.)
* Secure password handling and session management with automatic timeout
* **Enhanced Setup Wizard**: Improved initial configuration experience:
* Fixed button alignment in Admin Setup step (Next button now properly aligned to right)
* Corrected button visibility in Review step (Next button no longer appears after Test Connection)
* Improved user interface consistency across all setup steps
* Enhanced wizard navigation and visual feedback
* **Authentication System Improvements**:
* Removed unnecessary "Back to Dashboard" link from login page for better UX
* Streamlined login interface for cleaner user experience
* Enhanced password security with proper encryption and validation
* Added secure session management with automatic timeout
* **Database Schema Enhancements**:
* Added new user authentication table for login management
* Implemented secure password storage with hashing
* Added user role and permission tracking
* Enhanced data validation and error handling
* **System Stability Improvements**:
* Moved to NUT 2.8.3 for improved hardware compatibility and stability
* Rebuilt core architecture for enhanced performance and reliability
* Added comprehensive admin and user account management system
* Fixed configuration editor expansion/collapse state persistence across page navigation
* Improved error handling for incorrect password scenarios with automatic table cleanup
* **Reporting System Enhancements**:
* Fixed time and battery report generation issues
* Added new pandas-based data processing for improved report accuracy
* Enhanced report formatting and data visualization
* Improved report scheduling and delivery mechanisms
* **Bug Fixes and UI Improvements**:
* Fixed config editor state management in Advanced settings
* Resolved navigation issues when switching between configuration tabs
* Improved JavaScript module loading and error handling
* Enhanced responsive design across all interface components
* Fixed various CSS and layout inconsistencies
* **Security Enhancements**:
* Added user authentication requirement for accessing configuration areas
* Implemented secure password hashing and storage
* Added session management with automatic timeout
* Enhanced input validation and sanitization
## Version 0.1.6 (15/04/2025)
* **Setup Wizard**: Added comprehensive setup wizard:
* Step-by-step configuration for new installations
* Automatic NUT configuration without manually editing docker-compose
* Guided UPS setup with driver selection assistance
* Intelligent detection of existing UPS devices
* **System Resource Monitoring**: Added real-time system monitoring:
* CPU usage widget in dashboard header
* RAM usage widget in dashboard header
* Dynamic updates via WebSocket
* **Discord Integration**: Enhanced webhook system with Discord support:
* Native Discord message formatting
* Customizable bot name and avatar
* Rich message content with UPS status information
* **Data Export**: Added JSON export functionality:
* Download complete UPS data in JSON format
* Accessible from options page
* Includes all UPS variables and measurements
* Useful for diagnostics and data analysis
* **Connection Management**: Improved UPS connection reliability:
* Added connection checker with automatic polling recovery
* Better handling of intermittent connection issues
* Intelligent reconnection attempts with backoff strategy
* Enhanced error reporting for connection failures
* **Configuration Improvements**:
* Added Initial Setup Variables card in Advanced options
* Fixed Amazon SES email provider configuration
* Simplified Docker Compose with mandatory SECRET_KEY for encryption
* Improved configuration validation and error handling
* **Enhanced UPS Driver Support**:
* Added support for usbhid-ups
* Added support for nutdrv_qx
* Added support for blazer_usb
* Added support for blazer_ser
* Added support for snmp-ups
* Added support for richcomm_usb
* Added support for tripplite_usb
* Added support for riello_usb
* Added support for apcsmart
* Added support for mge-shut
* Added support for genericups
* Added support for iebert
* Added support for victronups
* Added support for powercom
* Added support for clone
* Added support for upscode2
* Added support for bestups
* Added support for belkin
* Added support for dummy-ups
## Version 0.1.5 (08/04/2025)
* Fix Mail Provider in Custom mode and Mailgun (Also Fix TLS/STARTTLS)
* Fix Webhook
## Version 0.1.4 (03/04/2025)
* **Modular Codebase Architecture**: Restructured the entire application into specialized Python modules:
* Improved code organization with dedicated modules for each feature
* Enhanced maintainability with clear separation of concerns
* Simplified future development with standardized module interfaces
* Optimized import structure to avoid circular dependencies
* **Documentation Updates**:
* Corrected SNMP UPS configuration guidance to use UPS_PORT instead of UPS_HOST for specifying IP address
* Special thanks to user @seanpdiaz for identifying this important clarification
* **Pure ORM Implementation**: Complete migration to ORM-based database operations:
* Replaced all direct SQL queries with SQLAlchemy ORM models
* Enhanced database integrity with relationship constraints
* Improved type safety and query performance
* Added centralized model registry for global access
* **Additional Notification Channels**:
* **Ntfy Integration**: Added support for Ntfy push notifications:
* Configurable notification delivery for critical events
* Support for multiple notification topics
* Customizable notification priorities and tags
* **Webhook Support**: Added comprehensive webhook integration:
* Flexible HTTP callback system for third-party integrations
* Customizable payload templates for different event types
* Support for authentication headers and various HTTP methods
* Detailed delivery status tracking and error handling
* **Enhanced Email System**: Improved email notification capabilities:
* Support for multiple email accounts for notification delivery
* Streamlined email provider configuration with pre-configured settings
* More flexible recipient management
* Improved email template customization
* **Advanced Configuration Section**: New dedicated area for advanced settings:
* NUT configuration management through the web interface
* Custom polling interval configuration
* Fine-grained logging controls
* System diagnostics and troubleshooting tools
* **Modular JavaScript Architecture**: Reorganized frontend code for better maintainability:
* Split monolithic JavaScript files into specialized modules
* Created utility libraries for common functions
* Improved code reuse and organization
* Enhanced frontend performance with optimized code loading
* **Enhanced Options Interface**:
* Modular settings sections with improved organization
* Specialized configuration panels for each feature area
* Improved validation and error handling
* Real-time feedback for configuration changes
* **UX/UI Improvements**:
* Modernized user interface components
* Enhanced responsive design across all pages
* Improved accessibility and usability
* Better visual feedback for user actions
* Added official Nutify logo and favicon for brand identity
* **Backend Optimizations**:
* Improved caching strategy for better performance
* Enhanced error handling and recovery
* More detailed logging for troubleshooting
* Optimized database queries for faster response times
* **Improved Event Handling System**:
* Eliminated direct upsmon.conf queries in favor of native Python integration
* Streamlined event processing for improved stability and responsiveness
* Reduced system resource usage with more efficient event tracking
* Enhanced event detection and notification delivery
* **Real-time Data Optimization**:
* Implemented WebSocket-based caching for real-time data delivery
* Significantly reduced CPU and RAM usage by eliminating repetitive upsc calls
* Improved data refresh rates and consistency across the interface
* Enhanced user experience with more responsive real-time updates
## Version 0.1.3 (25/03/2025)
* **Enhanced CLIENT Mode Reliability**: Implemented a robust multi-layered detection system for CLIENT mode:
* Added triple-check system for mode detection (environment variable, flag file, nut.conf)
* Implemented intelligent driver management to skip local drivers in CLIENT mode
* Fixed issue with driver startup in CLIENT mode causing permission errors
* Added detailed debug information for mode detection
* **Improved Service Monitoring**: Enhanced service monitoring in CLIENT mode:
* Added smart host detection for UPS communication checks
* Enhanced error recovery for remote UPS connections
* Implemented graceful handling of driver failures in CLIENT mode
* **Updated Documentation**: Added comprehensive CLIENT mode information to documentation
* **Improved CLIENT Mode Functionality**: Enhanced detection of CLIENT/SERVER mode:
* Added robust fallback mechanisms for mode detection
* Fixed issue with driver startup in CLIENT mode
* Improved error handling when connecting to remote UPS servers
* Added detailed debug logging for troubleshooting mode configuration
* **Documentation Updates**: Added clearer CLIENT mode setup instructions
* **Error Handling**: Added more comprehensive error messages for improved troubleshooting
* **Operational Modes**: Added operational mode selection with new NUT_TYPE variable:
* SERVER mode (default): Run full NUT server with local UPS drivers
* CLIENT mode: Connect to remote NUT server, no local drivers
* **Dynamic Configuration**: Implemented automatic configuration based on selected mode:
* Dynamic nut.conf generation with appropriate MODE setting
* Automatic driver management based on operational mode
* Smart detection and handling of remote UPS connections
* **Flag File Mechanism**: Added flag file mechanism to indicate client mode to all scripts
* **Documentation**: Enhanced documentation with detailed explanations of both modes
* **User Experience**: Improved user experience with clearer configuration options
* **Extended UPS Driver Support**: Added explicit support for nutdrv_qx driver for Megatec/Q1 protocol UPS devices.
* **Improved UPS Compatibility**: Enhanced compatibility with a wider range of UPS models through additional driver options.
* **Updated Documentation**: Added comprehensive documentation on supported UPS drivers and their use cases.
* **Driver Selection Guide**: Added guidance on selecting the appropriate driver for different UPS models.
## Version 0.1.2 (08/03/2025)
* **International Time Format Support**: Added robust time parsing to support various international time formats including AM/PM notation.
* **Enhanced Startup Summary**: Added a clear service summary at container startup showing configuration status, UPS service status, and web interface access URL.
* **Improved Default Values**: Added sensible default values for all configuration parameters in docker-compose.yaml with clear documentation.
* **Simplified UPS Authentication**: UPSCMD_USER and UPSCMD_PASSWORD now automatically use UPS_USER and UPS_PASSWORD values if not specified.
* **Required Parameters Highlighting**: Clearly marked required parameters like ENCRYPTION_KEY in the configuration.
* **Improved Documentation**: Enhanced comments in docker-compose.yaml for better user experience.
## Version 0.1.1 (08/03/2025)
* **Automatic Database Management**: Added automatic check and fix for SQLite database permissions to prevent read-only database errors.
* **Improved Error Handling**: Enhanced templates to handle missing data correctly with existence checks for all fields.
* **UPS Compatibility**: Improved support for UPS devices that don't provide all standard data fields.
* **Security Enhancements**: Modified Dockerfile to add the nut user to necessary groups (plugdev, dialout, input, usb) for proper device access.
* **Fallback Mechanism**: Added dummy UPS configuration for testing or when no physical UPS is detected.
* **Remote Monitoring**: Added netclient support for remote UPS monitoring.
* **SSL Support**: Added automatic SSL certificate generation and management for secure HTTPS connections.
* **Improved Logging**: Enabled startup and debug logging by default for better troubleshooting.
* **Build Fixes**: Fixed Dockerfile to properly create SSL directory instead of copying from non-existent source.
* **Dummy UPS Control**: Fixed dummy UPS fallback to only activate when explicitly enabled.
* **Robust SSL Implementation**: Added gunicorn with eventlet worker for production-grade SSL support.
## Version 0.1.0 (07/03/2025)
* Added automatic check and fix for SQLite database permissions
* Improved templates to handle missing data correctly
* Added existence checks for all fields in templates (battery.html, power.html, energy.html, header.html)
* Fixed "sqlite3.OperationalError: attempt to write a readonly database" error
* Enhanced error handling for UPS devices that don't provide all standard data
* Modified Dockerfile to add nut user to necessary groups (plugdev, dialout, input, usb)
* Added dummy UPS configuration file for fallback when no physical UPS is detected
* Enabled startup and debug logging by default
* Added netclient for remote UPS monitoring
* Simplified UPS verification method
## Version 0.0.1 (05/03/2025)
* First version of Nutify