threads / patch / 47452

patchp7519: improve check for prerequisite WATCHMAN

Subject: [PATCH] p7519: improve check for prerequisite WATCHMAN

## tl;dr

2 messages between Dec 16, 2017 and Dec 18, 2017. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

René Scharfe· Dec 16, 2017, 12:12 UTC · lore

The return code of command -v with a non-existing command is 1 in bash and 127 in dash. Use that return code directly to allow the script to work with dash and without watchman (e.g. on Debian).

While at it stop redirecting the output. stderr is redirected to /dev/null by test_lazy_prereq already, and stdout can actually be useful -- the path of the found watchman executable is sent there, but it's shown only if the script was run with --verbose.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
---
 t/perf/p7519-fsmonitor.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
Show changes to t/perf/p7519-fsmonitor.sh +1 −2
diff --git a/t/perf/p7519-fsmonitor.sh b/t/perf/p7519-fsmonitor.sh
index 16d1bf72e5..65e145c02d 100755
--- a/t/perf/p7519-fsmonitor.sh
+++ b/t/perf/p7519-fsmonitor.sh
@@ -40,8 +40,7 @@ test_lazy_prereq UNTRACKED_CACHE '
 '
 
 test_lazy_prereq WATCHMAN '
-	{ command -v watchman >/dev/null 2>&1; ret=$?; } &&
-	test $ret -ne 1
+	command -v watchman
 '
 
 if test_have_prereq WATCHMAN
-- 
2.15.1
Ben Peart· Dec 18, 2017, 16:05 UTC · re: René Scharfe · lore

RE: [PATCH] p7519: improve check for prerequisite WATCHMAN

Show 35 quoted lines
> -----Original Message-----
> From: René Scharfe [mailto:l.s.r@web.de]
> Sent: Saturday, December 16, 2017 7:12 AM
> To: Git List <git@vger.kernel.org>
> Cc: Junio C Hamano <gitster@pobox.com>; Ben Peart
> <Ben.Peart@microsoft.com>; Ævar Arnfjörð Bjarmason
> <avarab@gmail.com>
> Subject: [PATCH] p7519: improve check for prerequisite WATCHMAN
> 
> The return code of command -v with a non-existing command is 1 in bash
> and 127 in dash.  Use that return code directly to allow the script to work
> with dash and without watchman (e.g. on Debian).
> 
> While at it stop redirecting the output.  stderr is redirected to /dev/null by
> test_lazy_prereq already, and stdout can actually be useful -- the path of the
> found watchman executable is sent there, but it's shown only if the script
> was run with --verbose.
> 
> Signed-off-by: Rene Scharfe <l.s.r@web.de>
> ---
>  t/perf/p7519-fsmonitor.sh | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/t/perf/p7519-fsmonitor.sh b/t/perf/p7519-fsmonitor.sh index
> 16d1bf72e5..65e145c02d 100755
> --- a/t/perf/p7519-fsmonitor.sh
> +++ b/t/perf/p7519-fsmonitor.sh
> @@ -40,8 +40,7 @@ test_lazy_prereq UNTRACKED_CACHE '
>  '
> 
>  test_lazy_prereq WATCHMAN '
> -	{ command -v watchman >/dev/null 2>&1; ret=$?; } &&
> -	test $ret -ne 1
> +	command -v watchman
>  '
Looks good to me.  I tested this on Windows and it still works with and without watchman.  Thanks for the update to get this working on other platforms.
> 
>  if test_have_prereq WATCHMAN
> --
> 2.15.1

← back to recent threads