Skip to content

fix: drop Home Assistant core deps from the integration manifest - #116

Merged
Lewa-Reka merged 1 commit into
mainfrom
fix/hassfest-requirements
Oct 10, 2026
Merged

Lewa-Reka merged 1 commit into
mainfrom
fix/hassfest-requirements

Conversation

@Lewa-Reka

@Lewa-Reka Lewa-Reka commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Remove aiohttp and async_timeout from the custom integration manifest so Hassfest no longer fails daily on main.
  • Replace async_timeout.timeout with asyncio.timeout in the coordinator.
  • Group pip Dependabot updates, ignore aiohttp, fix the GitHub Actions directory, and bump actions/setup-python to v6.

Test plan

  • Hassfest Validation is green
  • HACS Validation is green
  • Tests (3.13) are green
  • MegaLinter is green

Made with Cursor

Summary by Sourcery

Align the integration with Home Assistant’s dependency and tooling conventions to prevent Hassfest failures.

Bug Fixes:

  • Remove custom integration runtime dependencies that are already provided by Home Assistant and use the standard asyncio timeout implementation.

Build:

  • Update test requirements and consolidate pip Dependabot updates while excluding aiohttp updates.

CI:

  • Correct the GitHub Actions Dependabot directory and update actions/setup-python to v6.

Hassfest rejects aiohttp in custom integration manifests, and async_timeout is replaced by asyncio.timeout.

Co-authored-by: Cursor <cursoragent@cursor.com>
@sourcery-ai

sourcery-ai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

The PR removes aiohttp and async_timeout from the custom integration manifest, relying on Home Assistant core dependencies and Python’s asyncio.timeout instead. It also updates test dependency configuration, groups and filters Dependabot pip updates, fixes GitHub Actions discovery, and upgrades actions/setup-python to v6.

File-Level Changes

Change Details Files
Remove integration-level dependency declarations and migrate timeout handling to the Python standard library.
  • Clear custom integration requirements so Home Assistant supplies core dependencies.
  • Replace async_timeout with asyncio.timeout while retaining the existing 30-second request timeout.
custom_components/rce_pse/coordinator.py
custom_components/rce_pse/manifest.json
Refine dependency automation and update the Python setup action.
  • Group pip dependency updates under a shared test-dependencies rule and ignore aiohttp updates.
  • Correct the GitHub Actions Dependabot directory to the repository root.
  • Upgrade actions/setup-python from v5 to v6.
.github/dependabot.yml
.github/workflows/tests.yml
Update test dependency configuration to align with the dependency cleanup.
  • Remove obsolete test requirements.
requirements-test.txt

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!

Sourcery assessment

Approved.


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

@github-actions

Copy link
Copy Markdown

✅⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 5 0 0 0.07s
✅ JSON jsonlint 5 0 0 0.25s
⚠️ JSON prettier 5 1 0 0.94s
✅ JSON v8r 5 0 0 4.54s
⚠️ MARKDOWN markdownlint 3 31 0 1.68s
⚠️ MARKDOWN markdown-table-formatter 3 1 0 0.46s
✅ PYTHON bandit 43 0 0 4.72s
✅ PYTHON pyright 43 0 0 7.24s
✅ PYTHON ruff 43 0 0 0.04s
✅ REPOSITORY checkov yes no no 21.63s
✅ REPOSITORY gitleaks yes no no 0.68s
✅ REPOSITORY git_diff yes no no 0.01s
✅ REPOSITORY grype yes no no 91.27s
✅ REPOSITORY secretlint yes no no 1.26s
✅ REPOSITORY syft yes no no 2.0s
✅ REPOSITORY trivy yes no no 15.43s
✅ REPOSITORY trivy-sbom yes no no 0.18s
✅ REPOSITORY trufflehog yes no no 3.37s
✅ SPELL lychee 23 0 0 1.38s
⚠️ YAML prettier 14 1 5 1.07s
✅ YAML v8r 14 0 0 11.3s
✅ YAML yamllint 14 0 0 0.92s

Detailed Issues

⚠️ MARKDOWN / markdown-table-formatter - 1 error
2 files contain markdown tables to format:
- README.md
- docs/MIGRACJA-V2.md
⚠️ MARKDOWN / markdownlint - 31 errors
docs/MIGRACJA-V2.md:3:401 error MD013/line-length Line length [Expected: 400; Actual: 524]
docs/MIGRACJA-V2.md:46:160 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:48:160 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:73:21 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:74:21 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:107:401 error MD013/line-length Line length [Expected: 400; Actual: 403]
docs/MIGRACJA-V2.md:107:403 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:108:67 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:108:134 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:108:228 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:108:359 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:109:67 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:109:134 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:109:228 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:109:360 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:110:96 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:110:149 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:110:204 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:110:335 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:112:401 error MD013/line-length Line length [Expected: 400; Actual: 486]
docs/MIGRACJA-V2.md:154:320 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:159:274 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:160:274 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:161:274 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
docs/MIGRACJA-V2.md:163:274 error MD060/table-column-style Table column style [Table pipe does not align with header for style "aligned"]
README.md:74:401 error MD013/line-length Line length [Expected: 400; Actual: 472]
README.md:78:401 error MD013/line-length Line length [Expected: 400; Actual: 466]
README.md:82:401 error MD013/line-length Line length [Expected: 400; Actual: 418]
README.md:88:401 error MD013/line-length Line length [Expected: 400; Actual: 467]
README.md:120:401 error MD013/line-length Line length [Expected: 400; Actual: 465]
README.md:276 error MD040/fenced-code-language Fenced code blocks should have a language specified [Context: "```"]
⚠️ JSON / prettier - 1 error
Checking formatting...
[warn] custom_components/rce_pse/translations/en.json
[warn] custom_components/rce_pse/translations/pl.json
[warn] Code style issues found in 2 files. Run Prettier with --write to fix.
⚠️ YAML / prettier - 1 error
Checking formatting...
[warn] .github/ISSUE_TEMPLATE/01-bug.yml
[warn] .github/ISSUE_TEMPLATE/02-feature-request.yml
[warn] .github/ISSUE_TEMPLATE/03-question.yml
[warn] examples/dashboard-lovelace-EN.yaml
[warn] Code style issues found in 4 files. Run Prettier with --write to fix.

See detailed reports in MegaLinter artifacts

MegaLinter is graciously provided by OX Security

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant