Nightly Build 20250831
🔧 Critical Bug Fixes & Performance Improvements
Enhanced Support Bundle Diagnostic Collection (#1247)
- Problem: Support bundles often contained empty logs with no troubleshooting information
- Root Cause: Log collection failed silently without capturing why it failed
- Solution: Implemented comprehensive diagnostic collection that continues even when logs fail
- Features:
- Detailed tracking for journal logs, file logs, config/system collection
- Path diagnostics showing existence, accessibility, and file counts
- Journal collection details with commands, exit codes, and stderr output
- Always creates
collection_diagnostics.json
for troubleshooting
- Impact: Support bundles now always provide diagnostic information, enabling effective remote troubleshooting
Audio Processing Buffer Optimization
- Problem: Audio analysis and capture had potential buffer underruns
- Solution: Increased buffer sizes for both audio analysis and capture pipelines
- Impact: More reliable audio processing with reduced chance of dropped samples
Wikipedia Image Provider Circuit Breaker (#1240)
- Problem: API rate limiting and blocks caused continuous hammering of Wikipedia servers
- Root Cause: No backoff mechanism when rate limited or blocked
- Solution:
- Implemented circuit breaker pattern with adaptive timeouts (60s for rate limits, 5-10min for blocks)
- Added lazy initialization to prevent startup race conditions
- Replaced mwclient with direct HTTP for proper User-Agent control
- Impact: Respects Wikipedia API guidelines and prevents service degradation
BirdImageCache Race Condition Resolution
- Problem: Cache refresh could cause race conditions during concurrent access
- Solution: Improved cache refresh handling with proper synchronization
- Impact: Eliminates potential crashes or data corruption during image cache updates
MQTT Connection Stability (#1241, #1229)
- Issues Fixed:
- EOF errors during disconnect timeout handling
- Missing occurrence values in MQTT messages
- Short timeout connection failures
- Solution: Enhanced error handling, proper disconnect timeout management, and complete message payload validation
- Impact: Reliable MQTT connectivity for Home Assistant and other integrations
🚀 Installation & Deployment Enhancements
Install Script Versioning & Rollback System (#1224)
- Features:
- Version-based installation with rollback capability
- Enhanced location and timezone detection
- Optional Cockpit web console integration (#1243)
- Improved usage options and help documentation
- Impact: Safer installations with ability to recover from failed updates
Support Upload Requirements (#1228)
- Change: Support bundle uploads now require mandatory GitHub issue number
- Purpose: Better tracking and correlation of support requests with reported issues
- Impact: Improved support workflow and issue resolution tracking
📚 Documentation & Developer Experience
Custom BirdNET Classifier Training Guide
- Addition: Comprehensive guide for training custom classifiers (e.g., dog bark detection)
- Includes: Prerequisites, folder structure, audio preparation, configuration settings
- Visual Aids: Waveform and spectrogram examples for better understanding
- Impact: Empowers users to create custom sound detection models beyond birds
🐛 Additional Bug Fixes
- Log Processing Priority: Added priority levels to error contexts for better categorization
- Database Search Query: Fixed non-existent
source_safe
column reference (#1226) - Timestamp Race Condition: Resolved race condition in species summary endpoint (#1242)
- Frontend Timezone Parsing: Fixed timezone bugs in date string parsing (#1219)
- Frontend Cache Busting: Implemented version-based cache busting for Svelte assets (#1225)
- RTSP URL Parsing: Removed strict parsing to prevent regression (#1222)
🎯 Developer Notes
This release focuses on stability improvements and enhanced diagnostics capabilities. The support bundle enhancements and MQTT fixes address critical issues reported by the community. The addition of custom classifier training documentation opens new possibilities for specialized sound detection applications beyond bird identification.
Full Changelog: nightly-20250826...nightly-20250831
Contributors: Special thanks to all contributors who helped identify, test, and resolve these issues.