Re: [BUGS] Git v2.51.2 on NonStop
From: SZEDER Gábor <hidden>
Date: 2025-10-29 23:18:33
On Wed, Oct 29, 2025 at 06:41:27PM -0400, rsbecker@nexbridge.com wrote:
On October 29, 2025 6:28 PM, SZEDER Gábor wrote:quoted
On Tue, Oct 28, 2025 at 01:40:42PM -0400, rsbecker@nexbridge.com wrote:quoted
I have found new defects on 2.51.2 that were not present in 2.51.1 when buildingwith OpenSSL 3.5 (probably unrelated).quoted
Many failures in t7900 resulting from the use of test_subcommand ! as seenbelow. This is run in bash 5.0.18:quoted
+ test_subcommand git gc --quiet --no-detach --skip-foreground-tasks + 0< run-no-auto.txt {"event":"child_start","sid":"20251028T172435.690328Z-H36b1c598-P7b000 02d","thread":"main","time":"2025-10-28T17:24:35.879833Z","file":"/hom e/jenkinsbuild/.jenkins/workspace/Git_Pipeline/run-command.c","line":7 40,"child_id":2,"child_class":"?","use_shell":false,"argv":["git","gc" ,"--quiet","--no-detach","--skip-foreground-tasks"]} + test_subcommand ! git gc --auto --quiet --no-detach + --skip-foreground-tasks 0< run-auto.txt test_subcommand[5]: test: argument expectedThis is a strange trace output, as it includes file descriptor redirections, but lacks the trace of commands executed in test_subcommands. This trace doesn't look like it's coming from Bash.The test_subcommand[5]: test: argument expect is coming from bash. I cannot see how it is coming from anywhere else. The test was run with -x but snipped. Reference to test_subcommand ! git... fails exactly the same way. Is there something else I can provide?
The -x trace from Bash doesn't include file descriptor redirections,
but includes the commands executed in test_subcommand, and the number
of '+' characters at the beginning of each trace line indicates the
number of subshells, so when the test is really run by Bash the trace
from a test_subcommand invocation looks like this:
++ test_subcommand git gc --quiet --no-detach --skip-foreground-tasks
++ local negate=
++ test git = '!'
+++ printf '"%s",' git gc --quiet --no-detach --skip-foreground-tasks
++ local 'expr="git","gc","--quiet","--no-detach","--skip-foreground-tasks",'
++ expr='"git","gc","--quiet","--no-detach","--skip-foreground-tasks"'
++ test -n ''
++ grep '\["git","gc","--quiet","--no-detach","--skip-foreground-tasks"\]'
{"event":"child_start","sid":"20251029T230304.507599Z-H3fb05a16-P001a33ae","thread":"main","time":"2025-10-29T23:03:04.512913Z","file":"run-command.c","line":740,"child_id":2,"child_class":"?","use_shell":false,"argv":["git","gc","--quiet","--no-detach","--skip-foreground-tasks"]}
++ test_subcommand '!' git gc --auto --quiet --no-detach --skip-foreground-tasks
++ local negate=
Since the trace you showed doesn't look like this I still doubt that
it came from Bash.