* [gentoo-amd64] Python-updater line 415 error @ 2009-08-03 4:36 Frank Peters 2009-08-03 4:42 ` Lance Lassetter 0 siblings, 1 reply; 14+ messages in thread From: Frank Peters @ 2009-08-03 4:36 UTC (permalink / raw To: gentoo-amd64 I run python-updater. I get this: command substitution: line 415: syntax error near unexpected token `<' command substitution: line 415: `scanelf -qBN ${OLD_SONAME} < <(' Python-updater is a bash script. Checking the source reveals this code at line 415: broken_libs="$(scanelf -qBN ${OLD_SONAME} < <( grep -e '^obj' ${content} | cut -d' ' -f2))" Now, this line is a nested command substitution. To fix, just replace the second "<" character with "$": broken_libs="$(scanelf -qBN ${OLD_SONAME} < $( grep -e '^obj' ${content} | cut -d' ' -f2))" This fix removes the error message and allows python-updater to check my system, but I now see some other messages which are, to me, a bit puzzling. Here is just one example of many: /usr/bin/rgb2ycbcr: No such file or directory The file rgb2ycbcr is there, as are all the other files that are marked as missing. Is python-updater working properly for everyone? I searched google and bugs.gentoo.org for the above line 415 error message but found nothing, and I can't believe that no one else has so far missed it. A bug like this should have been spotted immediately, yet re-emerging python-updater gives the same error. Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 4:36 [gentoo-amd64] Python-updater line 415 error Frank Peters @ 2009-08-03 4:42 ` Lance Lassetter 2009-08-03 5:59 ` Frank Peters 0 siblings, 1 reply; 14+ messages in thread From: Lance Lassetter @ 2009-08-03 4:42 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 00:36 -0400, Frank Peters wrote: > I run python-updater. I get this: > > command substitution: line 415: syntax error near unexpected token `<' > command substitution: line 415: `scanelf -qBN ${OLD_SONAME} < <(' > > Python-updater is a bash script. Checking the source reveals > this code at line 415: > > broken_libs="$(scanelf -qBN ${OLD_SONAME} < <( > grep -e '^obj' ${content} | cut -d' ' -f2))" > > Now, this line is a nested command substitution. To fix, just > replace the second "<" character with "$": > > broken_libs="$(scanelf -qBN ${OLD_SONAME} < $( > grep -e '^obj' ${content} | cut -d' ' -f2))" > > > This fix removes the error message and allows python-updater to > check my system, but I now see some other messages which are, > to me, a bit puzzling. Here is just one example of many: > > /usr/bin/rgb2ycbcr: No such file or directory > > The file rgb2ycbcr is there, as are all the other files that are > marked as missing. > > Is python-updater working properly for everyone? I searched > google and bugs.gentoo.org for the above line 415 error message but > found nothing, and I can't believe that no one else has so far > missed it. A bug like this should have been spotted immediately, > yet re-emerging python-updater gives the same error. > > Frank Peters > > ran python-updater yesterday and worked fine. upgraded from 2.5 to 2.6. i had to run it twice though to catch everything. Lance ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 4:42 ` Lance Lassetter @ 2009-08-03 5:59 ` Frank Peters 2009-08-03 6:07 ` Lance Lassetter 0 siblings, 1 reply; 14+ messages in thread From: Frank Peters @ 2009-08-03 5:59 UTC (permalink / raw To: gentoo-amd64 On Sun, 02 Aug 2009 23:42:38 -0500 Lance Lassetter <lancelassetter@gmail.com> wrote: > > ran python-updater yesterday and worked fine. upgraded from 2.5 to 2.6. > i had to run it twice though to catch everything. > Could you open a terminal (xterm or rxvt) and execute the following command: cd /etc && FOO="$(cat < <(ls -a /etc | grep mtab))" && echo $FOO Does this produce an error? What about this command: cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 5:59 ` Frank Peters @ 2009-08-03 6:07 ` Lance Lassetter 2009-08-03 6:16 ` Frank Peters 0 siblings, 1 reply; 14+ messages in thread From: Lance Lassetter @ 2009-08-03 6:07 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 01:59 -0400, Frank Peters wrote: > cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO Frank, The 1st didn't, the second did: The 1st: # cd /etc && FOO="$(cat < <(ls -a /etc | grep mtab))" && echo $FOO dmtab mtab The 2nd: # cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO -su: $(ls -a /etc | grep mtab): ambiguous redirect Lance ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 6:07 ` Lance Lassetter @ 2009-08-03 6:16 ` Frank Peters 2009-08-03 6:21 ` Lance Lassetter 0 siblings, 1 reply; 14+ messages in thread From: Frank Peters @ 2009-08-03 6:16 UTC (permalink / raw To: gentoo-amd64 On Mon, 03 Aug 2009 01:07:43 -0500 Lance Lassetter <lancelassetter@gmail.com> wrote: > On Mon, 2009-08-03 at 01:59 -0400, Frank Peters wrote: > > cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO > > Frank, > > The 1st didn't, the second did: > > The 1st: > > # cd /etc && FOO="$(cat < <(ls -a /etc | grep mtab))" && echo $FOO > dmtab mtab > > > The 2nd: > > # cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO > -su: $(ls -a /etc | grep mtab): ambiguous redirect > Thanks. There is something funny going on, because the first produces an error on my system while the second does not. The first form of the command is what has been in python-updater. What version of bash do you have? Just do: bash --version It has to be a bash issue. Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 6:16 ` Frank Peters @ 2009-08-03 6:21 ` Lance Lassetter 2009-08-03 6:28 ` Frank Peters 0 siblings, 1 reply; 14+ messages in thread From: Lance Lassetter @ 2009-08-03 6:21 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 02:16 -0400, Frank Peters wrote: > On Mon, 03 Aug 2009 01:07:43 -0500 > Lance Lassetter <lancelassetter@gmail.com> wrote: > > > On Mon, 2009-08-03 at 01:59 -0400, Frank Peters wrote: > > > cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO > > > > Frank, > > > > The 1st didn't, the second did: > > > > The 1st: > > > > # cd /etc && FOO="$(cat < <(ls -a /etc | grep mtab))" && echo $FOO > > dmtab mtab > > > > > > The 2nd: > > > > # cd /etc && FOO="$(cat < $(ls -a /etc | grep mtab))" && echo $FOO > > -su: $(ls -a /etc | grep mtab): ambiguous redirect > > > > Thanks. There is something funny going on, because the first produces > an error on my system while the second does not. The first form of the > command is what has been in python-updater. > > What version of bash do you have? Just do: > > bash --version > > It has to be a bash issue. > > Frank Peters > > # bash --version GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) Copyright (C) 2007 Free Software Foundation, Inc. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 6:21 ` Lance Lassetter @ 2009-08-03 6:28 ` Frank Peters 2009-08-03 6:44 ` Lance Lassetter 2009-08-03 7:12 ` [gentoo-amd64] " Duncan 0 siblings, 2 replies; 14+ messages in thread From: Frank Peters @ 2009-08-03 6:28 UTC (permalink / raw To: gentoo-amd64 On Mon, 03 Aug 2009 01:21:40 -0500 Lance Lassetter <lancelassetter@gmail.com> wrote: > > > > # bash --version > GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) > Copyright (C) 2007 Free Software Foundation, Inc. > > Thanks again. I thought so. My bash version is 4.0.28(2) and there obviously have been some changes. Version 3.2 goes back a long way. Another program where I have experienced problems is eselect, which is another bash script. Again there was a syntax fault. I will have to look into this a little better in the morning and maybe file a bug report. Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 6:28 ` Frank Peters @ 2009-08-03 6:44 ` Lance Lassetter 2009-08-03 12:31 ` Frank Peters 2009-08-03 7:12 ` [gentoo-amd64] " Duncan 1 sibling, 1 reply; 14+ messages in thread From: Lance Lassetter @ 2009-08-03 6:44 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 02:28 -0400, Frank Peters wrote: > On Mon, 03 Aug 2009 01:21:40 -0500 > Lance Lassetter <lancelassetter@gmail.com> wrote: > > > > > > > > # bash --version > > GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) > > Copyright (C) 2007 Free Software Foundation, Inc. > > > > > > Thanks again. I thought so. My bash version is 4.0.28(2) > and there obviously have been some changes. Version 3.2 > goes back a long way. Another program where I have experienced > problems is eselect, which is another bash script. Again there > was a syntax fault. > > I will have to look into this a little better in the morning > and maybe file a bug report. > > Frank Peters > > Frank, afaik, latest stable is: bash-3.2_p39 might not be a good idea to run unstable stuff such as bash and python; just a thought. Lance ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Python-updater line 415 error 2009-08-03 6:44 ` Lance Lassetter @ 2009-08-03 12:31 ` Frank Peters 0 siblings, 0 replies; 14+ messages in thread From: Frank Peters @ 2009-08-03 12:31 UTC (permalink / raw To: gentoo-amd64 On Mon, 03 Aug 2009 01:44:23 -0500 Lance Lassetter <lancelassetter@gmail.com> wrote: > > afaik, latest stable is: > bash-3.2_p39 > > might not be a good idea to run unstable stuff such as bash and python; > just a thought. > After downgrading to bash-3.2, the problem remains. Bash is thus apparently not the culprit. My greatest fear has been realized. No one else experiences this problem; therefore, I have a gremlin lurking somewhere on my system. I can't devote excessive time right now to explore this more deeply. So far, only eselect and python-updater are affected and I can fix both of these. Incidentally, eselect, also a bash script, produces this error: `ec_do_list-options': not a valid identifier `ec_do_list-modules': not a valid identifier If I rename these identifiers to ec_do_list_options ec_do_list_modules the problem disappears. Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* [gentoo-amd64] Re: Python-updater line 415 error 2009-08-03 6:28 ` Frank Peters 2009-08-03 6:44 ` Lance Lassetter @ 2009-08-03 7:12 ` Duncan 2009-08-03 8:04 ` Lance Lassetter 2009-08-03 12:55 ` [gentoo-amd64] Re: Python-updater line 415 error [Solved] Frank Peters 1 sibling, 2 replies; 14+ messages in thread From: Duncan @ 2009-08-03 7:12 UTC (permalink / raw To: gentoo-amd64 Frank Peters <frank.peters@comcast.net> posted 20090803022804.b9e5a8a0.frank.peters@comcast.net, excerpted below, on Mon, 03 Aug 2009 02:28:04 -0400: > On Mon, 03 Aug 2009 01:21:40 -0500 > Lance Lassetter <lancelassetter@gmail.com> wrote: > > > >> # bash --version >> GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) Copyright (C) >> 2007 Free Software Foundation, Inc. >> >> >> > Thanks again. I thought so. My bash version is 4.0.28(2) and there > obviously have been some changes. Version 3.2 goes back a long way. > Another program where I have experienced problems is eselect, which is > another bash script. Again there was a syntax fault. > > I will have to look into this a little better in the morning and maybe > file a bug report. FWIW, here (and see below for the Gentoo versions): GNU bash, version 4.0.28(2)-release (x86_64-pc-linux-gnu) That's current ~amd64 as of yesterday's sync. I haven't run python-updater in some time but it ran fine when I ran it last. I do need to run it again since python-3.1 was just in yesterday's updates, tho, and see what happens. Meanwhile, I've had exactly zero problems with eselect, but I don't use that many modules of it as I manage a lot of what it does, like the kernel symlink, the make.profile symlink, etc, manually. Here's my bash, python and python-updater versions: $equery l bash python * Searching for bash ... [IP-] [ ~] app-shells/bash-4.0_p28 (0) * Searching for python ... [IP-] [ ~] dev-lang/python-2.6.2-r1 (2.6) [IP-] [ ~] dev-lang/python-3.1 (3.1) * Searching for python-updater ... [IP-] [ ~] app-admin/python-updater-0.7 (0) $ Are you full ~amd64, or did you package.keyword bash? If you're running a mixed ~arch/stable system, it's possible that's the problem, tho it doesn't look like it should be python-updater itself, since 0.7 is the highest available for both stable and ~arch. Here's a depth-2 depends graph for the 4.0 p28 bash version: $equery g --depth=2 bash-4.0_p28 * Searching for bash ... * dependency graph for app-shells/bash-4.0_p28: `-- app-shells/bash-4.0_p28 `-- sys-libs/ncurses-5.7-r1 `-- sys-libs/gpm-1.20.6 [gpm] `-- sec-policy/selinux-gpm (unable to resolve: package masked or removed) `-- virtual/libintl-0 (virtual/libintl) [nls] `-- sys-devel/gettext-0.17 [elibc_FreeBSD] [ app-shells/bash-4.0_p28 stats: packages (5), max depth (2) ] $ python-updater itself doesn't seem to have any significant dependencies, just a package manager (portage, pkgcore or paludis), at the first level. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Re: Python-updater line 415 error 2009-08-03 7:12 ` [gentoo-amd64] " Duncan @ 2009-08-03 8:04 ` Lance Lassetter 2009-08-03 12:55 ` [gentoo-amd64] Re: Python-updater line 415 error [Solved] Frank Peters 1 sibling, 0 replies; 14+ messages in thread From: Lance Lassetter @ 2009-08-03 8:04 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 07:12 +0000, Duncan wrote: > Frank Peters <frank.peters@comcast.net> posted > 20090803022804.b9e5a8a0.frank.peters@comcast.net, excerpted below, on > Mon, 03 Aug 2009 02:28:04 -0400: > > > On Mon, 03 Aug 2009 01:21:40 -0500 > > Lance Lassetter <lancelassetter@gmail.com> wrote: > > > > > > > >> # bash --version > >> GNU bash, version 3.2.39(1)-release (x86_64-pc-linux-gnu) Copyright (C) > >> 2007 Free Software Foundation, Inc. > >> > >> > >> > > Thanks again. I thought so. My bash version is 4.0.28(2) and there > > obviously have been some changes. Version 3.2 goes back a long way. > > Another program where I have experienced problems is eselect, which is > > another bash script. Again there was a syntax fault. > > > > I will have to look into this a little better in the morning and maybe > > file a bug report. > > FWIW, here (and see below for the Gentoo versions): > > GNU bash, version 4.0.28(2)-release (x86_64-pc-linux-gnu) > > That's current ~amd64 as of yesterday's sync. > > I haven't run python-updater in some time but it ran fine when I ran it > last. I do need to run it again since python-3.1 was just in yesterday's > updates, tho, and see what happens. > > Meanwhile, I've had exactly zero problems with eselect, but I don't use > that many modules of it as I manage a lot of what it does, like the > kernel symlink, the make.profile symlink, etc, manually. > > Here's my bash, python and python-updater versions: > > $equery l bash python > * Searching for bash ... > [IP-] [ ~] app-shells/bash-4.0_p28 (0) > > * Searching for python ... > [IP-] [ ~] dev-lang/python-2.6.2-r1 (2.6) > [IP-] [ ~] dev-lang/python-3.1 (3.1) > > * Searching for python-updater ... > [IP-] [ ~] app-admin/python-updater-0.7 (0) > $ > > Are you full ~amd64, or did you package.keyword bash? If you're running > a mixed ~arch/stable system, it's possible that's the problem, tho it > doesn't look like it should be python-updater itself, since 0.7 is the > highest available for both stable and ~arch. > > Here's a depth-2 depends graph for the 4.0 p28 bash version: > > $equery g --depth=2 bash-4.0_p28 > * Searching for bash ... > * dependency graph for app-shells/bash-4.0_p28: > `-- app-shells/bash-4.0_p28 > `-- sys-libs/ncurses-5.7-r1 > `-- sys-libs/gpm-1.20.6 [gpm] > `-- sec-policy/selinux-gpm (unable to resolve: package masked or > removed) > `-- virtual/libintl-0 (virtual/libintl) [nls] > `-- sys-devel/gettext-0.17 [elibc_FreeBSD] > [ app-shells/bash-4.0_p28 stats: packages (5), max depth (2) ] > $ > > python-updater itself doesn't seem to have any significant dependencies, > just a package manager (portage, pkgcore or paludis), at the first level. > it's mixed. only select few packages installed ~x86 and their required deps. i would, personally, never go full blown ~x86 due to core packages needing to be stable. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Re: Python-updater line 415 error [Solved] 2009-08-03 7:12 ` [gentoo-amd64] " Duncan 2009-08-03 8:04 ` Lance Lassetter @ 2009-08-03 12:55 ` Frank Peters 2009-08-04 15:40 ` Lance Lassetter 1 sibling, 1 reply; 14+ messages in thread From: Frank Peters @ 2009-08-03 12:55 UTC (permalink / raw To: gentoo-amd64 On Mon, 3 Aug 2009 07:12:09 +0000 (UTC) Duncan <1i5t5.duncan@cox.net> wrote: > > I haven't run python-updater in some time but it ran fine when I ran it > last. I do need to run it again since python-3.1 was just in yesterday's > updates, tho, and see what happens. > OK. I've found the source of the problem. Again, Line 415 is: broken_libs="$(scanelf -qBN ${OLD_SONAME} <<(grep -e '^obj' ${content} | cut -d' ' -f2))" At first glance, I wasn't sure exactly what this line was doing. Reading someone else's code has to be done very thoroughly and carefully. At first glance, I thought it was a nested command substitution but it is actually a type of input redirection from a string (a string that is formed by a command substitution). However, the construction is INCORRECT. The line should be this: broken_libs="$(scanelf -qBN ${OLD_SONAME} <<< $(grep -e '^obj' ${content} | cut -d' ' -f2))" Notice the "<<< $" With this correction, python-updater now works as intended with no errors or funny messages. Keep in mind that python-updater has had this INCORRECT CODE for the last several releases (0.7, 0.6, 0.5). I will file a report with bugs.gentoo.org (Now I'll try to root out the difficulty with eselect.) Frank Peters ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Re: Python-updater line 415 error [Solved] 2009-08-03 12:55 ` [gentoo-amd64] Re: Python-updater line 415 error [Solved] Frank Peters @ 2009-08-04 15:40 ` Lance Lassetter 2009-08-04 16:29 ` Frank Peters 0 siblings, 1 reply; 14+ messages in thread From: Lance Lassetter @ 2009-08-04 15:40 UTC (permalink / raw To: gentoo-amd64 On Mon, 2009-08-03 at 08:55 -0400, Frank Peters wrote: > On Mon, 3 Aug 2009 07:12:09 +0000 (UTC) > Duncan <1i5t5.duncan@cox.net> wrote: > > > > > I haven't run python-updater in some time but it ran fine when I ran it > > last. I do need to run it again since python-3.1 was just in yesterday's > > updates, tho, and see what happens. > > > > OK. I've found the source of the problem. > > Again, Line 415 is: > > broken_libs="$(scanelf -qBN ${OLD_SONAME} <<(grep -e '^obj' ${content} | cut -d' ' -f2))" > > At first glance, I wasn't sure exactly what this line was doing. > Reading someone else's code has to be done very thoroughly and carefully. > > At first glance, I thought it was a nested command substitution > but it is actually a type of input redirection from a string (a string > that is formed by a command substitution). > > However, the construction is INCORRECT. The line should be this: > > broken_libs="$(scanelf -qBN ${OLD_SONAME} <<< $(grep -e '^obj' ${content} | cut -d' ' -f2))" > > Notice the "<<< $" > > With this correction, python-updater now works as intended > with no errors or funny messages. > > Keep in mind that python-updater has had this INCORRECT CODE > for the last several releases (0.7, 0.6, 0.5). > > I will file a report with bugs.gentoo.org > > (Now I'll try to root out the difficulty with eselect.) > > Frank Peters > > Frank, Can you post the bug number here to the list? Thanks, Lance ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-amd64] Re: Python-updater line 415 error [Solved] 2009-08-04 15:40 ` Lance Lassetter @ 2009-08-04 16:29 ` Frank Peters 0 siblings, 0 replies; 14+ messages in thread From: Frank Peters @ 2009-08-04 16:29 UTC (permalink / raw To: gentoo-amd64 On Tue, 04 Aug 2009 10:40:00 -0500 Lance Lassetter <lancelassetter@gmail.com> wrote: > > Can you post the bug number here to the list? > http://bugs.gentoo.org/show_bug.cgi?id=280174 http://bugs.gentoo.org/show_bug.cgi?id=280191 It all boils down to the issue of POSIX compliance. FP ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2009-08-04 16:30 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-08-03 4:36 [gentoo-amd64] Python-updater line 415 error Frank Peters 2009-08-03 4:42 ` Lance Lassetter 2009-08-03 5:59 ` Frank Peters 2009-08-03 6:07 ` Lance Lassetter 2009-08-03 6:16 ` Frank Peters 2009-08-03 6:21 ` Lance Lassetter 2009-08-03 6:28 ` Frank Peters 2009-08-03 6:44 ` Lance Lassetter 2009-08-03 12:31 ` Frank Peters 2009-08-03 7:12 ` [gentoo-amd64] " Duncan 2009-08-03 8:04 ` Lance Lassetter 2009-08-03 12:55 ` [gentoo-amd64] Re: Python-updater line 415 error [Solved] Frank Peters 2009-08-04 15:40 ` Lance Lassetter 2009-08-04 16:29 ` Frank Peters
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox