Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 133731 - quickpkg errors out when multiple package names in different categories are found installed
Summary: quickpkg errors out when multiple package names in different categories are f...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: All Other
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 115839
  Show dependency tree
 
Reported: 2006-05-18 15:32 UTC by Nathan Sullivan
Modified: 2006-05-21 17:51 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nathan Sullivan 2006-05-18 15:32:57 UTC
not sure if this happens for every instance so far, i think its only if multiple packages are installed that have the same name but are in different categories. examples below are the best explanation :)

as you can see, gcc exists in a few different categories due to crossdev, and with more than 1 category instance installed, it craps out. whereas with php, only an instance from dev-lang is installed and its fine.

nsys-home1-gt / # eix ^gcc$
* cross-arm-unknown-linux-gnu/gcc [1]
     Available versions:  2.95.3-r9 3.1.1-r2 3.2.2 3.2.3-r4 3.3.2-r7 3.3.5-r1 3.3.5.20050130-r1 3.3.6 3.3.6-r1 3.4.1-r3 3.4.4-r1 3.4.5 3.4.5-r1 3.4.6 3.4.6-r1 4.0.2-r3 4.0.3 [M]4.1.0-r1 [M]4.1.1_pre20060517 [M]4.2.0_alpha20060513
     Installed:           4.1.0
     Homepage:            http://gcc.gnu.org/
     Description:         Modern C/C++ compiler written by the GNU people

* cross-powerpc-unknown-linux-gnu/gcc [1]
     Available versions:  2.95.3-r9 3.1.1-r2 *3.2.2 3.2.3-r4 3.3.2-r7 3.3.5-r1 3.3.5.20050130-r1 3.3.6 3.3.6-r1 3.4.1-r3 3.4.4-r1 3.4.5 3.4.5-r1 3.4.6 3.4.6-r1 *4.0.2-r3 *4.0.3 4.1.0-r1 4.1.1_pre20060517 [M]4.2.0_alpha20060513
     Installed:           4.1.0
     Homepage:            http://gcc.gnu.org/
     Description:         Modern C/C++ compiler written by the GNU people

* sys-devel/gcc
     Available versions:  [P]2.95.3-r9 [P]3.1.1-r2 [P]3.2.2 [P]3.2.3-r4 [P]3.3.2-r7 3.3.5-r1 3.3.5.20050130-r1 3.3.6 3.3.6-r1 3.4.1-r3 3.4.4-r1 3.4.5 3.4.5-r1 3.4.6 3.4.6-r1 4.0.2-r3 4.0.3 4.1.0-r1 4.1.1_pre20060517 [M]4.2.0_alpha20060513
     Installed:           4.0.3 4.1.0-r1
     Homepage:            http://gcc.gnu.org/
     Description:         The GNU Compiler Collection. Includes C/C++, java compilers, pie+ssp extensions, Haj Ten Brugge runtime bounds checking

[1] /usr/local/portage

------------------------

nsys-home1-gt / # quickpkg =gcc-4.1.0-r1
Traceback (most recent call last):
  File "/usr/bin/portageq", line 285, in ?
    main()
  File "/usr/bin/portageq", line 280, in main
    function(sys.argv[2:])
  File "/usr/bin/portageq", line 138, in match
    print string.join(portage.db[argv[0]]["vartree"].dbapi.match(argv[1]),"\n")
  File "/usr/lib/portage/pym/portage.py", line 4460, in match
    mydep=dep_expand(origdep,mydb=self,use_cache=use_cache)
  File "/usr/lib/portage/pym/portage.py", line 3349, in dep_expand
    return prefix+cpv_expand(mydep,mydb=mydb,use_cache=use_cache)+postfix
  File "/usr/lib/portage/pym/portage.py", line 3538, in cpv_expand
    raise ValueError, matches
ValueError: ['cross-arm-unknown-linux-gnu/gcc', 'sys-devel/gcc', 'cross-powerpc-unknown-linux-gnu/gcc']
 * Could not find anything to match '=gcc-4.1.0-r1'; skipping
 * No packages found

---------------------

nsys-home1-gt / # eix ^php$
* dev-lang/php
     Available versions:  4.3.11-r5 4.4.2 4.4.2-r2 5.0.5-r5 5.1.2 5.1.4
     Installed:           5.1.4
     Homepage:            http://www.php.net/
     Description:         The PHP language runtime engine.

* dev-php/php
     Available versions:  [M]4.3.11 [M]4.3.11-r1 [M]4.3.11-r3 [M]4.3.11-r4 [M]4.4.0 [M]4.4.0-r1 [M]4.4.0-r3 [M]4.4.0-r4
     Installed:           none
     Homepage:            http://www.php.net/
     Description:         PHP Shell Interpreter


Found 2 matches
nsys-home1-gt / # quickpkg php
 * Building package for php-5.1.4 ...                                                                                                                   [ ok ]

 * Packages now in /usr/portage/packages:
 * php-5.1.4: 13M

--------------------------------

Portage 2.1_rc1-r2 (default-linux/x86/2006.0, gcc-4.1.0, glibc-2.4-r3, 2.6.15-ck3-r1 i686)
=================================================================
System uname: 2.6.15-ck3-r1 i686 Pentium III (Coppermine)
Gentoo Base System version 1.12.0_pre19
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r1
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.16
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium3 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks fixpackages metadata-transfer nostrip sandbox sfperms strict"
GENTOO_MIRRORS="ftp://mirror.pacific.net.au/linux/Gentoo ftp://mirror.isp.net.au/pub/gentoo/ ftp://ftp.swin.edu.au/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://ftp.cc.swin.edu.au/gentoo-portage"
USE="alsa apache2 apm avi bash-completion berkdb bitmap-fonts bzip2 calendar cli crypt ctype cups curl dba debug dhcp divx4linux dri dv dvb dvd dvdread eds eix emboss encode esd exif extraengine fam ffmpeg foomaticdb fortran ftp gd gdbm gif gpm gstreamer hash iconv imap imlib innodb isdnlog jabber jpeg kerberos ldap libclamav libg++ libwww logrotate mad maildir mcal mhash mikmod mmx motif mp3 mpeg mysql mysqli ncurses nls nptl nptlonly ogg opengl pam pcntl pcre pdflib perl pic pie png posix postfix postgres pppd python quicktime radius readline reflection samba sasl sdl session simplexml snmp soap sockets spamassassin spell spl sqlite ssl tcpd tidy tiff tokenizer truetype truetype-fonts type1-fonts udev unicode usb userlocales utf8 v4l vhosts vorbis wddx x86 xml xml2 xmlrpc xmms xorg xv xvid zaptel zlib dvb_cards_usb-vp7045 elibc_glibc input_devices_evdev input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_cards_ati"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Nathan Sullivan 2006-05-18 15:36:38 UTC
just to reiterate, if you specify the full package name with category prefix, quickpkg works fine...

nsys-home1-gt / # quickpkg =sys-devel/gcc-4.1.0-r1
 * Building package for gcc-4.1.0-r1 ...                                                                                                                [ ok ]

 * Packages now in /usr/portage/packages:
 * gcc-4.1.0-r1: 17M

the expected behaviour in the traceback in the first post is something similar to:

nsys-home1-gt / # emerge -pv php

These are the packages that would be merged, in order:

Calculating dependencies

!!! The short ebuild name "php" is ambiguous.  Please specify
!!! one of the following fully-qualified ebuild names instead:

    dev-lang/php
    dev-php/php
Comment 2 Zac Medico gentoo-dev 2006-05-18 17:41:16 UTC
I've fixed in in svn r3376 so that portageq prints a nice error message to stderr. No changes to quickpkg are necessary because it doesn't get anything from portageq on stdout in this case and it simply assumes there is no match.
Comment 3 Zac Medico gentoo-dev 2006-05-21 17:51:16 UTC
This has been release in 2.1_rc1-r4.