feat(linters): PYDEPS linter
Metadata
Current evaluation
Merged after two approvals. Added a PYDEPS linter to verify charmlib package consistency, resolving #1890 and CRAFT-3370. The author overrode a single failing spread test caused by infrastructure issues to complete the merge.
Suggested action: —
No scores available.
Issue body
This adds a linter that checks the PYDEPS of all charmlibs in a charm to ensure the resulting packages match.
Fixes #1890
CRAFT-3370
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged after two approvals. Added a PYDEPS linter to verify charmlib package consistency, resolving #1890 and CRAFT-3370. The author overrode a single failing spread test caused by infrastructure issues to complete the merge. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged after introducing a PYDEPS linter to verify charmlib package dependency consistency. Resolves #1890 and CRAFT-3370. A single CI spread test failure was attributed to infrastructure limits, prompting the maintainer to override and merge. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged following a maintainer override of a transient infrastructure-related CI failure. Introduces a PYDEPS linter to validate charmlib dependency consistency, resolving #1890 and CRAFT-3370. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1971 feat(linter): add PYDEPS linter | charmcraft | closed | Merged to add a PYDEPS linter that verifies charm library dependencies are installed and sufficient, resolving issue #1890. The commit introduces 107 lines of validation logic across a single file. | |
| #1003 pack: include the charm libraries dependencies (CRAFT-1559) | charmcraft | merged | Merged changes integrating charm library dependencies into the pack process. Introduces a charmlibs helper to collect PYDEPS, updates library parsing, and refactors get_libs_from_tree. Approved and merged after CI checks. | |
| #90 many: address new linter warnings (CRAFT-364) | craft-parts | merged | Merged after resolving new linter warnings from updated mypy and pylint versions, including silencing checks in tests. Approved by two reviewers, passed CI, and modified eight files (+32/-22 lines). |