Changes in this release are compared to tag `2.0.0`.

- Device profile support for Raspberry Pi targets via `deploy/devices.yaml` and `deploy/DEVICE_PROFILES.md`.
- `bob` script toolchain for build/copy/init/run/device/ssh-config workflows.
- `bob publish` release workflow for annotated tags, changelog-based notes, and optional GitLab releases via `glab`.
- Root `Makefile` with developer targets for format, lint, test, coverage, and builds.
- MQTT package-level test scaffold with Ginkgo v2 / Gomega (`pkg/mqtt/*_test.go`, `pkg/mqtt/mqtt_suite_test.go`).
- Home Assistant-specific sensor representation and republish support (`pkg/sensors/homeassistant.go`).
- Git metadata helper in config package (`pkg/config/git.go`).
- Markdown lint configuration and improved release-note discipline in the repository.

- Refactored job orchestration to centralize scheduling and publishing responsibilities in `JobManager`/`JobService`.
- Improved Home Assistant lifecycle handling with explicit online/offline callbacks and pause/resume behavior for HA-bound publishing.
- Strengthened MQTT behavior with reconnect retry handling and discovery re-subscription flow.
- Expanded sensor update model to support interval-based reads and smoother update-rate publishing across sensor implementations.
- Improved SI1145 detection by checking additional I2C addresses.
- Updated sample configuration and runtime config validation paths.
- Updated build/deploy pipeline scripts, including profile-driven SSH handling and stronger `yq` usage.
- Updated Raspberry Pi profile defaults (including `pi-zero-03`) and deployment path handling.

- Fixed SI1145 overflow handling.
- Fixed shell quoting issues in `yq`-based profile evaluation.
- Improved robustness of `bob init` with better device detection and `--force` support.
- Improved deployment script behavior for binary copy paths and generated SSH config handling.

- Updated project baseline to Go 1.21.
- Updated project module and vendored dependency set (including reflection and MQTT-related stack updates).
- Added release workflow support via `glab` integration in the publish command path.

- Runtime now parses semantic versions and validates config version by range.
- Supported config version range is `>= 2.0.0` and `< 4.0.0`.
- Existing `.lateralus.yaml` files using `version: "2.0.0"` continue to work without changes.

Changes in this release are compared to tag 2.0.0.

Added

  • Device profile support for Raspberry Pi targets via deploy/devices.yaml and deploy/DEVICE_PROFILES.md.
  • bob script toolchain for build/copy/init/run/device/ssh-config workflows.
  • bob publish release workflow for annotated tags, changelog-based notes, and optional GitLab releases via glab.
  • Root Makefile with developer targets for format, lint, test, coverage, and builds.
  • MQTT package-level test scaffold with Ginkgo v2 / Gomega (pkg/mqtt/*_test.go, pkg/mqtt/mqtt_suite_test.go).
  • Home Assistant-specific sensor representation and republish support (pkg/sensors/homeassistant.go).
  • Git metadata helper in config package (pkg/config/git.go).
  • Markdown lint configuration and improved release-note discipline in the repository.

Changed

  • Refactored job orchestration to centralize scheduling and publishing responsibilities in JobManager/JobService.
  • Improved Home Assistant lifecycle handling with explicit online/offline callbacks and pause/resume behavior for HA-bound publishing.
  • Strengthened MQTT behavior with reconnect retry handling and discovery re-subscription flow.
  • Expanded sensor update model to support interval-based reads and smoother update-rate publishing across sensor implementations.
  • Improved SI1145 detection by checking additional I2C addresses.
  • Updated sample configuration and runtime config validation paths.
  • Updated build/deploy pipeline scripts, including profile-driven SSH handling and stronger yq usage.
  • Updated Raspberry Pi profile defaults (including pi-zero-03) and deployment path handling.

Fixed

  • Fixed SI1145 overflow handling.
  • Fixed shell quoting issues in yq-based profile evaluation.
  • Improved robustness of bob init with better device detection and --force support.
  • Improved deployment script behavior for binary copy paths and generated SSH config handling.

Dependencies

  • Updated project baseline to Go 1.21.
  • Updated project module and vendored dependency set (including reflection and MQTT-related stack updates).
  • Added release workflow support via glab integration in the publish command path.

Compatibility

  • Runtime now parses semantic versions and validates config version by range.
  • Supported config version range is >= 2.0.0 and < 4.0.0.
  • Existing .lateralus.yaml files using version: "2.0.0" continue to work without changes.