git-sh-setup: remove "sane_grep", it's not needed anymore

Remove the sane_grep() shell function in git-sh-setup. The two reasons for why it existed don't apply anymore: 1. It was added due to GNU grep supporting GREP_OPTIONS. See e1622bfcbad (Protect scripted Porcelains from GREP_OPTIONS insanity, 2009-11-23). Newer versions of GNU grep ignore that, but even on older versions its existence won't matter, none of these sane_grep() uses care about grep's output, they're merely using it to check if a string exists in a file or stream. We also don't care about the "LC_ALL=C" that "sane_grep" was using, these greps for fixed or ASCII strings will behave the same under any locale. 2. The SANE_TEXT_GREP added in 71b401032b9 (sane_grep: pass "-a" if grep accepts it, 2016-03-08) isn't needed either, none of these grep uses deal with binary data. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed Oct 21, 2021 at 21:58 UTC ebeb39faad6e3a67c31884c3dc6b76ce58b3f15b
7 files changed +4 -22
Makefile
+1 -5
@@ -305,9 +305,6 @@ all::
305 #
306 # Define NO_TCLTK if you do not want Tcl/Tk GUI.
307 #
308 -# Define SANE_TEXT_GREP to "-a" if you use recent versions of GNU grep
309 -# and egrep that are pickier when their input contains non-ASCII data.
310 -#
308 # The TCL_PATH variable governs the location of the Tcl interpreter
309 # used to optimize git-gui for your system. Only used if NO_TCLTK
310 # is not set. Defaults to the bare 'tclsh'.
@@ -2254,7 +2251,7 @@ hook-list.h: generate-hooklist.sh Documentation/githooks.txt
2251
2252 SCRIPT_DEFINES = $(SHELL_PATH_SQ):$(DIFF_SQ):\
2253 $(localedir_SQ):$(USE_GETTEXT_SCHEME):$(SANE_TOOL_PATH_SQ):\
2257 - $(gitwebdir_SQ):$(PERL_PATH_SQ):$(SANE_TEXT_GREP):$(PAGER_ENV):\
2254 + $(gitwebdir_SQ):$(PERL_PATH_SQ):$(PAGER_ENV):\
2255 $(perllibdir_SQ)
2256 GIT-SCRIPT-DEFINES: FORCE
2257 @FLAGS='$(SCRIPT_DEFINES)'; \
@@ -2272,7 +2269,6 @@ sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
2269 -e $(BROKEN_PATH_FIX) \
2270 -e 's|@@GITWEBDIR@@|$(gitwebdir_SQ)|g' \
2271 -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
2275 - -e 's|@@SANE_TEXT_GREP@@|$(SANE_TEXT_GREP)|g' \
2272 -e 's|@@PAGER_ENV@@|$(PAGER_ENV_SQ)|g' \
2273 $@.sh >$@+
2274 endef
config.mak.uname
-1
@@ -58,7 +58,6 @@ ifeq ($(uname_S),Linux)
58 # -lrt is needed for clock_gettime on glibc <= 2.16
59 NEEDS_LIBRT = YesPlease
60 HAVE_GETDELIM = YesPlease
61 - SANE_TEXT_GREP=-a
61 FREAD_READS_DIRECTORIES = UnfortunatelyYes
62 BASIC_CFLAGS += -DHAVE_SYSINFO
63 PROCFS_EXECUTABLE_PATH = /proc/self/exe
configure.ac
-8
@@ -507,14 +507,6 @@ if test -n "$ASCIIDOC"; then
507 esac
508 fi
509
510 -if grep -a ascii configure.ac >/dev/null; then
511 - AC_MSG_RESULT([Using 'grep -a' for sane_grep])
512 - SANE_TEXT_GREP=-a
513 -else
514 - SANE_TEXT_GREP=
515 -fi
516 -GIT_CONF_SUBST([SANE_TEXT_GREP])
517 -
510 ## Checks for libraries.
511 AC_MSG_NOTICE([CHECKS for libraries])
512 #
contrib/buildsystems/CMakeLists.txt
-1
@@ -781,7 +781,6 @@ foreach(script ${git_shell_scripts})
781 string(REPLACE "@@USE_GETTEXT_SCHEME@@" "" content "${content}")
782 string(REPLACE "# @@BROKEN_PATH_FIX@@" "" content "${content}")
783 string(REPLACE "@@PERL@@" "${PERL_PATH}" content "${content}")
784 - string(REPLACE "@@SANE_TEXT_GREP@@" "-a" content "${content}")
784 string(REPLACE "@@PAGER_ENV@@" "LESS=FRX LV=-c" content "${content}")
785 file(WRITE ${CMAKE_BINARY_DIR}/${script} ${content})
786 endforeach()
git-filter-branch.sh
+1 -1
@@ -579,7 +579,7 @@ if [ "$filter_tag_name" ]; then
579 git hash-object -t tag -w --stdin) ||
580 die "Could not create new tag object for $ref"
581 if git cat-file tag "$ref" | \
582 - sane_grep '^-----BEGIN PGP SIGNATURE-----' >/dev/null 2>&1
582 + grep '^-----BEGIN PGP SIGNATURE-----' >/dev/null 2>&1
583 then
584 warn "gpg signature stripped from tag object $sha1t"
585 fi
git-instaweb.sh
+2 -2
@@ -49,7 +49,7 @@ resolve_full_httpd () {
49 *apache2*|*lighttpd*|*httpd*)
50 # yes, *httpd* covers *lighttpd* above, but it is there for clarity
51 # ensure that the apache2/lighttpd command ends with "-f"
52 - if ! echo "$httpd" | sane_grep -- '-f *$' >/dev/null 2>&1
52 + if ! echo "$httpd" | grep -- '-f *$' >/dev/null 2>&1
53 then
54 httpd="$httpd -f"
55 fi
@@ -399,7 +399,7 @@ EOF
399 # plain-old CGI
400 resolve_full_httpd
401 list_mods=$(echo "$full_httpd" | sed 's/-f$/-l/')
402 - $list_mods | sane_grep 'mod_cgi\.c' >/dev/null 2>&1 || \
402 + $list_mods | grep 'mod_cgi\.c' >/dev/null 2>&1 || \
403 if test -f "$module_path/mod_cgi.so"
404 then
405 echo "LoadModule cgi_module $module_path/mod_cgi.so" >> "$conf"
git-sh-setup.sh
-4
@@ -173,10 +173,6 @@ git_pager() {
173 eval "$GIT_PAGER" '"$@"'
174 }
175
176 -sane_grep () {
177 - GREP_OPTIONS= LC_ALL=C grep @@SANE_TEXT_GREP@@ "$@"
178 -}
179 -
176 is_bare_repository () {
177 git rev-parse --is-bare-repository
178 }