lint: add ruff, remove autoflake, flake8, isort, pydocstyle, pylint
Metadata
Current evaluation
Merged PR #288 in commit 42a7920, replacing autoflake, flake8, isort, pydocstyle, and pylint with Ruff; deferred Ruff rule cleanup was tracked in #287.
Resolution: closed resolved
Reason: PR #288 was approved and merged into the main branch as commit 42a7920, completing the lint-tool consolidation. Follow-up cleanup from ignored Ruff rules continued under issue #287.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
To separate code changes from tooling changes, I ignored many `ruff` rules. These will be addressed in subsequent PRs. See https://github.com/canonical/craft-providers/issues/287
(CRAFT-1726)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #288 in commit 42a7920, replacing autoflake, flake8, isort, pydocstyle, and pylint with Ruff; deferred Ruff rule cleanup was tracked in #287. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #288 (commit 42a7920, CRAFT-1726) replaced autoflake, flake8, isort, pydocstyle and pylint with ruff in craft-providers; many ruff rules ignored initially, tracked in follow-ups under #287. | |
| qwen/qwen3.6-35b-a3b | — | closed resolved | Merged PR replacing flake8, pylint, isort, and others with ruff for linting. Many rules were initially ignored and will be addressed in follow-up PRs. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Related To:
canonical/craft-providers#287
(confidence 100%)
The PR explicitly deferred additional Ruff-rule fixes to this issue.
-
Likely Fixed By:
canonical/craft-providers#324
(confidence 95%)
Follow-up PR that completed the broader tooling and lint migration tracked by #287 in commit 7aacbfd.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #337 Linters: migrate from flake8 to ruff | craft-parts | merged | Merged PR #337 in commit 487e049f, making Ruff the default linter while retaining flake8 through the optional make test-flake8 target. | |
| #675 style(lint): replace pylint with ruff | rockcraft | merged | Merged as b7d70598, replacing pylint with Ruff, adding Ruff to CI and project requirements, and enabling equivalent lint coverage. | |
| #907 style: adjust linting rules for ruff 0.12 | rockcraft | merged | Merged into main as 186cb0fb, updating Ruff 0.12 settings to ignore PLC0415 and avoid unnecessary noqa comments. | |
| #68 lint: update ruff and fix linting | craft-archives | merged | Merged PR #68 as commit 8bb81ae, updating Ruff and fixing lint violations across four files after prerequisite #67. | |
| #1825 style(lint): fix ruff 0.6.0 linting errors | charmcraft | merged | Merged PR #1825 as commit 7aa2965b, applying Ruff 0.6.0 autofixes across 31 files to resolve linting errors. | |
| #1941 fix(templates): replace flake8 and pydocstyle with ruff | charmcraft | merged | Merged PR #1941 (commit 9aba24c4) replaced flake8 and pydocstyle with Ruff in Charmcraft templates, resolving #1461. | |
| #4712 Move more linting to ruff | snapcraft | closed | Ruff linting was completed and aligned with Starbase; pylint and isort were removed in #4817 and commit a00f1c439, followed by pylint cleanup in #4848. | |
| #562 Remove pylint in favour of ruff | craft-parts | closed | Pylint was dropped in favour of ruff by merged PR #580 (commit 111c8907, "chore(linter): enable ruff base on starbase config"), removing the [tool.pylint] config and CI/Makefile/dependency usage; ruff config expanded to cover it. | |
| #33 lint: fix lint issues with newer ruff | craft-archives | merged | PR #33 merged as commit c2a6687, fixing new lint failures introduced by a newer Ruff release across3 files (+5/-3). Maintainer deferred extra unit tests to CRAFT-1641. | |
| #289 lint: run `ruff --fix` | craft-providers | merged | PR #289 merged as commit 26c362e, running ruff --fix across 49 files and removing newly fixed rules from the ignore list as part of #287. |