Mercurial > hg
diff contrib/check-code.py @ 50725:7e5be4a7cda7 stable
tests: use grep -E instead of obsolescent egrep
Testing on Fedora 38 failed with:
egrep: warning: egrep is obsolescent; using grep -E
The warning comes from
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1
. For further anecdotal evidence of the change, see
https://www.phoronix.com/news/GNU-Grep-3.8-Stop-egrep-fgrep .
This reverses the code check that goes back to e7d3b509af8b. grep -E is POSIX,
but there is a risk that it doesn't work the same on all platforms - especially
older Unix versions. It should however always be possible to put a GNU grep in
$PATH before running the tests.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Mon, 26 Jun 2023 14:34:58 +0200 |
parents | 3a2b6158374a |
children | 65f949da8469 |
line wrap: on
line diff
--- a/contrib/check-code.py Mon Jun 26 11:15:30 2023 +0100 +++ b/contrib/check-code.py Mon Jun 26 14:34:58 2023 +0200 @@ -146,10 +146,7 @@ r'\[[^\]]+==', '[ foo == bar ] is a bashism, use [ foo = bar ] instead', ), - ( - r'(^|\|\s*)grep (-\w\s+)*[^|]*[(|]\w', - "use egrep for extended grep syntax", - ), + (r'(^|\|\s*)egrep', "use grep -E for extended grep syntax"), (r'(^|\|\s*)e?grep .*\\S', "don't use \\S in regular expression"), (r'(?<!!)/bin/', "don't use explicit paths for tools"), (r'#!.*/bash', "don't use bash in shebang, use sh"),