FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Development

 
 
LinkBack Thread Tools
 
Old 02-21-2009, 11:00 PM
Mart Raudsepp
 
Default bash-4.0 regression heads up (escaped semicolons in subshells)

On Sat, 2009-02-21 at 18:55 -0500, Mike Frysinger wrote:
> On Saturday 21 February 2009 18:38:55 Ryan Hill wrote:
> > On Sat, 21 Feb 2009 18:27:10 -0500 Mike Frysinger wrote:
> > > looks like bash-4.0 has broken semicolon escaping in subshells. this
> > > comes up when using find's -exec like we do in a few places in
> > > eclasses: ls=$(find "$1" -name '*.po' -exec basename {} .po ; shift
> > > you can work around the issue in a couple of ways:
> > > - quote the semicolon:
> > > .... ';')
> > > - use backticks
> > > `find .... ;`
> > >
> > > i'll tweak the eclasses to use quoting for now
> >
> > is this a bug or broken on purpose?
>
> i say it's a bug, but i'm not the bash maintainer
>
> i imagine it's fall out from attempts to fix support for case statements in
> subshells

Then the bug should be fixed, instead of changing usage to something
apparently less common, as the conversion could miss some. And more
importantly users still want to use ; for find -exec ending on their
command line and their very own scripts.
And who knows how many shell scripts shipped by packages use the
escaping method.


--
Mart Raudsepp
Gentoo Developer
Mail: leio@gentoo.org
Weblog: http://planet.gentoo.org/developers/leio
 
Old 02-21-2009, 11:38 PM
Mart Raudsepp
 
Default bash-4.0 regression heads up (escaped semicolons in subshells)

On Sat, 2009-02-21 at 19:29 -0500, Mike Frysinger wrote:
> On Saturday 21 February 2009 19:00:19 Mart Raudsepp wrote:
> > On Sat, 2009-02-21 at 18:55 -0500, Mike Frysinger wrote:
> > > On Saturday 21 February 2009 18:38:55 Ryan Hill wrote:
> > > > On Sat, 21 Feb 2009 18:27:10 -0500 Mike Frysinger wrote:
> > > > > looks like bash-4.0 has broken semicolon escaping in subshells. this
> > > > > comes up when using find's -exec like we do in a few places in
> > > > > eclasses: ls=$(find "$1" -name '*.po' -exec basename {} .po ;
> > > > > shift you can work around the issue in a couple of ways:
> > > > > - quote the semicolon:
> > > > > .... ';')
> > > > > - use backticks
> > > > > `find .... ;`
> > > > >
> > > > > i'll tweak the eclasses to use quoting for now
> > > >
> > > > is this a bug or broken on purpose?
> > >
> > > i say it's a bug, but i'm not the bash maintainer
> > >
> > > i imagine it's fall out from attempts to fix support for case statements
> > > in subshells
> >
> > Then the bug should be fixed, instead of changing usage to something
> > apparently less common, as the conversion could miss some. And more
> > importantly users still want to use ; for find -exec ending on their
> > command line and their very own scripts.
> > And who knows how many shell scripts shipped by packages use the
> > escaping method.
>
> i think you missed the entire point of this thread: there's a bug in bash-4.0
> that code is likely to hit.

I think you missed the entire point of my reply.
That bug should be fixed, not workarounds applied all over the tree, as
users still want to be able to escape semi-colons.


--
Mart Raudsepp
Gentoo Developer
Mail: leio@gentoo.org
Weblog: http://planet.gentoo.org/developers/leio
 
Old 02-21-2009, 11:54 PM
Mart Raudsepp
 
Default bash-4.0 regression heads up (escaped semicolons in subshells)

On Sat, 2009-02-21 at 19:44 -0500, Mike Frysinger wrote:
> On Saturday 21 February 2009 19:38:33 Mart Raudsepp wrote:
> > On Sat, 2009-02-21 at 19:29 -0500, Mike Frysinger wrote:
> > > On Saturday 21 February 2009 19:00:19 Mart Raudsepp wrote:
> > > > On Sat, 2009-02-21 at 18:55 -0500, Mike Frysinger wrote:
> > > > > On Saturday 21 February 2009 18:38:55 Ryan Hill wrote:
> > > > > > On Sat, 21 Feb 2009 18:27:10 -0500 Mike Frysinger wrote:
> > > > > > > looks like bash-4.0 has broken semicolon escaping in subshells.
> > > > > > > this comes up when using find's -exec like we do in a few places
> > > > > > > in eclasses: ls=$(find "$1" -name '*.po' -exec basename {} .po
> > > > > > > ; shift you can work around the issue in a couple of ways: -
> > > > > > > quote the semicolon:
> > > > > > > .... ';')
> > > > > > > - use backticks
> > > > > > > `find .... ;`
> > > > > > >
> > > > > > > i'll tweak the eclasses to use quoting for now
> > > > > >
> > > > > > is this a bug or broken on purpose?
> > > > >
> > > > > i say it's a bug, but i'm not the bash maintainer
> > > > >
> > > > > i imagine it's fall out from attempts to fix support for case
> > > > > statements in subshells
> > > >
> > > > Then the bug should be fixed, instead of changing usage to something
> > > > apparently less common, as the conversion could miss some. And more
> > > > importantly users still want to use ; for find -exec ending on their
> > > > command line and their very own scripts.
> > > > And who knows how many shell scripts shipped by packages use the
> > > > escaping method.
> > >
> > > i think you missed the entire point of this thread: there's a bug in
> > > bash-4.0 that code is likely to hit.
> >
> > I think you missed the entire point of my reply.
> > That bug should be fixed, not workarounds applied all over the tree, as
> > users still want to be able to escape semi-colons.
>
> no one suggested doing any of this crap you're talking about. if you want to
> get all retarded, dont install the masked ebuild. i gave a heads up to people
> who might want to experiment so they wouldnt have to figure out weird errors.
> in the mean time, i tweaked a few common files so people wouldnt hit errors
> and could investigate even further.

Perhaps you should actually state those intentions at the start instead
of starting to rant out on people replying.
Sounds good now that we actually know what the plan is.


--
Mart Raudsepp
Gentoo Developer
Mail: leio@gentoo.org
Weblog: http://planet.gentoo.org/developers/leio
 

Thread Tools




All times are GMT. The time now is 08:13 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org