Skip to content

Bump PyViCare to 2.62.0 - #180395

Merged
TheJulianJES merged 1 commit into
home-assistant:devfrom
lackas:vicare-bump-2-62-0
Aug 27, 2026
Merged

Bump PyViCare to 2.62.0#180395
TheJulianJES merged 1 commit into
home-assistant:devfrom
lackas:vicare-bump-2-62-0

Conversation

@lackas

@lackas lackas commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Proposed change

2.62.0 brings the two library fixes ViCare needs on dev:

Note this does not make #180315 obsolete: fetch_all_features still takes the accessor, so the coordinator call has to be fixed there.

Release notes: https://github.com/openviess/PyViCare/releases/tag/2.62.0
Diff: openviess/PyViCare@2.61.0...2.62.0

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

Checklist

  • I understand the code I am submitting and can explain how it works.
  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.
  • Any generated code has been carefully reviewed for correctness and compliance with project standards.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies a diff between library versions and ideally a link to the changelog/release notes is added to the PR description.

To help with the load of incoming pull requests:

Copilot AI balanced review requested due to automatic review settings August 27, 2026 10:38
@home-assistant home-assistant Bot added cla-signed dependency Pull requests marked as a dependency upgrade integration: vicare small-pr PRs with less than 30 lines. by-code-owner Quality Scale: No score labels Aug 27, 2026
@home-assistant

Copy link
Copy Markdown
Contributor

Hey there @CFenner, mind taking a look at this pull request as it has been labeled with an integration (vicare) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of vicare can trigger bot actions by commenting:

  • @home-assistant close Closes the pull request.
  • @home-assistant mark-draft Mark the pull request as draft.
  • @home-assistant ready-for-review Remove the draft status from the pull request.
  • @home-assistant rename Awesome new title Renames the pull request.
  • @home-assistant reopen Reopen the pull request.
  • @home-assistant unassign vicare Removes the current integration label and assignees on the pull request, add the integration domain after the command.
  • @home-assistant update-branch Update the pull request branch with the base branch.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component, problem in config, problem in device, feature-request) to the pull request.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component, problem in config, problem in device, feature-request) on the pull request.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Bumps PyViCare to 2.62.0, incorporating upstream ViCare cache and WaterTreatment fixes.

Changes:

  • Updates the ViCare integration dependency.
  • Regenerates the global requirements entry.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
requirements_all.txt Updates PyViCare to 2.62.0.
homeassistant/components/vicare/manifest.json Pins the integration to PyViCare 2.62.0.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@github-actions

Copy link
Copy Markdown

Check requirements

Checked at commit 01a90e9.

⚠️ Some checks require attention — see the details below.

Package Old New No Advisories Not Yanked Repo Public CI Upload Release Pipeline Security PR Link Async Safe
PyViCare 2.61.0 2.62.0 ⚠️ ⚠️ ☑️
📦 PyViCare: 2.61.0 → 2.62.0
  • No Advisories: ✅ No active advisories reported by PyPI for version 2.62.0.
  • Not Yanked: ✅ Version 2.62.0 is a live (non-yanked) release.
  • Repo Public: ✅ https://github.com/openviess/PyViCare is publicly accessible.
  • CI Upload: ⚠️ No PEP 740 provenance attestation present on PyPI. Upload method cannot be verified from PyPI alone.
  • Release Pipeline: ⚠️ Release triggered on release: published with id-token: write permission and pypa/gh-action-pypi-publish, but an explicit password: ${{ secrets.PYPI_APITOKEN }} is also passed; the static token takes precedence over OIDC in practice for this bump.
  • Security: ☑️ Baseline scan found nothing obvious in pyproject.toml, PyViCare/__init__.py, PyViCare/PyViCareService.py, PyViCare/PyViCareAbstractOAuthManager.py. This is not a security review — only the cheap checks were run.
  • PR Link: ✅ PR description links to openviess/PyViCare@2.61.0...2.62.0, referencing both 2.61.0 and 2.62.0.
  • Async Safe: ✅ Sync-only library (uses requests via authlib.integrations.requests_client.OAuth2Session); Home Assistant integrations must wrap calls in an executor.

Generated by Check requirements (AW) · sonnet46 · 33.4 AIC · ⌖ 5.2 AIC · ⊞ 9.6K ·

@TheJulianJES TheJulianJES left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@TheJulianJES
TheJulianJES merged commit ec5e584 into home-assistant:dev Aug 27, 2026
94 of 95 checks passed
@zigpy-review-bot

Copy link
Copy Markdown

Post-merge note, for the record rather than to hold anything up.

The bump does what it says. Verified against the merged coordinator on dev with 2.62.0 actually installed: one GET per refresh, cache warmed, and the following entity read served from cache — so the event-loop fetch is gone. Pins were complete; manifest.json and requirements_all.txt are the only two sites. Nothing else in the 2.61.0…2.62.0 delta touches this integration: Home Assistant does not reference WaterTreatment, and SUPPORTED_DEVICE_TYPES is unchanged in 2.62.0, so waterTreatment devices stay filtered out of client.devices.

One loose end that this bump activates, and that is currently not queued anywhere.

Making fetch_all_features cached also makes it validate, so PyViCareInvalidDataError becomes reachable on the refresh for the first time:

malformed payload (no 'data' key), _refresh body verbatim:
  2.61.0 -> NO RAISE
  2.62.0 -> PyViCareInvalidDataError

2.61.0  ViCareCachedService.fetch_all_features -> ViCareService.fetch_all_features           (raw, no validation)
2.62.0  ViCareCachedService.fetch_all_features -> ViCareCachedServiceBase.fetch_all_features (-> _get_or_update_cache, validates)

It is in neither of the coordinator's except clauses, so a malformed response becomes Unexpected error fetching vicare_… data with a traceback plus a ConfigEntryNotReady retry loop, where before the bump it raised nothing at refresh time.

The fix was already written — 715972c on #180344 adds PyViCareInvalidDataError to the UpdateFailed tuple, with a test — but that PR was closed unmerged, and this one merged before the mapping landed. So dev now carries the gap and no open PR closes it; it wants a small follow-up, or that commit lifted off the closed branch.

(The PACKAGE_NOT_PAID_FOR point from that thread is settled and not repeated here — the reasoning for keeping it out of the UpdateFailed tuple holds, and the residual event-loop reads on the unpaid path are tracked in #176163.)

@TheJulianJES

Copy link
Copy Markdown
Member

Above is nothing critical but should likely be addressed in another PR.

This bump and #180315 are both tagged for the beta and already fix the issue that the ViCare integration doesn’t set up at all. The future improvements are just regarding error handling.

frenck pushed a commit that referenced this pull request Aug 27, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 28, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants