Releases: liudger/python-bsblan
Releases · liudger/python-bsblan
v4.1.0
v4.1.0-beta.2
v4.1.0-beta.1
v4.1.0-beta.0
v4.0.0
What’s changed
🚀 Enhancements
🧰 Maintenance
📚 Documentation
⬆️ Dependency updates
- ⬆️ Lock file maintenance @renovate[bot] (#1300)
- ⬆️ Update dependency ty to v0.0.9 @renovate[bot] (#1303)
- ⬆️ Update dependency ty to v0.0.10 @renovate[bot] (#1305)
- ⬆️ Update dependency ruff to v0.14.11 @renovate[bot] (#1304)
- ⬆️ Update github/codeql-action action to v4 @renovate[bot] (#1299)
- ⬆️ Update dependency ty to v0.0.11 @renovate[bot] (#1306)
More details
🚀 Performance Comparison: Lazy Loading
Before (Eager Loading)
- Initialize(): ~24 seconds
- All sections validated upfront (heating, sensor, staticValues, device, hot_water)
- Hot water section alone: ~7.9 seconds (67% of total init time)
After (Lazy Loading)
- Initialize(): ~0.02 seconds (~1200x faster)
- Only fetches firmware version on init
- Sections validated on-demand when first accessed
Granular Hot Water Loading
Hot water parameters split into 3 groups for more efficient loading:
| Group | Params | Method | Use Case |
|---|---|---|---|
| Essential | 5 | hot_water_state() |
Frequent polling |
| Config | 16 | hot_water_config() |
Advanced settings |
| Schedule | 8 | hot_water_schedule() |
Time programs |
Race Condition Prevention
Added asyncio locks (double-checked locking pattern) to prevent duplicate network requests when concurrent calls access the same section before validation completes.
Home Assistant Impact
- ⚡ Integration loads almost instantly
- 📉 Reduced startup blocking time from ~24s to ~0.02s
- 🔄 Data fetched on-demand, spreading network load over time
v4.0.0-beta.0
What’s changed
🚀 Enhancements
🧰 Maintenance
📚 Documentation
⬆️ Dependency updates
- ⬆️ Lock file maintenance @renovate[bot] (#1300)
- ⬆️ Update dependency ty to v0.0.9 @renovate[bot] (#1303)
- ⬆️ Update dependency ty to v0.0.10 @renovate[bot] (#1305)
- ⬆️ Update dependency ruff to v0.14.11 @renovate[bot] (#1304)
- ⬆️ Update github/codeql-action action to v4 @renovate[bot] (#1299)
- ⬆️ Update dependency ty to v0.0.11 @renovate[bot] (#1306)
v3.1.6
v3.1.5
What’s changed
🚀 Enhancements
🧰 Maintenance
- ⬆️ Update package rules to match 'uv' manager for Python dependencies @liudger (#1275)
- ⬆️ Enhance auto-approve workflow conditions for Renovate PRs @liudger (#1279)
- mypy to astral ty @liudger (#1282)
- Update copyright year in LICENSE and README files to 2026 @liudger (#1297)
⬆️ Dependency updates
- ⬆️ Lock file maintenance @renovate[bot] (#1276)
- ⬆️ Update codecov/codecov-action action to v5.5.2 @renovate[bot] (#1277)
- ⬆️ Update github/codeql-action action to v3.31.9 @renovate[bot] (#1285)
- ⬆️ Update dependency ty to v0.0.8 @renovate[bot] (#1284)
- ⬆️ Update hmarr/auto-approve-action digest to f0939ea @renovate[bot] (#1280)
- ⬆️ Update dependency pre-commit to v4.5.1 @renovate[bot] (#1281)
- ⬆️ Update dependency ruff to v0.14.10 @renovate[bot] (#1283)
- ⬆️ Update dependency coverage to v7.13.1 @renovate[bot] (#1287)
- ⬆️ Update astral-sh/setup-uv action to v7 @renovate[bot] (#1290)
- ⬆️ Update actions/upload-artifact action to v6 @renovate[bot] (#1289)
- ⬆️ Update dependency node to v24 @renovate[bot] (#1292)
- ⬆️ Update actions/download-artifact action to v7 @renovate[bot] (#1288)
- ⬆️ Update dependency flake8-simplify to v0.30.0 @renovate[bot] (#1294)
- ⬆️ Update dependency pylint to v4 @renovate[bot] (#1293)
- ⬆️ Update dependency black to v25.12.0 @renovate[bot] (#1286)
- ⬆️ Update dependency isort to v7 @renovate[bot] (#1291)
v3.1.4
What’s changed
🐛 Bug fixes
🚀 Enhancements
🧰 Maintenance
⬆️ Dependency updates
- ⬆️ Update actions/stale action to v10.1.1 @renovate[bot] (#1267)
- ⬆️ Update actions/upload-artifact action to v5 @renovate[bot] (#1270)
- ⬆️ Update dependency mypy to v1.19.0 @renovate[bot] (#1254)
- ⬆️ Update actions/download-artifact action to v6 @renovate[bot] (#1264)
- ⬆️ Update dependency prettier to v3.7.4 @renovate[bot] (#1251)
- ⬆️ Update actions/checkout action to v6 @renovate[bot] (#1263)
- ⬆️ Update actions/setup-node action to v6 @renovate[bot] (#1269)
- ⬆️ Update sigstore/gh-action-sigstore-python action to v3.2.0 @renovate[bot] (#1268)
- ⬆️ Update dependency ruff to v0.14.8 @renovate[bot] (#1253)
- ⬆️ Update actions/setup-python action to v6.1.0 @renovate[bot] (#1250)