adaptive-lighting/webapp
Bas Nijholt d4d3d50ada
fix: replace deprecated get_astral_location with get_astral_observer (#1482)
* fix: replace deprecated get_astral_location with get_astral_observer (#1481)

HA 2026.7 deprecates homeassistant.helpers.sun.get_astral_location
(removal planned for 2027.7) in favor of get_astral_observer, causing a
deprecation warning in the HA logs.

- Switch SunEvents/SunLightSettings from astral.location.Location to
  astral.Observer, using the astral.sun module functions (which return
  UTC times by default, matching the previous local=False calls).
- Use get_astral_observer in switch.py, with a fallback for HA < 2026.7
  that constructs the Observer directly from the HA config.
- Update tests and the webapp simulator accordingly.

* ci: handle removal of requirements_test_all.txt in HA 2026.8 dev

HA core removed requirements_test_all.txt (home-assistant/core#171530),
which made test_dependencies.py crash with FileNotFoundError and broke
the dev pytest job and the Docker builds. Fall back to
requirements_all.txt, which carries the same per-integration
'# homeassistant.components.x' annotations. Also extend the
aiohasupervisor pin lookup in scripts/setup-dependencies accordingly.

* test: support modern template light config for HA 2026.6+

HA 2026.6 removed the legacy `light: platform: template` YAML format
(home-assistant/core#169615), so setup_lights found no template platform
on HA dev and every test using it failed with IndexError. Detect legacy
support at runtime (PLATFORM_SCHEMA presence) and fall back to the
modern `template:` config format. The group platform is set up before
the template integration in the modern path, because setting up
`template` also sets up the `light` domain, which would make a later
async_setup_component(hass, LIGHT_DOMAIN, ...) a no-op.
2026-07-01 23:00:35 -07:00
..
__init__.py Include core 2024.9.3 until 2024.12.0 in the tests (#1130) 2024-12-07 11:29:05 -08:00
app.py fix: replace deprecated get_astral_location with get_astral_observer (#1482) 2026-07-01 23:00:35 -07:00
color_and_brightness.py fix: replace deprecated get_astral_location with get_astral_observer (#1482) 2026-07-01 23:00:35 -07:00
homeassistant_util_color.py [pre-commit.ci] pre-commit autoupdate (#882) 2024-02-05 14:13:13 -08:00
README.md Properly fix the webapp 2025-07-21 15:49:55 -07:00
requirements-dev.txt Properly fix the webapp 2025-07-21 15:49:55 -07:00
requirements.txt Properly fix the webapp 2025-07-21 15:49:55 -07:00
requirements.txt.in Properly fix the webapp 2025-07-21 15:49:55 -07:00

To run this app locally, install the requirements and run shiny run.

$ cd webapp
$ pip install -r requirements-dev.txt
$ shiny run

After the server starts, which should take only a moment, you can open http://127.0.0.1:8000 to see the interface.