Hello everyone, TL;DRl; I'd like to propose that we enable the pre-commit-ci GitHub application for Airflow repo. According to how I understand it works, it should greatly reduce friction (especially for new contributors) for passing the quality gates for our pre-commits. That is - if we get the approval for pre-commit-ci application from the ASF infra team.
Some more context: We use and love (well some of us do, some of us likely hate) the pre-commit as a quality gate for our checks. We have been using it for years for local checks and CI integration and we have ~60 custom precommits and in total we use about 100 pre-commit checks as our "quality" gates However, using `standard` pre-commit (that is a de-facto standard in Python world) has a nice property of 'standing on the shoulders of giants'. There is one thing that few of us are aware of, that there is a way to reduce friction for pre-commits that are not only flagging errors but can also fix them. If we get the `pre-commit-ci` application (https://pre-commit.ci/) approved for our repo from the ASF infra team it - in theory - should be able to AUTO-FIX PRs that are not passing the pre-commits (and can be automatically corrected). Yep. You read it right. No more asking a new contributor "please fix static checks" - PRs that have auto-fixable pre-commit failures will be fixed automatically. For example when you make a PR that does not pass "ruff" formatting, the application should automatically amend the PR and FIX IT. We have quite a number of such PRs from first-time contributors, but also a number of seasoned contributors (including myself) occasionally send a PR that does not pass an auto-fixable static check. This can happen with a few scenarios (rebasing, or correcting a PR by applying a suggestion from review and a few other scenarios). It can be a little strange to see your PR corrected by a bot though, so I am reaching out here to see if you think it is a good idea. I also opened a JIRA request to approve the application (but I made a comment that it should be pending the discussion here): https://issues.apache.org/jira/browse/INFRA-25322 - it will likely require to slightly change our workflows to make it works as well. Do you think it's a good idea to have it enabled? Maybe it will be too much for our contributors and they will be surprised to see it happening? WDYT? J.