Problem
With the Ruff checks added in #127 (advisory for now), the non-curriculum code reports 176 pre-existing violations:
| Scope |
Count |
scripts/ |
38 |
tests/ (integration, unit, tui) |
77 |
pythonlings/ (core, cli, screens, widgets) |
61 |
Breakdown: 164 × E501 (line too long), 10 × I001 (unsorted imports), 2 × F401 (unused imports) — 12 auto-fixable. All reported by:
ruff check scripts tests pythonlings --ignore F821
These stay unfixed today, so when #124 flips lint from advisory to blocking, CI goes red immediately.
Proposed Behavior
- Run ruff check scripts tests pythonlings --fix + ruff format for the auto-fixable subset.
- Hand-fix the rest (long strings/comments that format can't touch).
- Land as one or two focused PRs targeting dev (e.g. one for tests/, one for scripts/ + pythonlings/), each keeping CI green and tests passing (python -m pytest -q).
- Acceptance: the command above reports 0 errors.
- checks/ (curriculum) stays out of scope — separate discussion.
Alternatives Considered
Problem
With the Ruff checks added in #127 (advisory for now), the non-curriculum code reports 176 pre-existing violations:
scripts/tests/(integration, unit, tui)pythonlings/(core, cli, screens, widgets)Breakdown: 164 × E501 (line too long), 10 × I001 (unsorted imports), 2 × F401 (unused imports) — 12 auto-fixable. All reported by:
These stay unfixed today, so when #124 flips lint from advisory to blocking, CI goes red immediately.
Proposed Behavior
Alternatives Considered