Hello,
As previously discussed in the face to face WG21 meeting in Hagenberg, where I did a demo with a beman-tidy POC, I continued the work and incorporated the feedback into what’s now proposed to be the MVP for beman-tidy - The Codebase Bemanification Tool.
Issue: https://github.com/bemanproject/infra/issues/1
PR: Add beman-tidy: The Codebase Bemanification Tool by neatudarius · Pull Request #2 · bemanproject/infra · GitHub
The focus of this discussion / PR / review should be on next items:
1) The usage of the tool (check “tools/beman-tidy/README.md”).
2) Portability (Only Python deps → portable).
3) Modes (dry-run, fix-inplace)
4) Limitations (requires a hard copy of the Beman Standard).
5) Advantages (because it uses a hard copy of the standard, it does not requrire internet access).
6) The ease of adding new checks (check “README.md” and an “tools/beman-tidy/lib/checks/beman_standard”).
7) The ease of adding automated tests for implemented checks.
Notes:
- There are 43 checks in the Beman Standard. I have only implemented 3/43 for this demo / first step.
- tools/beman-tidy/README.md has docs for installation, usage, development, writing tests, etc.
Proposed next steps:
- Review and merge MVP PR.
- Implement most used checks: all REQUIREMENTs and most used RECOMMANDATIONs.
- Deploy beman-tidy on CI as optional job in exemplar and other repos (it will be reusable via the infra/ repo).
- Make it stable.
- Implement remaining checks.
- We’ll enforce the beman-tidy jobs in repos one 1) the tool is stable and 2) we actually apply all the checks on that repo.
Please feel free to jump in the discussion or on the PR. I plan to do a demo in the next Beman Weekly Sync (if we can add this topic to the agenda).
CC: @leads