homu icon indicating copy to clipboard operation
homu copied to clipboard

pre-commit hooks on merge

Open Eh2406 opened this issue 7 years ago • 3 comments

Cargo just stopped using rustfmt in travis, it was just too annoying to keep up with. I was thinking of building a bot that submitted PR's when cargo +stable fmt had changes. But we already have a bot, can homu just run fmt and amend its merge commits?

Eh2406 avatar Apr 09 '18 16:04 Eh2406

Seems more like a job for highfive, if it needs to happen on push.

nox avatar Apr 09 '18 16:04 nox

Oops, didn't mean to close, sorry.

nox avatar Apr 09 '18 16:04 nox

The goal is:

  • master is always using cargo fmt
  • no human ever needs to run that command to get CI to pass.

Well the workflow I imagine is:

Alis is new to the project and rust tooling. She clones the master branch of the project. She makes some changes. She accidentally gets rls to format it. The master branch of the project uses fmt so only her changes get formatted. Next in the revue some changes are requested. She makes the changes over the course of several tentative commits. None of those CI runs are wasted on "CI is red because you did not run fmt." No one needs to explain what fmt is nore how to use it. When the reviewer is satisfied homu merges the PR, to ensure the master branch of the project uses fmt homu runs cargo fmt on the merge before committing/testing/pushing.

Also I don't think highfive is set up to make commits.

Eh2406 avatar Apr 09 '18 16:04 Eh2406