Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 149527 - portage-2.1.2_pre1-r4 'emerge -up world' doesn't update direct dependencies of world packages
Summary: portage-2.1.2_pre1-r4 'emerge -up world' doesn't update direct dependencies o...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS, REGRESSION
Depends on:
Blocks: 147007
  Show dependency tree
 
Reported: 2006-09-29 08:30 UTC by MATSUI Tetsushi
Modified: 2006-10-01 13:31 UTC (History)
0 users

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


Attachments
attempt to emulate old --update behavior by pulling in direct dependencies of world and system (world_update.patch,469 bytes, patch)
2006-09-30 02:53 UTC, Zac Medico
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description MATSUI Tetsushi 2006-09-29 08:30:50 UTC
With portage-2.1.2_pre1-r4, emerge -up world shows only

[ebuild     U ] media-sound/alsa-utils-1.0.12 [1.0.11]
[ebuild     U ] dev-libs/elfutils-0.123 [0.122]
[ebuild     U ] dev-python/pylint-0.12.1 [0.11.0]
[ebuild     U ] dev-lang/swig-1.3.29-r1 [1.3.29] USE="-tcl% -tk%"
[ebuild     U ] media-sound/alsa-tools-1.0.12 [1.0.11]
[ebuild     U ] media-gfx/gimp-2.3.11 [2.3.10]
[ebuild     U ] www-client/lynx-2.8.6_rc3 [2.8.6_rc1]
[ebuild     U ] app-emulation/wine-0.9.22 [0.9.21]
[ebuild     U ] app-office/texmacs-1.0.6-r1 [1.0.6]
[ebuild     U ] dev-util/bzr-0.10-r1 [0.10] USE="-test%"
[ebuild     U ] sys-boot/grub-0.97-r3 [0.97-r2]
[ebuild     U ] net-firewall/iptables-1.3.5-r4 [1.3.5-r1] USE="-imq% -l7filter%"
[ebuild     U ] app-portage/gentoolkit-0.2.3_pre1 [0.2.2]
[ebuild     U ] x11-libs/wxGTK-2.6.3.3 [2.6.3.2]

Despite of emerge -up pylint shows

[ebuild     U ] dev-python/astng-0.16.1 [0.16.0]
[ebuild     U ] dev-python/logilab-common-0.19.2 [0.15.0] USE="-test%"
[ebuild     U ] dev-python/pylint-0.12.1 [0.11.0]

Both astng and logilab-common packages don't appear in world dependencies.
They should appear since pylint is in the world list.


Here's my emerge --info

Portage 2.1.2_pre1-r4 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.17-gentoo-r8 i586)
=================================================================
System uname: 2.6.17-gentoo-r8 i586 AMD-K6(tm) 3D+ Processor
Gentoo Base System version 1.12.5
Last Sync: Fri, 29 Sep 2006 06:50:01 +0000
ccache version 2.4 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.0-r2, 2.0.28
dev-lang/python:     2.3.5-r2, 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
dev-util/confcache:  [Not Present]
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
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i586-pc-linux-gnu"
CFLAGS="-march=k6-3 -O2"
CHOST="i586-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 /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-march=k6-3 -O2"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache digest distlocks metadata-transfer notitles sandbox sfperms strict userfetch userpriv"
GENTOO_MIRRORS="http://mirror.gentoo.gr.jp/ http://distfiles.gentoo.org/"
LANG="ja_JP.eucJP"
LINGUAS="ja en it de fr es nl zh ko nb sv ru pl cs hr zh_CN zh_TW ar"
MAKEOPTS="-j1"
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 /usr/portage/local/layman/gentoojp"
SYNC="rsync://rsync.jp.gentoo.org/gentoo-portage/"
USE="x86 3dnow X alsa apache2 apm berkdb bitmap-fonts bzip2 cjk cli crypt cups dlloader doc dri eds elibc_glibc emacs emboss encode esd foomaticdb fortran freewnn gcl gdbm gif gnome gpm gstreamer gtk gtk2 imlib input_devices_keyboard input_devices_mouse ipv6 isdnlog jpeg kernel_linux leim libg++ libwww linguas_ar linguas_cs linguas_de linguas_en linguas_es linguas_fr linguas_hr linguas_it linguas_ja linguas_ko linguas_nb linguas_nl linguas_pl linguas_ru linguas_sv linguas_zh linguas_zh_CN linguas_zh_TW mad mikmod motif mp3 mpeg ncurses nls nptl nptlonly ogg opengl oss pam pcre perl png pppd python qt3 qt4 quicktime readline reflection sdl session spell spl ssl tcltk tcpd tiff truetype truetype-fonts type1-fonts udev unicode userland_GNU video_cards_fbdev video_cards_r128 video_cards_vesa vorbis xml xmms xorg xv zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Zac Medico gentoo-dev 2006-09-29 09:54:53 UTC
This seems very similar to bug 149208.  I suppose we can treat packages from world like we do command line arguments for that bug.  Then, direct dependencies of world packages will be updated with `emerge -up world`.  I can see how this may be useful if you don't want to use --deep for some reason.
Comment 2 Zac Medico gentoo-dev 2006-09-29 10:21:49 UTC
Actually, considering that portage considers "system" as a part of "world", I'm not sure that it's really worth it to only update direct dependencies rather than just use --deep. 
Comment 3 MATSUI Tetsushi 2006-09-29 23:25:55 UTC
I thought --deep was a kind of sub-option for --update.
They have completely different usefulness.
I update only --update dependencies daily, and --deep dependencies monthly or so.

The point is that the behavior of --update has changed drastically.
It has lost consistency between for world and for a package in world.
Comment 4 Zac Medico gentoo-dev 2006-09-30 01:34:15 UTC
Some of the internals are different now, leading to different semantics.  At the moment, --update is only useful for updating packages that have been specified on the command line along with their direct dependencies.  I think it would be useful to extend that behavior to world and system, but separately.  That way one could update world and direct dependencies of world while leaving system packages untouched.  With --deep, all dependencies (direct and indirect) are updated.  Currently, there is no need to specify --update when --deep has already been specified.
Comment 5 Zac Medico gentoo-dev 2006-09-30 02:53:54 UTC
Created attachment 98430 [details, diff]
attempt to emulate old --update behavior by pulling in direct dependencies of world and system

I think this patch should emulate the old behavior of `emerge --update world`.  If you save it as /tmp/world_update.patch, then you can apply it as follows:

cd /usr/lib/portage
patch -p0 < /tmp/world_update.patch
Comment 6 MATSUI Tetsushi 2006-09-30 06:55:32 UTC
Thank you for the patch.  It solved my problem.
Comment 7 Zac Medico gentoo-dev 2006-09-30 11:24:45 UTC
This is in svn r4567.
Comment 8 Carsten Lohrke (RETIRED) gentoo-dev 2006-09-30 17:42:15 UTC
(In reply to comment #4)
> I think it would be useful to extend that behavior to world and system, but separately.

World has always been the set including all other sets - speak system ;). While I do think it may be nice to so something like e.g. emerge (- world system),  (- world kde) or (+ kde use_defined_set), I do think world should be kept as it is. Changing the semantic is something to discuss on gentoo-dev imho - and if it'd be decided to change it, we'd need to make our userbase aware about it.
Comment 9 Zac Medico gentoo-dev 2006-09-30 17:56:15 UTC
(In reply to comment #8)
> World has always been the set including all other sets - speak system ;).

I don't want to "rock the boat" too much, so that's why I've applied the patch to emulate the old behavior.  When we get broader support for package sets it will open up lots of other possibilities.
Comment 10 Zac Medico gentoo-dev 2006-10-01 13:31:15 UTC
This has been released in 2.1.2_pre2-r1.