← Back to issue list

PYDEPS linter

View original Github issue

Metadata

Project
charmcraft
Number
#1890
Type
issue
State
closed
Author
lengau
Labels
—
Created
Updated
Closed

Current evaluation

Implemented the PYDEPS linter in charmcraft PR #2250 (commit 8877d1b1), checking that dependencies required by included charm libraries are installed in the venv.

Resolution: closed resolved

Reason: The requested PYDEPS linter was added and merged via PR #2250, commit 8877d1b1 ("feat(linters): PYDEPS linter"). The PyDeps linter class now exists in charmcraft/linters.py, collecting PYDEPS from bundled charm libs and verifying each is installed in the venv, satisfying the issue's strict-deps requirement.

Evaluated by: mr-cal-bot

No scores available.

Issue body

### What needs to get done Create a linter to ensure that all dependencies required in `PYDEPS` in all included charm libs are installed in the venv ### Why it needs to get done With strict deps we don't install from `PYDEPS`

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Implemented the PYDEPS linter in charmcraft PR #2250 (commit 8877d1b1), checking that dependencies required by included charm libraries are installed in the venv.
stealth/space-bunny-alpha — closed resolved PYDEPS validation was implemented in PR #2250 via commit 8877d1b1, checking that venv packages satisfy dependencies from included charm libraries.
stealth/space-bunny-alpha — closed resolved Implemented the PYDEPS linter in charmcraft PR #2250 (commit 8877d1b1), checking that dependencies required by included charm libraries are installed in the venv.
qwen3.6-35b-a3b-mtp-q6 — — Closed without implementation. An internal Jira ticket (CRAFT-3370) was created to track the request, but the linter was never developed, indicating the feature request was abandoned.
qwen/qwen3.6-35b-a3b — — Closed and superseded by internal Jira ticket CRAFT-3370. The linter request was not implemented and remains abandoned pending internal tracking.
qwen/qwen3.6-35b-a3b — — Superseded by Jira ticket CRAFT-3370 and closed. The PYDEPS linter request was not merged or implemented, with tracking moved externally.
qwen3.6-35b-a3b-mtp-q6 — — Abandoned without implementation. The PYDEPS linter request was closed and forwarded to internal Jira ticket CRAFT-3370 for tracking.

Update history

No update history recorded yet.

Related work

  • Likely Fixed By: canonical/charmcraft#2250 (confidence 98%)

    Merged PR adding the PyDeps linter (commit 8877d1b1) that validates all charmlib PYDEPS are installed in the venv, directly implementing this issue.

Related issues

Issue Project State Summary Similarity
#1971 feat(linter): add PYDEPS linter charmcraft closed Closed unmerged and superseded by charmcraft#2250, which merged the PYDEPS linter in commit 8877d1b1 and resolved #1890.
79%
#929 Include a PYDEPS key in the charm library specification charmcraft closed PYDEPS support was implemented and merged in canonical/charmcraft#1003 (implementation 193776ae, merge 8a3a0e6f), adding included charm-library dependencies during packing.
76%
#2250 feat(linters): PYDEPS linter charmcraft merged Merged PR #2250 in commit 8877d1b1, adding a linter that verifies installed packages match charmlib PYDEPS and fixes #1890.
76%
#1003 pack: include the charm libraries dependencies (CRAFT-1559) charmcraft merged Merged #1003 in commit 8a3a0e6f, adding charm-library PYDEPS to venv priming and dependency handling while improving library-tree parsing.
74%
#1889 `pip check` linter charmcraft closed Added a `pip check` linter for built charm virtualenvs via merged PR canonical/charmcraft#1951 (commit 3a094837), detecting inconsistent dependencies during Charmcraft analysis and packing.
72%