$ emerge -pNuD --with-bdeps=y @world These are the packages that would be merged, in order: Calculating dependencies ..... done! [nothing] But: $ emerge --pretend --update --verbose subversion These are the packages that would be merged, in order: Calculating dependencies ... done! [ebuild U ] dev-vcs/subversion-1.8.5 [1.7.14] USE="-apache2 -berkdb -ctypes-python -debug -doc -dso -extras -gnome-keyring -http% -java -kde -nls -perl -python -ruby -sasl {-test} -vim-syntax (-webdav-neon%*) (-webdav-serf%)" PYTHON_TARGETS="python2_7 -python2_6" 6,721 kB Total: 1 package (1 upgrade), Size of downloads: 6,721 kB And: $ emerge --pretend --depclean --with-bdeps=y --verbose subversion !!! You have no system list. !!! Proceeding is likely to break your installation. Calculating dependencies .... done! dev-vcs/subversion-1.7.14 pulled in by: kde-base/oxygen-icons-4.12.49.9999 requires dev-vcs/subversion[webdav-neon] >>> No packages selected for removal by depclean Packages installed: 869 Packages in world: 339 Packages in system: 0 Required packages: 869 Number to remove: 0 Of course oxygen-icons-4.12.49.9999 is the live version from the kde overlay, but its subversion dep ultimately traces back to subversion.eclass in the main gentoo repo. In the ebuild: KDE_SCM="svn" inherit kde4-base In kde4-base.eclass: inherit kde4-functions In kde4-functions.eclass: # determine the build type if [[ ${PV} = *9999* ]]; then KDE_BUILD_TYPE="live" else KDE_BUILD_TYPE="release" fi export KDE_BUILD_TYPE Back in kde4-base.eclass: if [[ ${KDE_BUILD_TYPE} = live ]]; then case ${KDE_SCM} in svn) inherit subversion ;; git) inherit git-r3 ;; esac fi In subversion.eclass (in the gentoo tree): case "${EAPI:-0}" in 0|1) EXPORT_FUNCTIONS src_unpack pkg_preinst DEPEND="dev-vcs/subversion" ;; *) EXPORT_FUNCTIONS src_unpack src_prepare pkg_preinst DEPEND="|| ( dev-vcs/subversion[http] dev-vcs/subversion[webdav-neon] dev-vcs/subversion ;; esac Perhaps portage's failure to detect the candidate update is due to the change in required-use, since the currently installed subversion-1.7.4 is filling it with USE=webdav-neon, while the new version doesn't have that flag and would fill it with USE=http, which would require a USE flag change since currently USE=-http (well, it's unset with -* in USE)? If that's the case, since I used --deep and --with-bdeps=y, shouldn't it still alert me to the change, with the same required USE change warning it gives me when I try either specifically emerging subversion or do an emerge --empty-tree @world? The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by kde-base/oxygen-icons-4.12.49.9999::kde # required by kde-base/kbounce-4.12.49.9999::kde # required by @jed.kde.base.kdegames # required by @selected # required by @world (argument) >=dev-vcs/subversion-1.8.5 http Meanwhile, note that I discovered the update when I tried to merge a different live-kde package that requires subversion via the exact same kde4-base/kde4-functions/subversion eclass inheritance thread detailed above: $ emerge --with-bdeps=y --pretend --update --deep kde-base-artwork These are the packages that would be merged, in order: Calculating dependencies ..... done! [ebuild N ] dev-util/scons-2.3.0 USE="-doc" PYTHON_TARGETS="python2_7 -python2_6" [ebuild U ] dev-libs/apr-1.5.0-r2 [1.5.0] [ebuild U ] dev-libs/apr-util-1.5.3-r1 [1.5.3] [ebuild N ] net-libs/serf-1.3.3 USE="-kerberos" [ebuild U ] dev-vcs/subversion-1.8.5 [1.7.14] USE="http%*" [ebuild N *] kde-base/kde-base-artwork-4.11.49.9999 USE="(-aqua)" The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by kde-base/kde-base-artwork-4.11.49.9999::kde # required by kde-base-artwork (argument) >=dev-vcs/subversion-1.8.5 http But the exact same command for oxygen-icons, already installed, doesn't prompt for the update despite --update --deep --with-bdeps=y $ emerge --with-bdeps=y --pretend --update --deep oxygen-icons These are the packages that would be merged, in order: Calculating dependencies .... done! [nothing] Actually, I believe it *IS* the required-use change, since being about thru filing this bug I decided to set HTTP in my USE flags in preparation for doing the merge manually, and once I did so, I again tried the above command and THIS time it wants to do the merge: $ emerge --with-bdeps=y --pretend --update --deep oxygen-icons These are the packages that would be merged, in order: Calculating dependencies ..... done! [ebuild N ] dev-util/scons-2.3.0 USE="-doc" PYTHON_TARGETS="python2_7 -python2_6" [ebuild U ] dev-libs/apr-1.5.0-r2 [1.5.0] [ebuild U ] dev-libs/apr-util-1.5.3-r1 [1.5.3] [ebuild N ] net-libs/serf-1.3.3 USE="-kerberos" [ebuild U ] dev-vcs/subversion-1.8.5 [1.7.14] USE="http%*" So the required-use change is unexpectedly taking precedence over the specifically expressed --update --deep --with-bdeps=y, despite the clearly expressed intentions of the user feeding in those options. =:^(
Please post your emerge --info and the output of "emerge --with-bdeps=y --pretend --update --deep oxygen-icons --debug" with the http flag disabled (your second last example).
Created attachment 369716 [details] emerge --info
Created attachment 369720 [details] emerge -puD --debug oxygen-icons Thanks. Sorry about forgetting --info at first. It has been so long since I filed a bug that actually needed it that... Anyway here's the debug, compressed to *.xz as bugzilla said it was too big uncompressed. However... 1) This is after I already did the subversion upgrade. If you need me to revert to the old version and run it again, I can. 2) This is a STDOUT redirect. But I still got a lot of on-screen output, presumably from STDERR. You didn't specify, do you need STDERR too? If so do you want /just/ it posted now, or would a combined file of both STDOUT/STDERR be more useful?
(In reply to Duncan from comment #3) > > 1) This is after I already did the subversion upgrade. If you need me to > revert to the old version and run it again, I can. Is there some problem left? If yes, please explain what it is, if not then you'll need to revert. > > 2) This is a STDOUT redirect. But I still got a lot of on-screen output, > presumably from STDERR. You didn't specify, do you need STDERR too? If so > do you want /just/ it posted now, or would a combined file of both > STDOUT/STDERR be more useful? Just do: emerge --with-bdeps=y --pretend --update --deep oxygen-icons --debug &> log
Closing this as I didn't get around to that revert and retry, and things are enough changed by now that I'm not sure it's relevant any longer. Resolved/worksforme since I manually did the upgrade.