{"thread":{"id":"2793","subject":"Latest cogito broken with bash-3.1","startedAt":"2005-12-10T13:18:44Z","lastAt":"2005-12-12T15:32:08Z","messageCount":10,"participants":["Marcel Holtmann","Petr Baudis","Martin Langhoff","Linus Torvalds"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"13434","messageId":"1134220724.15125.4.camel@blade","threadId":"2793","inReplyTo":null,"subject":"Latest cogito broken with bash-3.1","fromName":"Marcel Holtmann","fromEmail":"marcel@holtmann.org","sentAt":"2005-12-10T13:18:44Z","receivedAt":"2005-12-10T13:18:44Z","isPatch":false,"sender":{"key":"marcel@holtmann.org","avatar":null},"body":"Hi Petr,\n\nI have a Ubuntu Dapper running and since their update to the latest bash\nversion the cg-commit command (and maybe others) is broken. It reports:\n\nGNU bash, version 3.1.0(1)-release (x86_64-pc-linux-gnu)\nCopyright (C) 2005 Free Software Foundation, Inc.\n\nThe cogito is the latest from kernel.org and when calling cg-commit it\nfails with this message:\n\ncg-commit: line 200: syntax error near unexpected token `('\ncg-commit: line 200: `       eval commitfiles=($(cat $filter | path_xargs git-diff-index -r -m HEAD -- | \\'\n\nI played a little bit with it and it seems all the eval statements are\nbroken with this bash version. I have no clue how to fix this, but maybe\nyou do.\n\nRegards\n\nMarcel\n"},{"id":"13466","messageId":"20051211001106.GV22159@pasky.or.cz","threadId":"2793","inReplyTo":"1134220724.15125.4.camel@blade","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-12-11T00:11:06Z","receivedAt":"2005-12-11T00:11:06Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"  Hello,\n\nDear diary, on Sat, Dec 10, 2005 at 02:18:44PM CET, I got a letter\nwhere Marcel Holtmann <marcel@holtmann.org> said that...\n> The cogito is the latest from kernel.org and when calling cg-commit it\n> fails with this message:\n> \n> cg-commit: line 200: syntax error near unexpected token `('\n> cg-commit: line 200: `       eval commitfiles=($(cat $filter | path_xargs git-diff-index -r -m HEAD -- | \\'\n> \n> I played a little bit with it and it seems all the eval statements are\n> broken with this bash version. I have no clue how to fix this, but maybe\n> you do.\n\n  it seems like the newer bash is stricter than the older versions in\nsome obscure regards. Quoting the eval arguments (which is the proper\nthing to do anyway) fixed that particular problem; I've hit another\nproblem during a test commit wrt. whitespace separators - I've fixed\nthat too, and pushed out.\n\n  Thanks,\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nVI has two modes: the one in which it beeps and the one in which\nit doesn't.\n"},{"id":"13480","messageId":"1134289867.9541.9.camel@blade","threadId":"2793","inReplyTo":"20051211001106.GV22159@pasky.or.cz","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Marcel Holtmann","fromEmail":"marcel@holtmann.org","sentAt":"2005-12-11T08:31:07Z","receivedAt":"2005-12-11T08:31:07Z","isPatch":false,"sender":{"key":"marcel@holtmann.org","avatar":null},"body":"Hi Petr,\n\n> > The cogito is the latest from kernel.org and when calling cg-commit it\n> > fails with this message:\n> > \n> > cg-commit: line 200: syntax error near unexpected token `('\n> > cg-commit: line 200: `       eval commitfiles=($(cat $filter | path_xargs git-diff-index -r -m HEAD -- | \\'\n> > \n> > I played a little bit with it and it seems all the eval statements are\n> > broken with this bash version. I have no clue how to fix this, but maybe\n> > you do.\n> \n>   it seems like the newer bash is stricter than the older versions in\n> some obscure regards. Quoting the eval arguments (which is the proper\n> thing to do anyway) fixed that particular problem; I've hit another\n> problem during a test commit wrt. whitespace separators - I've fixed\n> that too, and pushed out.\n\nit's now working again. Thanks. What do you think about another release?\nI haven't checked the other distributions yet, but I just saw that\nDebian unstable also moved to version 3.1 of bash.\n\nThere exists also another problem with the new bash. It is the broken\npipe error from cg-log.\n\ncg-log: line 141: echo: write error: Broken pipe\n\nThe line number varies depending how much you scrolled and when you\nscrolled to the end no broken pipe error comes up. Do you have any idea\non how to deal with this. I saw your comment about that bash is broken\nand the extra trap command, but it doesn't help. I never saw that\nproblem with older versions of bash.\n\nRegards\n\nMarcel\n"},{"id":"13498","messageId":"20051212002631.GW22159@pasky.or.cz","threadId":"2793","inReplyTo":"1134289867.9541.9.camel@blade","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-12-12T00:26:31Z","receivedAt":"2005-12-12T00:26:31Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"  Hello,\n\nDear diary, on Sun, Dec 11, 2005 at 09:31:07AM CET, I got a letter\nwhere Marcel Holtmann <marcel@holtmann.org> said that...\n> it's now working again. Thanks. What do you think about another release?\n> I haven't checked the other distributions yet, but I just saw that\n> Debian unstable also moved to version 3.1 of bash.\n\n  yes, I was planning 0.16.1 on Sunday anyway. Going to tag it now.\n\n> There exists also another problem with the new bash. It is the broken\n> pipe error from cg-log.\n> \n> cg-log: line 141: echo: write error: Broken pipe\n> \n> The line number varies depending how much you scrolled and when you\n> scrolled to the end no broken pipe error comes up. Do you have any idea\n> on how to deal with this. I saw your comment about that bash is broken\n> and the extra trap command, but it doesn't help. I never saw that\n> problem with older versions of bash.\n\n  Then that's quite funny, one-line broken pipe message has been always\nthere (in the past it looked much worse, we thankfully managed to bring\nit down to this at least).\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nVI has two modes: the one in which it beeps and the one in which\nit doesn't.\n"},{"id":"13499","messageId":"46a038f90512111658x5fe3198ey38515fc2745dd42b@mail.gmail.com","threadId":"2793","inReplyTo":"20051212002631.GW22159@pasky.or.cz","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Martin Langhoff","fromEmail":"martin.langhoff@gmail.com","sentAt":"2005-12-12T00:58:00Z","receivedAt":"2005-12-12T00:58:00Z","isPatch":false,"sender":{"key":"martin.langhoff@gmail.com","avatar":"https://gravatar.com/avatar/1e3f311b6c4c15836501901ca58f8c0b0667246488084ba524d8bc9867e22fd9?d=mp&s=160"},"body":"On 12/12/05, Petr Baudis <pasky@suse.cz> wrote:\n>   Then that's quite funny, one-line broken pipe message has been always\n> there (in the past it looked much worse, we thankfully managed to bring\n> it down to this at least).\n\nI assume there's no reasonable workaround to that then? What would\ntake to get rid of that (say, if I had a boring weekend ;)?\n\ncheers,\n\n\nm\n"},{"id":"13500","messageId":"20051212005944.GX22159@pasky.or.cz","threadId":"2793","inReplyTo":"46a038f90512111658x5fe3198ey38515fc2745dd42b@mail.gmail.com","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-12-12T00:59:44Z","receivedAt":"2005-12-12T00:59:44Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"Dear diary, on Mon, Dec 12, 2005 at 01:58:00AM CET, I got a letter\nwhere Martin Langhoff <martin.langhoff@gmail.com> said that...\n> On 12/12/05, Petr Baudis <pasky@suse.cz> wrote:\n> >   Then that's quite funny, one-line broken pipe message has been always\n> > there (in the past it looked much worse, we thankfully managed to bring\n> > it down to this at least).\n> \n> I assume there's no reasonable workaround to that then?\n\nThe trapping is apparently the best we can do - at least I know of\nnothing better.\n\n> What would take to get rid of that (say, if I had a boring weekend ;)?\n\nFixing bash, IIRC - and more importantly, convincing its maintainers to\ntake the patch. ;-) Sometime in the spring someone even posted the exact\nlocation in bash where this is broken.\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nVI has two modes: the one in which it beeps and the one in which\nit doesn't.\n"},{"id":"13505","messageId":"1134379801.1468.5.camel@blade","threadId":"2793","inReplyTo":"20051212002631.GW22159@pasky.or.cz","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Marcel Holtmann","fromEmail":"marcel@holtmann.org","sentAt":"2005-12-12T09:30:01Z","receivedAt":"2005-12-12T09:30:01Z","isPatch":false,"sender":{"key":"marcel@holtmann.org","avatar":null},"body":"Hi Petr,\n\n> > There exists also another problem with the new bash. It is the broken\n> > pipe error from cg-log.\n> > \n> > cg-log: line 141: echo: write error: Broken pipe\n> > \n> > The line number varies depending how much you scrolled and when you\n> > scrolled to the end no broken pipe error comes up. Do you have any idea\n> > on how to deal with this. I saw your comment about that bash is broken\n> > and the extra trap command, but it doesn't help. I never saw that\n> > problem with older versions of bash.\n> \n>   Then that's quite funny, one-line broken pipe message has been always\n> there (in the past it looked much worse, we thankfully managed to bring\n> it down to this at least).\n\nI have some machines where I stopped installing the latest bash version\nand they don't have this problem. With bash-2.05b.0 and bash-3.00.16 I\nnever (and really mean never) saw this problem.\n\nIt is not related to this, but the make-3.81beta3 breaks all my Debian\npackage rules and I don't have the slightest idea why. It seems that\nthey try to fix some Posix issues and make it worse then any better :(\n\nRegards\n\nMarcel\n"},{"id":"13506","messageId":"20051212104039.GJ10680@pasky.or.cz","threadId":"2793","inReplyTo":"1134379801.1468.5.camel@blade","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-12-12T10:40:39Z","receivedAt":"2005-12-12T10:40:39Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"  Hi,\n\nDear diary, on Mon, Dec 12, 2005 at 10:30:01AM CET, I got a letter\nwhere Marcel Holtmann <marcel@holtmann.org> said that...\n> > > There exists also another problem with the new bash. It is the broken\n> > > pipe error from cg-log.\n> > > \n> > > cg-log: line 141: echo: write error: Broken pipe\n> > > \n> > > The line number varies depending how much you scrolled and when you\n> > > scrolled to the end no broken pipe error comes up. Do you have any idea\n> > > on how to deal with this. I saw your comment about that bash is broken\n> > > and the extra trap command, but it doesn't help. I never saw that\n> > > problem with older versions of bash.\n> > \n> >   Then that's quite funny, one-line broken pipe message has been always\n> > there (in the past it looked much worse, we thankfully managed to bring\n> > it down to this at least).\n> \n> I have some machines where I stopped installing the latest bash version\n> and they don't have this problem. With bash-2.05b.0 and bash-3.00.16 I\n> never (and really mean never) saw this problem.\n\n  this might be some Debian patches then. Indeed, with bash-3.00.16 on\nboth systems, the line is shown on my home Gentoo system but not on my\nDebian machine at work. On RHEL at kernel.org the line is not printed\neither. Hmm. So either it's not really bash what emits this (but what\nthen?) or most of the distributions override that stupid bash behaviour\nwith a patch already. And Debian didn't foreport the patch to bash-3.1.\nWell, this would make the weekend research more interesting, at least.\n;-)\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nVI has two modes: the one in which it beeps and the one in which\nit doesn't.\n"},{"id":"13507","messageId":"1134385342.1468.27.camel@blade","threadId":"2793","inReplyTo":"20051212104039.GJ10680@pasky.or.cz","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Marcel Holtmann","fromEmail":"marcel@holtmann.org","sentAt":"2005-12-12T11:02:22Z","receivedAt":"2005-12-12T11:02:22Z","isPatch":false,"sender":{"key":"marcel@holtmann.org","avatar":null},"body":"Hi Petr,\n\n> > > > There exists also another problem with the new bash. It is the broken\n> > > > pipe error from cg-log.\n> > > > \n> > > > cg-log: line 141: echo: write error: Broken pipe\n> > > > \n> > > > The line number varies depending how much you scrolled and when you\n> > > > scrolled to the end no broken pipe error comes up. Do you have any idea\n> > > > on how to deal with this. I saw your comment about that bash is broken\n> > > > and the extra trap command, but it doesn't help. I never saw that\n> > > > problem with older versions of bash.\n> > > \n> > >   Then that's quite funny, one-line broken pipe message has been always\n> > > there (in the past it looked much worse, we thankfully managed to bring\n> > > it down to this at least).\n> > \n> > I have some machines where I stopped installing the latest bash version\n> > and they don't have this problem. With bash-2.05b.0 and bash-3.00.16 I\n> > never (and really mean never) saw this problem.\n> \n>   this might be some Debian patches then. Indeed, with bash-3.00.16 on\n> both systems, the line is shown on my home Gentoo system but not on my\n> Debian machine at work. On RHEL at kernel.org the line is not printed\n> either. Hmm. So either it's not really bash what emits this (but what\n> then?) or most of the distributions override that stupid bash behaviour\n> with a patch already. And Debian didn't foreport the patch to bash-3.1.\n\nI just verified that on my Ubuntu Dapper system where I had a copy of\nthe old bash package lying around. The bash-3.0 works fine, but the\nbash-3.1 produces this error. So it is definitely bash related.\n\nRegards\n\nMarcel\n"},{"id":"13508","messageId":"Pine.LNX.4.64.0512120725350.15597@g5.osdl.org","threadId":"2793","inReplyTo":"1134385342.1468.27.camel@blade","subject":"Re: Latest cogito broken with bash-3.1","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2005-12-12T15:32:08Z","receivedAt":"2005-12-12T15:32:08Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Mon, 12 Dec 2005, Marcel Holtmann wrote:\n> \n> I just verified that on my Ubuntu Dapper system where I had a copy of\n> the old bash package lying around. The bash-3.0 works fine, but the\n> bash-3.1 produces this error. So it is definitely bash related.\n\nIt's been around forever, and it's a bash default installation issue. It's \njust that all sane distributions will change the default.\n\nSounds like debian forgot to do that when upgrading to bash-3.1.\n\nThe magic incantation is hidden in the bash FAQ (E2):\n\n\tYou can build a version of bash that will not report SIGPIPE errors\n\tby uncommenting the definition of DONT_REPORT_SIGPIPE in the file\n\tconfig-top.h.\n\nand I still don't understand why it's not the default. Oh, well.\n\n\t\tLinus\n"}]}