Skip to content

Modernize pyproject config, add format.sh, align with mhcgnomes#61

Merged
iskandr merged 2 commits intomasterfrom
modernize-pyproject
Apr 21, 2026
Merged

Modernize pyproject config, add format.sh, align with mhcgnomes#61
iskandr merged 2 commits intomasterfrom
modernize-pyproject

Conversation

@iskandr
Copy link
Copy Markdown
Contributor

@iskandr iskandr commented Apr 21, 2026

Summary

  • Modernize pyproject.toml: add [build-system], bump requires-python to >=3.9 (matches CI matrix and dep floor), add [tool.ruff] base (target-version = "py39", line-length = 100), expand ruff lint rules (W, I, B, C4, UP, SIM, RUF alongside existing E/F), and add [tool.pytest.ini_options], [tool.coverage.*], plus a dev extras group.
  • Add format.sh (runs ruff format) and update lint.sh to also run ruff format --check — now symmetric with the sibling mhcgnomes repo.
  • Add AGENTS.md derived from mhcgnomes, adapted for this repo (scripts, master branch, polars/pyarrow/pandas deps).
  • Remove legacy configs: pylintrc and .travis.yml (GitHub Actions in .github/workflows/tests.yml is authoritative).
  • Apply safe auto-fixes surfaced by the new ruleset: isort, __all__ sorted, dict(...){...} literal, set([...]){...}, raise Xraise X from err, [a] + b[a, *b], .keys() drop.
  • Run ruff format across the codebase (whitespace/quote normalization, no logic changes).
  • Bump version 2.6.22.6.3.

Pre-existing issues kept out of scope (ignored in [tool.ruff.lint].ignore): UP031 (%-format strings), B006 (mutable default args), E741. Worth separate PRs.

Test plan

  • ./format.sh — clean
  • ./lint.shruff check + ruff format --check both pass
  • ./test.sh — 20/20 tests pass, coverage 86%
  • CI green on 3.9 / 3.10 / 3.11 matrix

…conventions

- pyproject.toml: add [build-system], bump requires-python to >=3.9,
  expand classifiers, add [tool.ruff] base (py39, line-length 100),
  expand ruff lint rules (W/I/B/C4/UP/SIM/RUF in addition to E/F),
  add [tool.pytest.ini_options] and [tool.coverage.*],
  add [project.optional-dependencies].dev
- add format.sh running ruff format
- lint.sh now also runs ruff format --check
- remove legacy pylintrc and .travis.yml
- add AGENTS.md (derived from mhcgnomes, adapted for gtfparse)
- apply safe auto-fixes surfaced by new ruleset (isort, __all__ sort,
  dict/set literals, raise ... from err, iterable unpacking)
- apply ruff format across codebase
- bump version 2.6.2 -> 2.6.3
@coveralls
Copy link
Copy Markdown

coveralls commented Apr 21, 2026

Coverage Report for CI Build 24740421170

Coverage remained the same at 86.471%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 170
Covered Lines: 147
Line Coverage: 86.47%
Coverage Strength: 0.86 hits per line

💛 - Coveralls

@iskandr iskandr merged commit d3313ac into master Apr 21, 2026
6 checks passed
@iskandr iskandr deleted the modernize-pyproject branch April 21, 2026 18:50
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.

2 participants