Skip to content

Releases: davidsmfreire/shinemonitor-api

v0.8.0

Choose a tag to compare

@davidsmfreire davidsmfreire released this 12 Jul 22:10

v0.8.0 (2026-07-12)

⚠ Breaking

  • Client constructors now take app=AppProfile instead of individual base_url/suffix_context/company_key params — df6c311

Features

  • AppProfile: Dataclass with WATCHPOWER and RENOCLIENT presets + KNOWN_APPS registry for discovery — df6c311
  • get_devices fallback: Retry all known app profiles on ERR_NOT_FOUND_DEVICE — closes #4df6c311
  • Rust + Go parity: AppProfile enum and get_devices cross-app fallback in all three clients — 20fcf64
  • HA config flow: App profile dropdown (WatchPower / RenoClient) in the Home Assistant integration — df6c311

Bug Fixes

  • Devices scoped to RenoClient (or other white-label apps) are now discoverable via automatic profile fallback — df6c311

CI

  • Fix Rust cargo fmt check in CI
  • Add Go test job to CI matrix — acfe136

Full Changelog: v0.7.0...v0.8.0

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 27 Apr 08:27

v0.7.0 (2026-04-27)

Features

  • HACS: Show ShineMonitor logo in the HACS info card — 27e6a39
  • API: Add queryDeviceCtrlField endpoint (inverter configuration fields with schema + current value) — 7d4a69f
  • API: Add queryDeviceCtrlValue endpoint (companion to read current setting per field) — afbf82f
  • Example: get_device_settings.py — iterate over all config fields per device, showing current value and available options — 7d4a69f

Bug Fixes

  • queryDeviceCtrlValue requires id param (real device rejects batch request) — 3e31a9a
  • Codegen: Auto-format generated Rust and Go source to pass CI — 6100e7c
  • Codegen: Silence bandit false positives on subprocess imports — 10a7fd2, 3942eb9

Full Changelog: v0.6.5...v0.7.0

v0.6.5

Choose a tag to compare

@github-actions github-actions released this 25 Apr 18:28

v0.6.5 (2026-04-25)

Bug Fixes

  • Rust: Add README and crate metadata for crates.io listing — f8662da

Chores

  • Update HA custom_components requirements version — e8c8fc9

Full Changelog: v0.6.4...v0.6.5

v0.6.4

Choose a tag to compare

@github-actions github-actions released this 25 Apr 17:40

v0.6.4 (2026-04-25)

Bug Fixes

  • CI: Gate Python/Rust jobs on tag pushes so releases actually publish — c7f0112
  • CI: Switch PyPI publishing to Trusted Publisher (OIDC) — c7f0112

Full Changelog: v0.6.3...v0.6.4

v0.3.0

Choose a tag to compare

@davidsmfreire davidsmfreire released this 03 Jan 09:43

v0.3.0 (2025-01-03)

Features

  • get_daily_data: Remove dev_addr and dev_code default values; improve docstring — f11d9d7

Chores

  • Add pre-commit hooks

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@davidsmfreire davidsmfreire released this 02 Jan 21:06

v0.2.0 (2025-01-02)

Features

  • Fetch device identifiers from the account (get_devices) — 48899d4
  • Improve typing and add login validation — 9bf064f

Bug Fixes

  • Update deprecated example file — 43142b8

Chores

  • Support Pydantic v1 and v2
  • Relax requests version constraint
  • Add example files and organize example dependencies

Full Changelog: v0.1.0...v0.2.0

v0.1.0

Choose a tag to compare

@davidsmfreire davidsmfreire released this 01 Jun 14:31

v0.1.0 (2024-06-01)

Initial release of watchpower-api — a Python client for the WatchPower/ShineMonitor API.

Features

  • WatchPowerAPI client class with login and daily data retrieval
  • Pydantic-based response schemas for daily data
  • Poetry-based packaging with PyPI publishing workflow

Full Changelog: https://github.com/davidsmfreire/watchpower-api/commits/v0.1.0