{"thread":{"id":"57814","subject":"Fix for failing tests on Solaris","startedAt":"2022-04-29T06:23:53Z","lastAt":"2022-04-29T16:48:57Z","messageCount":3,"participants":["Vladimir Marek","Carlo Marcelo Arenas Belón","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"454609","messageId":"20220429062337.bcpjizaujjmw65dt@virtual.cz.oracle.com","threadId":"57814","inReplyTo":null,"subject":"Fix for failing tests on Solaris","fromName":"Vladimir Marek","fromEmail":"vladimir.marek@oracle.com","sentAt":"2022-04-29T06:23:37Z","receivedAt":"2022-04-29T06:23:53Z","isPatch":false,"sender":{"key":"vladimir.marek@oracle.com","avatar":null},"body":"Hello,\n\nSorry if this is not the best way to report issues.\n\nSolaris ships git[1]. We run it's test suite and we were having multiple\nfailures[2]. I noticed that the tests do expect binaries to be found\nin [3]:\n\nSANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin\n\nThat paths contain posix conformant binaries, but the tests do expect\nLinux-like behaving binaries.\n\nThe patch I am about to apply to git\n\n--- git-2.35.1/config.mak.uname\n+++ git-2.35.1/config.mak.uname\n@@ -162,7 +162,7 @@ ifeq ($(uname_S),SunOS)\n        NEEDS_SOCKET = YesPlease\n        NEEDS_NSL = YesPlease\n        SHELL_PATH = /bin/bash\n-       SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin\n+       SANE_TOOL_PATH = /usr/gnu/bin\n        HAVE_ALLOCA_H = YesPlease\n        NO_STRCASESTR = YesPlease\n        NO_MEMMEM = YesPlease\n\nMakes all tests but t7812 pass successfully. t7812 fails on locales and\nutf-8 which do behave differently in Solaris.\n\nI would suggest to update the tests to use /usr/gnu/bin path.\n\n[1] https://github.com/oracle/solaris-userland/tree/master/components/git\n[2] https://github.com/oracle/solaris-userland/tree/master/components/git/test\n[3] https://github.com/git/git/blob/master/config.mak.uname#L176\n\nThank you\n-- \n\tVlad\n"},{"id":"454619","messageId":"20220429160913.wogvmyxosctdlosz@carlos-mbp.lan","threadId":"57814","inReplyTo":"20220429062337.bcpjizaujjmw65dt@virtual.cz.oracle.com","subject":"Re: Fix for failing tests on Solaris","fromName":"Carlo Marcelo Arenas Belón","fromEmail":"carenas@gmail.com","sentAt":"2022-04-29T16:09:13Z","receivedAt":"2022-04-29T16:09:18Z","isPatch":false,"sender":{"key":"carenas@gmail.com","avatar":"https://avatars.githubusercontent.com/u/76036?v=4"},"body":"On Fri, Apr 29, 2022 at 08:23:37AM +0200, Vladimir Marek wrote:\n> \n> That paths contain posix conformant binaries, but the tests do expect\n> Linux-like behaving binaries.\n\nExpecting Linux-like behaviour is indeed not what the tests should be\ndoing, so correcting that might ALSO help other people that don't have\nan alternative GNU implementation available IMHO\n\nSo detailing those failures and fixing them might be preferable (even if\nlikely more difficult)\n\n> --- git-2.35.1/config.mak.uname\n> +++ git-2.35.1/config.mak.uname\n> @@ -162,7 +162,7 @@ ifeq ($(uname_S),SunOS)\n>         NEEDS_SOCKET = YesPlease\n>         NEEDS_NSL = YesPlease\n>         SHELL_PATH = /bin/bash\n> -       SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin\n> +       SANE_TOOL_PATH = /usr/gnu/bin\n\nI haven't used Solaris for a while (since around OpenSolaris Indiana\ndevelopment stopped), but wouldn't this break in Solaris 10 and older?\n\n> Makes all tests but t7812 pass successfully. t7812 fails on locales and\n> utf-8 which do behave differently in Solaris.\n\nAnd additional fix for that (since you seem to have access to a fresh\nSolaris 11.4 installation at least), would be forthcomming.\n\nWondering also if there is a way to plug one of those from Oracle Cloud\nthrough a GitHub actions so we could prevent future issues by including\nSolaris in our CI runs.\n\nCarlo\n"},{"id":"454625","messageId":"xmqqr15fdedp.fsf@gitster.g","threadId":"57814","inReplyTo":"20220429160913.wogvmyxosctdlosz@carlos-mbp.lan","subject":"Re: Fix for failing tests on Solaris","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2022-04-29T16:48:50Z","receivedAt":"2022-04-29T16:48:57Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Carlo Marcelo Arenas Belón <carenas@gmail.com> writes:\n\n>> --- git-2.35.1/config.mak.uname\n>> +++ git-2.35.1/config.mak.uname\n>> @@ -162,7 +162,7 @@ ifeq ($(uname_S),SunOS)\n>>         NEEDS_SOCKET = YesPlease\n>>         NEEDS_NSL = YesPlease\n>>         SHELL_PATH = /bin/bash\n>> -       SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin\n>> +       SANE_TOOL_PATH = /usr/gnu/bin\n>\n> I haven't used Solaris for a while (since around OpenSolaris Indiana\n> development stopped), but wouldn't this break in Solaris 10 and older?\n>\n>> Makes all tests but t7812 pass successfully. t7812 fails on locales and\n>> utf-8 which do behave differently in Solaris.\n>\n> And additional fix for that (since you seem to have access to a fresh\n> Solaris 11.4 installation at least), would be forthcomming.\n>\n> Wondering also if there is a way to plug one of those from Oracle Cloud\n> through a GitHub actions so we could prevent future issues by including\n> Solaris in our CI runs.\n\nI do not think we want to take this patch until we know how exactly\nthe tests failing for Vladimir fail without GNUism, which we do not\nwant to rely on.  If a test by mistake used \"sed -i -e '<script>'\"\nGNUism which /usr/xpg[46]/bin/sed does not support, for example, we\nwant to know about it, so that we can move away from such a use of\nGNUism.\n\nThanks.\n"}]}