Repository navigation
v1.6.2
Production Server & Performance Optimization
This release adds a production-ready server and dramatically improves performance for long time ranges.
New Features
Adaptive Downsampling
- Problem solved: Loading long time ranges (6+ hours) was extremely slow
- Solution: Intelligent downsampling based on time range:
- 1-6 hours: 1 minute intervals (~360 points, 98% reduction)
- 6-24 hours: 5 minute intervals
- 1-7 days: 15 minute intervals
- 1 month: 1 hour intervals (~720 points)
- 3 months: 3 hour intervals
- 6 months: 6 hour intervals
-
6 months / years: 1 day intervals
- Result: Maximum 1000-2000 points for instant rendering
- Uses pandas
esample()\ for efficient aggregation - Backward compatible - ranges <1 hour remain unchanged
Waitress Production Server
- Cross-platform WSGI server (Windows/Linux/macOS)
- Optimized with 8 threads for multi-user support
- Logging filtered to ERROR level for cleaner output
Improvements
- Graph Spacing: Increased from 0.06 to 0.10 for better readability
- Debug Logging: Configurable logging via .env\ (\DEBUG_LOGGING=True)
- Database query details
- Downsampling statistics (reduction percentages)
Dependency Updates
- pandas: 2.2.3 2.3.3
- numpy: 2.1.3 2.2.6
- Flask: 3.0.3 3.1.2
- python-dotenv: 1.0.1 1.2.1
- waitress: 3.0.1 3.0.2
Security
- Security updates for urllib3 dependency (via pandas/numpy updates)
Technical Details
Performance Impact Example:
- 6 hour data: ~18,720 360 points (98.1% reduction)
- 1 year data: ~27 million 365 points (99.999% reduction)
- Visual quality preserved - trends fully visible
Breaking Changes: None
Requires:
- Python 3.10-3.13
- See
equirements.txt\ for all dependencies
Installation
git clone https://github.com/CervezaStallone/XY-MD02_WebApp.git
cd XY-MD02_WebApp
python -m venv .venv
.venv\\Scripts\\activate # Windows
pip install -r requirements.txt
python app.pyContributors: @dependabot