Add common error function in hooks
Error messages are printed in stderr
Reviewed By: tcberner, #portmgr
Differential Revision: https://reviews.freebsd.org/D38026
dns/dnsmasq-devel as of 2.88rc3 contained a comment about PORTEPOCH,
which I removed in the 2.88rc5. This tripped up the checker because
it assumed that if git yielded lines containing PORTEPOCH, then it
must have been PORTEPOCH= or similar lines. Untrue in my case.
It was printing
[pre-commit] dropped PORTEPOCH in dns/dnsmasq-devel/Makefile
To solve, only pick out PORTEPOCH diffs that are actual assignments,
and if the new PORTEPOCH is empty, and the old one is also,
ignore this condition (previously we would exit 1, which is bogus).
Also, grep without -E should not have \ in front of - or +.
FreeBSD 13.1 grep is fine, but GNU grep ignores those backslashes
noisily (and I have prepended it to PATH) and emits warnings.
PR: 268024
dns/dnsmasq-devel as of 2.88rc3 contained a comment about PORTEPOCH,
which I removed in the 2.88rc5. This tripped up the checker because
it assumed that if git yielded lines containing PORTEPOCH, then it
must have been PORTEPOCH= or similar lines. Untrue in my case.
It was printing
[pre-commit] dropped PORTEPOCH in dns/dnsmasq-devel/Makefile
To solve, only pick out PORTEPOCH diffs that are actual assignments,
and if the new PORTEPOCH is empty, and the old one is also,
ignore this condition (previously we would exit 1, which is bogus).
Also, grep without -E should not have \ in front of - or +.
FreeBSD 13.1 grep is fine, but GNU grep ignores those backslashes
noisily (and I have prepended it to PATH) and emits warnings.
This hooks enforces that all files in the top-directory of a port match:
- .*\.mk
- Makefile.*
- distinfo.*
- pkg-.*
An example error message would look like:
[pre-commit] ERROR: invalid file 'Foo' in 'kate/editors'
Consider moving non-standard files to files/ or force-ignore this hook.
Differential Revision: https://reviews.freebsd.org/D37387
- checks dropping of PORTEPOCH:
[pre-commit] dropped PORTEPOCH 1 in net/kf5-kdav/Makefile
- checks it being non-decreasing:
[pre-commit] PORTEPOCH decreasing from 2 to 1 in net-p2p/frost/Makefile
Reviewed By: rene, bapt
Differential Revision: https://reviews.freebsd.org/D35733
A possible error message will look like:
[pre-commit] ERROR: MOVED contains errors.
Please apply the suggested changes:
17537: date going backwards from 2022-08-20 to 2022-08-13 from this line
17538: date going backwards from 2022-08-20 to 2022-08-13 to this line
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D35042
This adds a further pre-commit hook to enforce indentations in Mk/*
Usage:
> vim Mk/Uses/tcl.mk
[add/remove some whitespaces between a `.` and an `if`]
> git add Mk/Uses/tcl.mk
> git commit -m "Mk/Uses/tcl.mk: test hook"
[pre-commit] tcl.mk is not properly indented -- please use /tmp/check_indentations-tcl.mk.LShfR7TD48/tcl.mk which was created using Tools/scripts/indent_make_if.pl
Reminder: to make use of the hooks provided by the ports tree use the
following from [1]
Add the prepare-commit-msg hook to the repository.
To make use of it, the easiest way is to run:
git config --add core.hooksPath .hooks
[1] bbc2474ef7
Reviewed by: portmgr (rene)
Differential Revision: https://reviews.freebsd.org/D35041
This pre-commit hook looks for newly added files matching
foo/bar/Makefile
For these files, it is checking that a SUBDIR+=bar entry is
present in foo/Makefile.
Example run output:
> mkdir -p graphics/test_port
> touch graphics/test_port/Makefile
> git add graphics/test_port/Makefile
> git commit -m "graphics/test_port: not hooked into the build"
[pre-commit] ERROR: Missing 'SUBDIR += test_port' in graphics/Makefile
This should hopefully help reduce the number of index breakages.
Differential Revision: https://reviews.freebsd.org/D34015
- Capitalize the topic line: this way the example is consistent with the
desired style.
- Update the description of MFH.
- Point the Pull Request field to the ports repo on GitHub.
Reviewed by: mat, bapt
Differential Revision: https://reviews.freebsd.org/D29861