{"thread":{"id":"62725","subject":"meson-test syntax error","startedAt":"2025-01-02T12:17:34Z","lastAt":"2025-01-03T06:40:24Z","messageCount":10,"participants":["Andy Koppe","Jonathan Nieder","Junio C Hamano","Andreas Schwab","Patrick Steinhardt"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"509793","messageId":"CAHWeT-boK3x6mup11boEinNDQiAxxf0vwvZkxsGRc_GRvXYA8g@mail.gmail.com","threadId":"62725","inReplyTo":null,"subject":"meson-test syntax error","fromName":"Andy Koppe","fromEmail":"andy.koppe@gmail.com","sentAt":"2025-01-02T12:17:22Z","receivedAt":"2025-01-02T12:17:34Z","isPatch":false,"sender":{"key":"andy.koppe@gmail.com","avatar":"https://avatars.githubusercontent.com/u/223411?v=4"},"body":"The new meson-test rule in t/Makefile causes a syntax error when the\ndefault shell does not support non-standard process substitution:\n\n  make[1]: Entering directory '/src/git/t'\n  rm -f -r 'test-results'\n  /bin/sh: 10: Syntax error: \"(\" unexpected\n  make[1]: *** [Makefile:119: check-meson] Error 2\n\nDue to this line:\n\n  diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n\nThis can of course be worked around with 'make test SHELL=/bin/bash',\nbut is that expected?\n\nKind regards,\nAndy\n"},{"id":"509796","messageId":"Z3ah2YQSx4ZreBpK@google.com","threadId":"62725","inReplyTo":"CAHWeT-boK3x6mup11boEinNDQiAxxf0vwvZkxsGRc_GRvXYA8g@mail.gmail.com","subject":"Re: meson-test syntax error","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2025-01-02T14:25:29Z","receivedAt":"2025-01-02T14:25:32Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi,\n\nAndy Koppe wrote:\n\n> The new meson-test rule in t/Makefile causes a syntax error when the\n> default shell does not support non-standard process substitution:\n>\n>   make[1]: Entering directory '/src/git/t'\n>   rm -f -r 'test-results'\n>   /bin/sh: 10: Syntax error: \"(\" unexpected\n>   make[1]: *** [Makefile:119: check-meson] Error 2\n>\n> Due to this line:\n>\n>   diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n>\n> This can of course be worked around with 'make test SHELL=/bin/bash',\n> but is that expected?\n\nI ran into the same today.  Let's discuss in the review thread\n(https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).\n\nThanks,\nJonathan\n"},{"id":"509797","messageId":"xmqq5xmxwabj.fsf@gitster.g","threadId":"62725","inReplyTo":"Z3ah2YQSx4ZreBpK@google.com","subject":"Re: meson-test syntax error","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-01-02T14:37:52Z","receivedAt":"2025-01-02T14:37:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Nieder <jrnieder@gmail.com> writes:\n\n> Hi,\n>\n> Andy Koppe wrote:\n>\n>> The new meson-test rule in t/Makefile causes a syntax error when the\n>> default shell does not support non-standard process substitution:\n>>\n>>   make[1]: Entering directory '/src/git/t'\n>>   rm -f -r 'test-results'\n>>   /bin/sh: 10: Syntax error: \"(\" unexpected\n>>   make[1]: *** [Makefile:119: check-meson] Error 2\n>>\n>> Due to this line:\n>>\n>>   diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n>>\n>> This can of course be worked around with 'make test SHELL=/bin/bash',\n>> but is that expected?\n>\n> I ran into the same today.  Let's discuss in the review thread\n> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).\n\nProbably this one?\n\n<20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>\n"},{"id":"509801","messageId":"Z3avRmaMr70FOs8A@google.com","threadId":"62725","inReplyTo":"xmqq5xmxwabj.fsf@gitster.g","subject":"Re: meson-test syntax error","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2025-01-02T15:22:46Z","receivedAt":"2025-01-02T15:22:54Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Junio C Hamano wrote:\n> Jonathan Nieder <jrnieder@gmail.com> writes:\n>> Andy Koppe wrote:\n\n>>>   make[1]: Entering directory '/src/git/t'\n>>>   rm -f -r 'test-results'\n>>>   /bin/sh: 10: Syntax error: \"(\" unexpected\n>>>   make[1]: *** [Makefile:119: check-meson] Error 2\n>>>\n>>> Due to this line:\n>>>\n>>>   diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n[...]\n>> I ran into the same today.  Let's discuss in the review thread\n>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).\n>\n> Probably this one?\n>\n> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>\n\nAh, yes, that's the one I mean.  Sorry for the noise.\n\nJonathan\n"},{"id":"509804","messageId":"xmqqr05lusvp.fsf@gitster.g","threadId":"62725","inReplyTo":"Z3avRmaMr70FOs8A@google.com","subject":"Re: meson-test syntax error","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-01-02T15:39:54Z","receivedAt":"2025-01-02T15:39:57Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Nieder <jrnieder@gmail.com> writes:\n\n> Junio C Hamano wrote:\n>> Jonathan Nieder <jrnieder@gmail.com> writes:\n>>> Andy Koppe wrote:\n>\n>>>>   make[1]: Entering directory '/src/git/t'\n>>>>   rm -f -r 'test-results'\n>>>>   /bin/sh: 10: Syntax error: \"(\" unexpected\n>>>>   make[1]: *** [Makefile:119: check-meson] Error 2\n>>>>\n>>>> Due to this line:\n>>>>\n>>>>   diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n> [...]\n>>> I ran into the same today.  Let's discuss in the review thread\n>>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).\n>>\n>> Probably this one?\n>>\n>> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>\n>\n> Ah, yes, that's the one I mean.  Sorry for the noise.\n\nSorry for being extra sloppy on this one.  A patch like that with\nblatant bash-ism shouldn't have slipped the review process.\n\nOne thing I had trouble with is that, with /bin/sh linked to\n/bin/bash, none of these\n\n    $ SHELL=/bin/dash make test\n    $ cd t && SHELL=/bin/dash make test\n    $ cd t && SHELL=/bin/dash make check-meson\n\nseem to fail for me.\n"},{"id":"509805","messageId":"xmqqmsg9ussz.fsf@gitster.g","threadId":"62725","inReplyTo":"xmqqr05lusvp.fsf@gitster.g","subject":"Re: meson-test syntax error","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-01-02T15:41:32Z","receivedAt":"2025-01-02T15:41:34Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> One thing I had trouble with is that, with /bin/sh linked to\n> /bin/bash, none of these\n>\n>     $ SHELL=/bin/dash make test\n>     $ cd t && SHELL=/bin/dash make test\n>     $ cd t && SHELL=/bin/dash make check-meson\n>\n> seem to fail for me.\n\nAh, I had to do this:\n\n      $ cd t && make SHELL=/bin/dash check-meson\n\nto make it fail.  Sorry for the noise.\n"},{"id":"509808","messageId":"xmqqed1luqqq.fsf@gitster.g","threadId":"62725","inReplyTo":"xmqqmsg9ussz.fsf@gitster.g","subject":"Re: meson-test syntax error","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-01-02T16:26:05Z","receivedAt":"2025-01-02T16:26:08Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> Ah, I had to do this:\n>\n>       $ cd t && make SHELL=/bin/dash check-meson\n>\n> to make it fail.  Sorry for the noise.\n\nAnd\n\n\t$ make SHELL=/bin/dash test\n\ndoes not seem to pass SHELL=/bin/dash down when it does this part of\nthe Makefile\n\n        test: all\n                $(MAKE) -C t/ all\n\nat the top level.  Oh well.\n"},{"id":"509809","messageId":"87a5c9uo3n.fsf@igel.home","threadId":"62725","inReplyTo":"xmqqed1luqqq.fsf@gitster.g","subject":"Re: meson-test syntax error","fromName":"Andreas Schwab","fromEmail":"schwab@linux-m68k.org","sentAt":"2025-01-02T17:23:08Z","receivedAt":"2025-01-02T17:23:17Z","isPatch":false,"sender":{"key":"schwab@linux-m68k.org","avatar":"https://avatars.githubusercontent.com/u/2175493?v=4"},"body":"On Jan 02 2025, Junio C Hamano wrote:\n\n> And\n>\n> \t$ make SHELL=/bin/dash test\n>\n> does not seem to pass SHELL=/bin/dash down when it does this part of\n> the Makefile\n>\n>         test: all\n>                 $(MAKE) -C t/ all\n>\n> at the top level.  Oh well.\n\nCommand line options (which include macro definitions) are passed\nimplicitly to sub makes via the MAKEFLAGS env var.\n\n-- \nAndreas Schwab, schwab@linux-m68k.org\nGPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1\n\"And now for something completely different.\"\n"},{"id":"509810","messageId":"xmqqa5c9unwu.fsf@gitster.g","threadId":"62725","inReplyTo":"87a5c9uo3n.fsf@igel.home","subject":"Re: meson-test syntax error","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-01-02T17:27:13Z","receivedAt":"2025-01-02T17:27:16Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Andreas Schwab <schwab@linux-m68k.org> writes:\n\n> On Jan 02 2025, Junio C Hamano wrote:\n>\n>> And\n>>\n>> \t$ make SHELL=/bin/dash test\n>>\n>> does not seem to pass SHELL=/bin/dash down when it does this part of\n>> the Makefile\n>>\n>>         test: all\n>>                 $(MAKE) -C t/ all\n>>\n>> at the top level.  Oh well.\n>\n> Command line options (which include macro definitions) are passed\n> implicitly to sub makes via the MAKEFLAGS env var.\n\nYes, that is what I thought.  My complaint was that it didn't seem\nto be happening, and it did not cause the bash-ism in check-meson\ntarget to barf.\n\nThanks.\n"},{"id":"509820","messageId":"Z3eGS68PkwDtBl1V@pks.im","threadId":"62725","inReplyTo":"xmqqr05lusvp.fsf@gitster.g","subject":"Re: meson-test syntax error","fromName":"Patrick Steinhardt","fromEmail":"ps@pks.im","sentAt":"2025-01-03T06:40:17Z","receivedAt":"2025-01-03T06:40:24Z","isPatch":false,"sender":{"key":"ps@pks.im","avatar":"https://avatars.githubusercontent.com/u/4056630?v=4"},"body":"On Thu, Jan 02, 2025 at 07:39:54AM -0800, Junio C Hamano wrote:\n> Jonathan Nieder <jrnieder@gmail.com> writes:\n> \n> > Junio C Hamano wrote:\n> >> Jonathan Nieder <jrnieder@gmail.com> writes:\n> >>> Andy Koppe wrote:\n> >\n> >>>>   make[1]: Entering directory '/src/git/t'\n> >>>>   rm -f -r 'test-results'\n> >>>>   /bin/sh: 10: Syntax error: \"(\" unexpected\n> >>>>   make[1]: *** [Makefile:119: check-meson] Error 2\n> >>>>\n> >>>> Due to this line:\n> >>>>\n> >>>>   diff -u <(echo \"$$meson_tests\") <(echo \"$$actual_tests\");\n> > [...]\n> >>> I ran into the same today.  Let's discuss in the review thread\n> >>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).\n> >>\n> >> Probably this one?\n> >>\n> >> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>\n> >\n> > Ah, yes, that's the one I mean.  Sorry for the noise.\n> \n> Sorry for being extra sloppy on this one.  A patch like that with\n> blatant bash-ism shouldn't have slipped the review process.\n> \n> One thing I had trouble with is that, with /bin/sh linked to\n> /bin/bash, none of these\n> \n>     $ SHELL=/bin/dash make test\n>     $ cd t && SHELL=/bin/dash make test\n>     $ cd t && SHELL=/bin/dash make check-meson\n> \n> seem to fail for me.\n\nSorry, as well. Thanks for the report and investigations!\n\nPatrick\n"}]}