v0.8.1
This commit is contained in:
@@ -1,3 +1,23 @@
|
||||
# GREE Controller v0.8.1 - build and validation report
|
||||
|
||||
## 0.8.1 Rust borrow-checker hotfix
|
||||
|
||||
Version 0.8.1 is a compile-only hotfix for the 0.8.0 ownership release. It does not change controller behavior. Two mode-selection values in `src/engine.rs` borrowed `zone.mode` as `&str` across `refresh_control_ownership(&mut zone, ...)`, which Rust correctly rejected with E0502. Both paths now clone the selected mode into an owned `String` before the mutable ownership refresh and create the `&str` view only afterwards.
|
||||
|
||||
The affected paths are the live thermostat engine loop and `/api/control-plan` construction. No persisted schema, API field, ownership rule, thermostat decision, lockout rule or Home Assistant entity semantics changed.
|
||||
|
||||
### Validation available in this environment
|
||||
|
||||
- Confirmed both E0502 source patterns are removed and no `zone.mode.as_str()` borrow is held across `refresh_control_ownership(&mut zone, ...)`.
|
||||
- `node --check` passed for Web JavaScript.
|
||||
- All JSON files parse successfully.
|
||||
- Python Home Assistant integration and helper scripts pass `py_compile`.
|
||||
- Shell scripts pass `bash -n`.
|
||||
- Version consistency checked for Cargo package, Cargo lock root package, README and Home Assistant manifest.
|
||||
- This packaging container still has no `cargo`, `rustc` or `rustfmt`; therefore the target-host update script remains the authoritative Rust compile/test gate and must run `cargo test --all-targets` and `cargo build --release` before replacing the service.
|
||||
|
||||
---
|
||||
|
||||
# GREE Controller v0.8.0 - build and validation report
|
||||
|
||||
## 0.8.0 ownership/concurrency/safety release
|
||||
|
||||
Reference in New Issue
Block a user