Hi All,
We have a few new breakages on the NonStop port in 2.21.0-rc0. The first is in t5403, as below:
/home/git/git/t/trash directory.t5403-post-checkout-hook/clone3/.git/hooks/post-checkout: line 2: $GIT_DIR/post-checkout.args: ambiguous redirect
not ok 8 - post-checkout hook is triggered by clone
#
# mkdir -p templates/hooks &&
# write_script templates/hooks/post-checkout <<-\EOF &&
# echo "$@" >$GIT_DIR/post-checkout.args
# EOF
# git clone --template=templates . clone3 &&
# test -f clone3/.git/post-checkout.args
#
The post-checkout hook is:
#!/usr/local/bin/bash
echo "$@" >$GIT_DIR/post-checkout.args
This looks like it is a "bash thing" and $GIT_DIR might have to be in quotes, and is not be specific to the platform. If I replace
echo "$@" >$GIT_DIR/post-checkout.args
with
echo "$@" >"$GIT_DIR/post-checkout.args"
The test passes. I wonder I should provide this patch or whether the author would like to do so.
Thanks,
Randall
Hi Randall,
On Fri, 8 Feb 2019, Randall S. Becker wrote:
> This looks like it is a "bash thing" and $GIT_DIR might have to be in
> quotes, and is not be specific to the platform. If I replace
>
> echo "$@" >$GIT_DIR/post-checkout.args
>
> with
>
> echo "$@" >"$GIT_DIR/post-checkout.args"
>
> The test passes. I wonder I should provide this patch or whether the
> author would like to do so.
It is the correct fix, you came up with it, why not simply provide a
patch yourself?
Thanks,
Dscho
On February 8, 2019 5:56, Johannes Schindelin wrote:
> To: Randall S. Becker <[email protected]>
> Cc: 'Junio C Hamano' <[email protected]>; [email protected]; 'Linux
> Kernel' <[email protected]>; [email protected]
> Subject: Re: [Breakage] Git v2.21.0-rc0 - t5403 (NonStop)
>
> Hi Randall,
>
> On Fri, 8 Feb 2019, Randall S. Becker wrote:
>
> > This looks like it is a "bash thing" and $GIT_DIR might have to be in
> > quotes, and is not be specific to the platform. If I replace
> >
> > echo "$@" >$GIT_DIR/post-checkout.args
> >
> > with
> >
> > echo "$@" >"$GIT_DIR/post-checkout.args"
> >
> > The test passes. I wonder I should provide this patch or whether the
> > author would like to do so.
>
> It is the correct fix, you came up with it, why not simply provide a patch
> yourself?
Will do (later today)
On Fri, Feb 08, 2019 at 05:48:27AM -0500, Randall S. Becker wrote:
> We have a few new breakages on the NonStop port in 2.21.0-rc0. The first is in t5403, as below:
>
> /home/git/git/t/trash directory.t5403-post-checkout-hook/clone3/.git/hooks/post-checkout: line 2: $GIT_DIR/post-checkout.args: ambiguous redirect
> not ok 8 - post-checkout hook is triggered by clone
> #
> # mkdir -p templates/hooks &&
> # write_script templates/hooks/post-checkout <<-\EOF &&
> # echo "$@" >$GIT_DIR/post-checkout.args
> # EOF
> # git clone --template=templates . clone3 &&
> # test -f clone3/.git/post-checkout.args
> #
>
> The post-checkout hook is:
> #!/usr/local/bin/bash
> echo "$@" >$GIT_DIR/post-checkout.args
>
> This looks like it is a "bash thing" and $GIT_DIR might have to be in quotes, and is not be specific to the platform. If I replace
>
> echo "$@" >$GIT_DIR/post-checkout.args
>
> with
>
> echo "$@" >"$GIT_DIR/post-checkout.args"
>
> The test passes.
Wow, this is the second time this "redirection to a filename with
spaces under Bash" issue pops up today, see the other one here:
https://public-inbox.org/git/[email protected]/T/#u
In short, Bash (when invoked as bash) doesn't conform to POSIX in this
respect; for a (too detailed) explanation see:
https://public-inbox.org/git/20180926121107.GH27036@localhost/
Even our CodingGuidelines suggest the use of quotes around the
redirection's target.
> I wonder I should provide this patch or whether the author would like to do so.
Well, since you didn't Cc the author, he might very well overlook this
issue, so I think you should ;)
On February 8, 2019 6:10, SZEDER Gábor
> On Fri, Feb 08, 2019 at 05:48:27AM -0500, Randall S. Becker wrote:
> > We have a few new breakages on the NonStop port in 2.21.0-rc0. The first
> is in t5403, as below:
> >
> > /home/git/git/t/trash
> > directory.t5403-post-checkout-hook/clone3/.git/hooks/post-checkout:
> > line 2: $GIT_DIR/post-checkout.args: ambiguous redirect not ok 8 - post-
> checkout hook is triggered by clone #
> > # mkdir -p templates/hooks &&
> > # write_script templates/hooks/post-checkout <<-\EOF &&
> > # echo "$@" >$GIT_DIR/post-checkout.args
> > # EOF
> > # git clone --template=templates . clone3 &&
> > # test -f clone3/.git/post-checkout.args
> > #
> >
> > The post-checkout hook is:
> > #!/usr/local/bin/bash
> > echo "$@" >$GIT_DIR/post-checkout.args
> >
> > This looks like it is a "bash thing" and $GIT_DIR might have to be in
> > quotes, and is not be specific to the platform. If I replace
> >
> > echo "$@" >$GIT_DIR/post-checkout.args
> >
> > with
> >
> > echo "$@" >"$GIT_DIR/post-checkout.args"
> >
> > The test passes.
>
> Wow, this is the second time this "redirection to a filename with spaces
> under Bash" issue pops up today, see the other one here:
>
> https://public-inbox.org/git/20190208031746.22683-2-
> [email protected]/T/#u
>
> In short, Bash (when invoked as bash) doesn't conform to POSIX in this
> respect; for a (too detailed) explanation see:
>
> https://public-inbox.org/git/20180926121107.GH27036@localhost/
>
> Even our CodingGuidelines suggest the use of quotes around the
> redirection's target.
>
> > I wonder I should provide this patch or whether the author would like to do
> so.
>
> Well, since you didn't Cc the author, he might very well overlook this issue,
> so I think you should ;)
+ Nguyen and Orgad
Thanks. Fix has been submitted as a patch. This is definitely a common one. ????
SZEDER G?bor wrote:
> On Fri, Feb 08, 2019 at 05:48:27AM -0500, Randall S. Becker wrote:
>> We have a few new breakages on the NonStop port in 2.21.0-rc0. The first is in t5403, as below:
[...]
>> The post-checkout hook is:
>> #!/usr/local/bin/bash
>> echo "$@" >$GIT_DIR/post-checkout.args
>>
>> This looks like it is a "bash thing" and $GIT_DIR might have to be in quotes, and is not be specific to the platform. If I replace
>>
>> echo "$@" >$GIT_DIR/post-checkout.args
>>
>> with
>>
>> echo "$@" >"$GIT_DIR/post-checkout.args"
>>
>> The test passes.
>
> Wow, this is the second time this "redirection to a filename with
> spaces under Bash" issue pops up today, see the other one here:
>
> https://public-inbox.org/git/[email protected]/T/#u
Indeed, I was surprised to see another one today.
It made me wonder how I had missed it in my own testing.
This one requires SHELL_PATH to be bash, while I only set
TEST_SHELL_PATH to bash for the improved -x tracing in the
fedora builds.
I ran the tests again with SHELL_PATH as bash on fedora and
this was the only failure I saw (other than the one from my
earlier message, that is).
--
Todd
On Fri, Feb 08, 2019 at 03:11:29PM -0500, Todd Zullinger wrote:
> It made me wonder how I had missed it in my own testing.
> This one requires SHELL_PATH to be bash, while I only set
> TEST_SHELL_PATH to bash for the improved -x tracing in the
> fedora builds.
Note that you don't need Bash to use '-x' tracing since a5bf824f3b (t:
prevent '-x' tracing from interfering with test helpers' stderr,
2018-02-25) and the followup commits, except for 't1510-repo-setup.sh'
(and even t1510 just falls back to ignore '-x' instead of causing
failures).