Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 169187

Summary: 'emerge -Dpuv world' doesn't update all packages (depclean related ?)
Product: Portage Development Reporter: Max Lorenz <meax>
Component: Core - DependenciesAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal Keywords: REGRESSION
Priority: High    
Version: 2.1   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 167107    
Attachments: emerge -Dpuv --debug world
emerge -p --depclean --debug
make depclean prune unneeded slots

Description Max Lorenz 2007-03-03 22:40:44 UTC
# emerge -Dpuv world | grep sys-libs/db
<nothing>
# emerge -p --depclean | grep sys-libs/db
<nothing>
# emerge -puv sys-libs/db

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

Calculating dependencies... done!
[ebuild     U ] sys-libs/db-1.85-r3 [1.85-r2] 15 kB
[ebuild     U ] sys-libs/db-4.1.25_p2 [4.1.25_p1-r4] USE="-bo[...]
[ebuild     U ] sys-libs/db-4.2.52_p4-r2 [4.2.52_p4] USE="-bo[...]

The first time I noticed this was when the new --depclean code was introduced(so some time ago) because the old --depclean wanted to remove these db versions while the new one didn't. Took a note, forgot about it and stumbled across it again. So either --depclean should clean them out or '-Dpuv world' should update them, shouldn't it?
I'll attach the --debug output, thanks in advance.
Comment 1 Max Lorenz 2007-03-03 22:42:45 UTC
Created attachment 111993 [details]
emerge -Dpuv --debug world
Comment 2 Max Lorenz 2007-03-03 22:44:00 UTC
Created attachment 111996 [details]
emerge -p --depclean --debug
Comment 3 UncleOwen 2007-03-03 23:11:45 UTC
man emerge:

       --with-bdeps < y | n >
              In dependency calculations, pull in build time dependencies that
              are  not strictly required.   This defaults to 'n' for installa-
              tion actions and 'y' for the --depclean  action.   This  setting
              can be added to EMERGE_DEFAULT_OPTS (see make.conf(5)) and later
              overridden via the command line.
Comment 4 Max Lorenz 2007-03-03 23:32:11 UTC
(In reply to comment #3)
> man emerge:
> 
>        --with-bdeps < y | n >
Uh, yes, totally forgot 'emerge --info', --with-bdeps is on.

Portage 2.1.2-r11 (default-linux/x86/2006.1/desktop, gcc-4.1.2, glibc-2.3.6-r5, 2.6.19-gentoo-r6 i686)
=================================================================
System uname: 2.6.19-gentoo-r6 i686 AMD Athlon(tm) 64 Processor 3500+
Gentoo Base System release 1.12.9
Timestamp of tree: Wed, 28 Feb 2007 17:50:01 +0000
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y"
FEATURES="autoconfig collision-protect distlocks metadata-transfer parallel-fetch sandbox sfperms strict userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://pandemonium.tiscali.de/pub/gentoo/ http://ftp.easynet.nl/mirror/gentoo/"
MAKEOPTS="-j2"
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 --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow X a52 aac alsa apache2 bash-completion berkdb bitmap-fonts bzip2 cdr cli cracklib crypt curl dbus dri dvd dvdr emboss encode fam ffmpeg firefox flac gdbm gif gpm gtk hal iconv isdnlog jpeg kde kdeenablefinal lcms libg++ mad midi mikmod mmx mp3 mpeg musicbrainz ncurses nls nptl nptlonly offensive ogg opengl oss pam pcre perl png ppds pppd python qt3 quicktime readline reflection ruby sdl session spell spl sse sse2 ssl tcpd theora tiff truetype truetype-fonts type1-fonts usb vorbis win32codecs x86 xine xml xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="radeon"
Unset:  CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 5 Zac Medico gentoo-dev 2007-03-03 23:37:54 UTC
(In reply to comment #0)
> So either --depclean should clean them out or '-Dpuv world'
> should update them, shouldn't it?
> I'll attach the --debug output, thanks in advance.

It could be a little of both.  Even with --with-bdeps=n, it seems like the 4.2.52_p4 update should have been pulled in as an RDEPEND of python-2.4.4.  I'll have to look at this some more...
Comment 6 Zac Medico gentoo-dev 2007-03-03 23:54:06 UTC
(In reply to comment #5)
> it seems like the
> 4.2.52_p4 update should have been pulled in as an RDEPEND of python-2.4.4. 

Nevermind that, db-4.3.29-r2 is the highest installed version, so that's all that's strictly needed.  I'll see about fixing the --depclean code to prune the slots that aren't strictly required.
Comment 7 Zac Medico gentoo-dev 2007-03-04 00:40:55 UTC
Created attachment 112004 [details, diff]
make depclean prune unneeded slots

This patch, in svn r6161, makes depclean prune unneeded slots so that it is consistent with the world update algorithm.
Comment 8 Zac Medico gentoo-dev 2007-03-04 03:15:15 UTC
This has been released in 2.1.2.1.