Subject: 30.0.50; project-find-regexp fails on Alpine

From: john muhl <[email-masked]>
Date: Wed, 31 Jan 2024 21:38:22 -0600

The grep on Alpine does not support the --null option.

  $ grep --null test *
  grep: unrecognized option: null
  BusyBox v1.36.1 (2024-01-16 17:10:30 UTC) multi-call binary.

To reproduce:

  emacs -Q
  M-: (project-find-regexp "test")

Debugger entered--Lisp error: (user-error "Search failed with status 123: grep: unrecognized option: null")
  signal(user-error ("Search failed with status 123: grep: unrecognized option: null"))
  user-error("Search failed with status %d: %s" 123 "grep: unrecognized option: null")
  xref-matches-in-files("test" ("/home/build/emacs/.clang-format" ...))
  project--find-regexp-in-files("test" ("/home/build/emacs/.clang-format" ...))
  apply(project--find-regexp-in-files ("test" ("/home/build/emacs/.clang-format" ...))
  #f(compiled-function (&rest args2) #<bytecode -0x47b2fa0835514c4>)()
  xref--show-xref-buffer(#f(compiled-function (&rest args2) #<bytecode -0x47b2fa0835514c4>) ((window . #<window 1 on *scratch*>) (display-action) (auto-jump)))
  xref--show-xrefs(#f(compiled-function (&rest args2) #<bytecode -0x47b2fa0835514c4>) nil)
  xref-show-xrefs(#f(compiled-function (&rest args2) #<bytecode -0x47b2fa0835514c4>) nil)
  project-find-regexp("test")
  eval((project-find-regexp "test") t)
  #f(compiled-function () #<bytecode -0xca5776b8f06f719>)()
  #f(compiled-function () #<bytecode -0xb488c244da63e0f>)()
  handler-bind-1(#f(compiled-function () #<bytecode -0xb488c244da63e0f>) (error) eval-expression--debug)
  eval-expression((project-find-regexp "test") nil nil 127)
  funcall-interactively(eval-expression (project-find-regexp "test") nil nil 127)
  call-interactively(eval-expression nil nil)
  command-execute(eval-expression)

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-musl) of 2024-02-01 built
 on build
Repository revision: cd2c45a3890601e1bc498c81e64791fead6efc86
Repository branch: master
System Description: Alpine Linux edge

Configured using:
 'configure --without-all --without-x'

Configured features:
GMP PDUMPER

Important settings:
  value of $LC_COLLATE: C
  value of $LANG: C.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny dired
dnd dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg
rfc6068 epg-config gnus-util time-date subr-x mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail
rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils help-fns
radix-tree cl-print debug backtrace help-mode find-func files-x vc-git
diff-mode easy-mmode vc-dispatcher cl-seq grep compile
text-property-search comint regexp-opt ansi-osc ansi-color tool-bar xref
ring project cl-loaddefs cl-lib term/tmux term/xterm xterm byte-opt gv
bytecomp byte-compile rmc iso-transl tooltip cconv eldoc paren electric
uniquify ediff-hook vc-hooks lisp-float-type elisp-mode tabulated-list
replace newcomment text-mode lisp-mode prog-mode register page tab-bar
menu-bar rfn-eshadow isearch easymenu timer select mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote multi-tty
make-network-process emacs)

Memory information:
((conses 16 85101 9311) (symbols 48 7887 0) (strings 32 28128 1973)
 (string-bytes 1 941684) (vectors 16 11619)
 (vector-slots 8 103879 5456) (floats 8 34 13825)
 (intervals 56 1202 24) (buffers 976 14))