Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 386379 - sys-apps/portage-2.2.0_alpha63 can throw incorrect warning for binary packages
Summary: sys-apps/portage-2.2.0_alpha63 can throw incorrect warning for binary packages
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 381649
  Show dependency tree
 
Reported: 2011-10-08 16:09 UTC by Guy
Modified: 2011-10-10 07:08 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 Guy 2011-10-08 16:09:54 UTC
Situation:

Binary package generator/server which is used to generate and provide binary packages to multiple binary package based PCs.

Performed latest round of world updates on binary package host with no problems.

On binary package using PCs, executed:
   emerge -gpuNDv --with-bdeps=y @world

Received 3 warnings about USE flags:

!!! The following binary packages have been ignored due to non matching USE:

    =media-gfx/iscan-2.26.2
        use flag(s): png
    =dev-libs/popt-1.16-r1
        use flag(s): static-libs
    =sys-fs/udev-164-r2
        use flag(s): build

NOTE: The --binpkg-respect-use=n option will prevent emerge
      from ignoring these binary packages if possible.
      Using --binpkg-respect-use=y will silence this warning

Resolved the 'iscan' warning to remove a temporary line from /etc/portage/package.use on the binary package using PCs left over from a prior world update issue (i.e. bug in bugzilla now resolved).

Resolved the 'popt' warning to a prior world update issue on the binary package host. Removed temporary line from /etc/portage/package.use and recompiled 'popt' package and made resulting binary available on host.

Could not resolve 'udev' message. The 'udev' package was not selected for updating on the binary host server during it's last update world.

On a binary package using PC, I executed the following with the associated results:

slizard ~ # emerge -gpuNDv --with-bdeps=y --binpkg-respect=n @world > world.text 2>&1
slizard ~ # nano -w world.text 
slizard ~ # emerge -gpuNDv --with-bdeps=y @world > world2.text 2>&1
slizard ~ # diff world.text world2.text 
75d74
< [binary     U  ] kde-base/kstartperf-4.7.2 [4.7.1] USE="(-aqua) -debug (-kdeenablefinal)" 
77a77
> [binary     U  ] kde-base/kstartperf-4.7.2 [4.7.1] USE="(-aqua) -debug (-kdeenablefinal)" 
209c209
< [binary     U  ] kde-base/kfourinline-4.7.2 [4.7.1] USE="handbook (-aqua) -debug (-kdeenablefinal)" 
---
> [binary     U  ] kde-base/knetwalk-4.7.2 [4.7.1] USE="handbook (-aqua) -debug (-kdeenablefinal)" 
219c219
< [binary     U  ] kde-base/knetwalk-4.7.2 [4.7.1] USE="handbook (-aqua) -debug (-kdeenablefinal)" 
---
> [binary     U  ] kde-base/kfourinline-4.7.2 [4.7.1] USE="handbook (-aqua) -debug (-kdeenablefinal)" 
324a325,333
> 
> !!! The following binary packages have been ignored due to non matching USE:
> 
>     =sys-fs/udev-164-r2
>         use flag(s): build
> 
> NOTE: The --binpkg-respect-use=n option will prevent emerge
>       from ignoring these binary packages if possible.
>       Using --binpkg-respect-use=y will silence this warning.
slizard ~ # grep udev world*
world.text:[binary     U  ] kde-base/kdelibs-4.7.2 [4.7.1-r3] USE="3dnow acl alsa bzip2 fam handbook jpeg2k kerberos mmx nls openexr opengl policykit semantic-desktop spell sse sse2 ssl udev udisks upower zeroconf (-altivec) (-aqua) -bindist -debug -doc (-kdeenablefinal) -lzma -test -upnp" 
world.text:[binary     U  ] media-video/vlc-1.1.12 [1.1.11] USE="X a52 aac aalib alsa avahi cdda cddb dbus directfb dts dvb dvd fbcon ffmpeg flac fontconfig gcrypt ggi gnutls id3tag kde libass libcaca libnotify live matroska mmx modplug mp3 mpeg musepack ncurses nsplugin ogg opengl png pulseaudio qt4 run-as-root samba schroedinger sdl speex sqlite sse svg taglib theora truetype udev vorbis x264 xcb xml xosd xv (-altivec) -atmo -bidi -dc1394 -debug -dirac -fluidsynth -gme -gnome -httpd -ieee1394 -jack -kate -libproxy -libtiger -libv4l -libv4l2 -lirc -lua -mtp -optimisememory -oss -projectm -pvr -remoteosd -rtsp -sdl-image -shine -shout -skins -stream (-svga) -twolame -upnp -v4l -v4l2 -vaapi -vcdx -vlm (-win32codecs) -wma-fixed -zvbi" 
world2.text:[binary     U  ] kde-base/kdelibs-4.7.2 [4.7.1-r3] USE="3dnow acl alsa bzip2 fam handbook jpeg2k kerberos mmx nls openexr opengl policykit semantic-desktop spell sse sse2 ssl udev udisks upower zeroconf (-altivec) (-aqua) -bindist -debug -doc (-kdeenablefinal) -lzma -test -upnp" 
world2.text:[binary     U  ] media-video/vlc-1.1.12 [1.1.11] USE="X a52 aac aalib alsa avahi cdda cddb dbus directfb dts dvb dvd fbcon ffmpeg flac fontconfig gcrypt ggi gnutls id3tag kde libass libcaca libnotify live matroska mmx modplug mp3 mpeg musepack ncurses nsplugin ogg opengl png pulseaudio qt4 run-as-root samba schroedinger sdl speex sqlite sse svg taglib theora truetype udev vorbis x264 xcb xml xosd xv (-altivec) -atmo -bidi -dc1394 -debug -dirac -fluidsynth -gme -gnome -httpd -ieee1394 -jack -kate -libproxy -libtiger -libv4l -libv4l2 -lirc -lua -mtp -optimisememory -oss -projectm -pvr -remoteosd -rtsp -sdl-image -shine -shout -skins -stream (-svga) -twolame -upnp -v4l -v4l2 -vaapi -vcdx -vlm (-win32codecs) -wma-fixed -zvbi" 
world2.text:    =sys-fs/udev-164-r2
slizard ~ #

In theory, if the warning about package 'udev' was correct, then the 'world2.text' file should have included a line about upgrading or recompiling 'sys-fs/udev-171-r2'. No such line exists.

Instead, the three packages 'kde-base/kstartperf-4.7.2', 'kde-base/kstartperf-4.7.2', 'kde-base/kfourinline-4.7.2' are listed as being different between the two sets of pretend emerge results. Yet visual inspection implies the lines are identical.

What's weirder is that the message about 'udev' is for a previous version of udev.

After the 'update world' on the binary host, 'eix udev' displays:

[I] sys-fs/udev
     Available versions:  114 115-r1 119 124-r1 124-r2 141 (~)141-r1 146-r1!t 149 151-r4 164-r2{tbz2} (~)171-r1{tbz2} (~)171-r2{tbz2} **9999 {acl action_modeswitch build debug (+)devfs-compat edd (-)extras floppy gudev hwdb introspection keymap old-hd-rules +rule_generator selinux test}                                                                                       
     Installed versions:  171-r2{tbz2}(09:37:17 AM 09/14/2011)(acl extras gudev rule_generator -action_modeswitch -build -debug -edd -floppy -hwdb -introspection -keymap -selinux -test)
     Homepage:            http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
     Description:         Linux dynamic and persistent device naming support (aka userspace devfs)

BEFORE running 'update world' on a binary package using PC, 'eix udev' displays:

[I] sys-fs/udev
     Available versions:  114 115-r1 119 124-r1 124-r2 141 (~)141-r1 146-r1!t 149 151-r4 164-r2{tbz2} (~)171-r1{tbz2} (~)171-r2{tbz2} **9999 {acl action_modeswitch build debug (+)devfs-compat edd (-)extras floppy gudev hwdb introspection keymap old-hd-rules +rule_generator selinux test}                                                                                     
     Installed versions:  171-r2{tbz2}(09:37:17 AM 09/14/2011)(acl extras gudev rule_generator -action_modeswitch -build -debug -edd -floppy -hwdb -introspection -keymap -selinux -test)
     Homepage:            http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
     Description:         Linux dynamic and persistent device naming support (aka userspace devfs)

i.e. Package 'udev' was not updated during this latest round of 'update' world on the binary host server and both the binary host server and the associated binary package using PCs are already running the same version of 'udev'.
Comment 1 Guy 2011-10-08 16:29:56 UTC
Sorry - meant to put down 'sys-apps/portage-2.2.0_alpha60' in the one line desc. Not 'sys-apps/portage-2.2.0_alpha63'.

'alpha60' applies to the binary package using PCs prior to the new round of 'update world'.

'alpha63' applies to the binary package host after the new round of 'update world'.

The ambiguous warning message comes from 'alpha60'. I don't know if 'alpha63' is subject to the same issue.
Comment 2 Guy 2011-10-08 18:53:01 UTC
I can confirm the 'alpha63' version has the same issue.

I updated portage on a binary package PC which had not yet gone through the 'update world' process.

executing: emerge -gpuNDv --with-bdeps=y @world

resulted with the same ambiguous/incorrect warning message.
Comment 3 Sebastian Luther (few) 2011-10-09 17:51:45 UTC
We should only add binaries to ignored_binaries in _wrapped_select_pkg_highest_available_imp if we don't select select something with a higher version than the binary.
Comment 5 Zac Medico gentoo-dev 2011-10-10 07:08:00 UTC
This is fixed in 2.1.10.25 and 2.2.0_alpha65.