From 03494ed6ba31cf8603764bc3a9d4357ca0c8bdad Mon Sep 17 00:00:00 2001 From: thislooksfun Date: Fri, 29 Oct 2021 03:27:29 -0500 Subject: Meta: Add a check to ensure grep -P stays gone grep -P does not work on macOS, but grep -E does. --- Meta/lint-shell-scripts.sh | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'Meta/lint-shell-scripts.sh') diff --git a/Meta/lint-shell-scripts.sh b/Meta/lint-shell-scripts.sh index dfa00cec7e..37e1efcdb0 100755 --- a/Meta/lint-shell-scripts.sh +++ b/Meta/lint-shell-scripts.sh @@ -30,6 +30,15 @@ if (( ${#files[@]} )); then fi shellcheck "${files[@]}" + + for file in "${files[@]}"; do + if (< "$file" grep -qE "grep [^|);]*-[^- ]*P"); then + # '\x2D' is the unicode escape sequence for '-'. This is used so + # that this script does not flag itself for containing grep dash P. + echo -e "The script '$file' contains 'grep \x2DP', which is not supported on macOS. Please use grep -E instead." + exit 1 + fi + done else echo "No .sh files to check." fi -- cgit v1.2.3