Hi, I was wondering if you would be open to PRs to improve the general software engineering quality of this repo. This is the sort of thing I'm thinking of in increasing order of invasiveness:
Add pre-commit, tell it to format all the Python code using Black or Ruff and enforce in CI.
Add Pylint to pre-commit.
Restructure the code to turn it into an actual Python package with pyproject.toml etc. Publish it on Pypi.
Add static type hints.
Add Pyright (static type checker) to pre-commit to enforce them.
There's also some low hanging fruit in the actual code:
Use argparse (Typer is a better option but it's beneficial not to add a third party dependency.)
Switch from ad-hoc dictionaries to dataclasses.
Don't reparse the files 3 times.
I can do all that fairly easily but I thought I'd check if you would actually accept those improvements first. Seems like you might a bit review bottlenecked based on the open PRs (who isn't?).
Hi, I was wondering if you would be open to PRs to improve the general software engineering quality of this repo. This is the sort of thing I'm thinking of in increasing order of invasiveness:
pre-commit
, tell it to format all the Python code using Black or Ruff and enforce in CI.pre-commit
.pyproject.toml
etc. Publish it on Pypi.pre-commit
to enforce them.There's also some low hanging fruit in the actual code:
I can do all that fairly easily but I thought I'd check if you would actually accept those improvements first. Seems like you might a bit review bottlenecked based on the open PRs (who isn't?).