Releases: ha-china/ha-windows
Releases · ha-china/ha-windows
v0.5.2
v0.5.1
What's Changed
- Compare: v0.4.9...v0.5.1
Changes
- release: prepare v0.5.0 (da0b7a4) [https://github.com/ha-china/ha-windows/commit/da0b7a446169c5802eada0435a505b9deca1b259]
- ci: list all release changes since previous tag (aa2a97e) [https://github.com/ha-china/ha-windows/commit/aa2a97e2dd1b6bc2f3c0aa93f5480605b5cf500e]
- fix: harden startup cleanup for v0.5.1 (8b86dab) [https://github.com/ha-china/ha-windows/commit/8b86dab7aac303e0ba27eac392de692cdadb145b]
v0.4.9
Full Changelog: v0.4.8...v0.4.9
v0.4.8
Full Changelog: v0.4.6...v0.4.8
v0.4.6
Improved
- ESPHome and mDNS now use a persistent device identity stored in the user data directory instead of depending on the runtime network environment.
- This keeps the app MAC/device identity stable across restarts and avoids unexpected device/entity duplication in Home Assistant.
Notes
- This release is focused on the device identity stability fix. The earlier memory-related fixes remain in the previous release stream.
Full Changelog: v0.4.5...v0.4.6
Full Changelog: v0.4.5...v0.4.6
v0.4.5
Added
- Added user-managed wake word model directories under the app data folder for both MicroWakeWord and OpenWakeWord models.
Improved
- Updated wake word discovery to load built-in and user-provided MicroWakeWord and OpenWakeWord models together.
- Invalid, missing, or corrupted wake word model files are now skipped safely instead of crashing the app.
- Documented the custom wake word model directory structure in the README.
Notes
- Custom wake word models can now be placed under the app data WakeWordModels directory and will be discovered automatically.
Full Changelog: v0.4.4...v0.4.5
Full Changelog: v0.4.4...v0.4.5
v0.4.4
Fixed
- Reduced long-run memory growth during remote audio playback by switching remote audio playback to temp-file backed playback instead of loading full responses into memory.
- Added a hard limit for the ESPHome protocol receive buffer to prevent unbounded memory growth on malformed or stalled input.
- Reworked global hotkey registration to clean up handlers correctly instead of leaving blocked listener threads behind.
- Limited the application log file to a single 5 MB file to prevent unbounded disk usage over time.
Notes
- This release focuses on improving long-running stability for the packaged Windows build.
Full Changelog: v0.4.3...v0.4.4
Full Changelog: v0.4.3...v0.4.4
v0.4.3
中文说明
- 修复打包后托盘浮窗显示异常(
pyimage不存在)问题,提升显示/隐藏稳定性。 - 优化录音队列内存策略,降低长时间运行时内存增长风险。
- 完善构建工作流:增加版本一致性校验与失败日志产物上传。
- 版本号更新为
0.4.3。
English Notes
- Fixed packaged-build tray floating window instability (
pyimage ... doesn't exist) with safer UI lifecycle handling. - Improved recorder queue memory behavior for long-running stability.
- Improved CI workflow with version consistency checks and failed build log artifacts.
- Bumped version to
0.4.3.
Full Changelog: v0.4.0...v0.4.3
v0.4.0 - Global Hotkey & Configuration Persistence
[0.4.0] - 2026-01-27
Added
- Global hotkey support for voice input trigger
- Set voice input hotkey service (set_voice_input_hotkey)
- Voice input hotkey text sensor for displaying current hotkey
- Floating button visibility preference (saved to user directory)
- Persistent configuration storage in AppData/Local/HomeAssistantWindows
- NSIS installer support with auto-startup option
- Directory mode build for faster startup and installer packages
- Auto-startup management module (src/autostart.py)
- GitHub Actions workflow for building installer packages
- PyInstaller hooks for pygame and soundcard dependencies
- Log file path to user directory (avoiding Program Files permission issues)
Changed
- Floating button is hidden by default on startup
- Preferences now save to user directory instead of program directory
- Update notification now opens release page instead of direct exe download
- Optimized PyInstaller spec files for better dependency management
- Separated single-file and directory mode builds
- Reduced package size by removing unnecessary dependencies
- Improved audio dependency collection for voice assistant functionality
Improved
- Configuration persistence across restarts
- Better user experience with customizable hotkeys
- Preferences stored in Windows AppData for better portability
Fixed
- GUI application configuration (console=False for no black window)
- Tkinter import error (required by customtkinter)
- Zeroconf DNS cache KeyError during async cleanup
- Audio playback issues with comprehensive pygame and vlc imports
- Log file permission error when installed to Program Files
- NSIS installation in CI (switched from Chocolatey to winget)
- NSIS installer script paths and missing file references
Full Changelog: v0.3.3...v0.4.0
Full Changelog: v0.3.3...v0.4.0
Full Changelog: v0.3.3...v0.4.0
v0.3.2 - Code Quality Improvements
What's Changed
Code Quality Improvements
- Add pyproject.toml with Black, isort, and MyPy configurations
- Fix Flake8 issues: f-string placeholders, unused imports, whitespace
- Fix MyPy type issues: Optional types, None checks
Bug Fixes
- Fix duplicate wake word detection during TTS playback
- Disable duck/unduck volume control to prevent audio issues
- Fix type hints in audio_recorder and mdns_discovery modules
Developer Experience
- Add development scripts for formatting, linting, and testing
- Add scripts/format.bat - Format code with Black and isort
- Add scripts/lint.bat - Run code quality checks
- Add scripts/test.bat - Run test suite
- Add scripts/run.bat - Run the application
- Add scripts/setup.bat - Install development dependencies
Documentation
- Add scripts/README.md with script usage documentation
Technical Details
- Updated version to 0.3.2
- Improved code maintainability and quality
- Enhanced developer workflow with automated tools
Full Changelog: v0.3.1...v0.3.2