Skip to content

Sync meta config with praw - #17

Merged
bboe merged 1 commit into
mainfrom
sync-meta-with-praw
Jun 13, 2026
Merged

Sync meta config with praw#17
bboe merged 1 commit into
mainfrom
sync-meta-with-praw

Conversation

@bboe

@bboe bboe commented Jun 13, 2026

Copy link
Copy Markdown
Member

Aligns CodeSorter's tooling/metadata with the praw conventions, per the agreed scope. Kept CodeSorter's intentional differences: strict pyright (praw is standard), the [project.scripts] CLI entry point, and no network-test deps (vcrpy/requests).

ruff

  • select = ["ALL"] with praw's curated ignore list (replaces the explicit allow-list) + flake8-builtins ignorelist (id).
  • Broadened docs/conf.py and tests/*.py per-file-ignores to praw's category-level style.
  • One source fix surfaced by ALL: PERF401 → use list.extend in _gen_unique_name.

packaging / metadata

  • Added codesorter/py.typed marker + "Typing :: Typed" classifier (the package is fully typed; verified py.typed ships in the wheel).
  • Added "Change Log" project URL → the RTD change log page.

tox / deps / pre-commit

  • docs added to the tox envlist (bare tox now builds docs).
  • pre-commit env: pass_env = ["SKIP"] instead of hardcoding set_env.SKIP (matches how the shared CI passes SKIP).
  • ruff added to the lint dependency group.
  • Added the sort-simple-yaml pre-commit hook for workflow / .readthedocs YAML (existing workflows were already in order, so no reformat).

Deferred (separate follow-up)

Coverage enforcement (fail_under=100) is not in this PR. cli.py is only 23% covered — the CLI has no tests — so 100% needs a dedicated CLI test suite, which I'll do next, then flip on the gate.

Verified: ruff clean under ALL, pyright strict 0 errors, 15 tests pass, pre-commit clean, docs build clean.

@bboe
bboe force-pushed the sync-meta-with-praw branch 2 times, most recently from e1dbd1b to e0ece49 Compare June 13, 2026 22:41
Align CodeSorter's tooling/metadata with the praw-dev conventions,
keeping CodeSorter's intentional differences (strict pyright, the CLI
entry point, no network-test deps).

ruff:
- select = ["ALL"]; base the global ignore on the leaner prawcore
  core-lib list, then trim it to the rules that fire or are tooling
  mandated (down to 7 entries)
- keep C901 as an inline noqa on _get_dependencies rather than a global
  ignore
- make the CLI's main() callback keyword-only, which eliminates the
  FBT001 and PLR0917 ignores; PLR0913 (one parameter per click option)
  remains as a lone cli.py per-file ignore
- minimize the remaining per-file-ignores to what actually fires
- add the flake8-builtins ignorelist
- source fixes surfaced by the above: PERF401 (list.extend) and dropping
  the RUF015 noqa via next(iter(...))

packaging / metadata:
- add the codesorter/py.typed marker and the 'Typing :: Typed' classifier
- add the 'Change Log' project URL -> the Read the Docs change log page

tox / deps / pre-commit:
- add 'docs' to the tox envlist
- pass SKIP through to the pre-commit env (pass_env)
- add ruff to the lint dependency group
- add the sort-simple-yaml hook for workflow / .readthedocs YAML

Coverage enforcement (fail_under=100) is deferred to a follow-up that
adds the missing cli.py test suite.
@bboe
bboe force-pushed the sync-meta-with-praw branch from e0ece49 to 330d668 Compare June 13, 2026 22:46
@bboe
bboe merged commit d1e8a17 into main Jun 13, 2026
9 checks passed
@bboe
bboe deleted the sync-meta-with-praw branch June 13, 2026 22:47
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