On 11/20/2014 12:19 PM, Zac Medico wrote: > On 11/19/2014 11:59 AM, Andrew Savchenko wrote: >> Hello, >> >> On Mon, 17 Nov 2014 21:55:48 -0800 Zac Medico wrote: >>> On 11/17/2014 09:47 PM, Andrew Savchenko wrote: >>>> I use 2.2.14 on both hosts (and usually latest ~x86 portage is >>>> there). I thought that running fixpackages should be enough to run >>>> emerge with --dynamic-deps=n. >>> >>> It depends on how badly the installed deps have diverged from the >>> corresponding ebuilds in the tree. >> >> I tried fixpackages. It fixed some problems and looks like >> dependencies resolution became faster. But not all problems are >> fixed and I can't use --dynamic-deps n on both systems for now; >> and emerge @changed-deps fails due to numerous conflicts, blocks, >> unsatisfied deps (this is not surprising, since it doesn't try to >> update all packages in tree). >> >> By the way, is there any way to unroll conflict lists in portage >> output? I mean if I have following: >> >> (dev-lang/ghc-7.6.3-r1:0/7.6.3::gentoo, installed) pulled in by >> >=dev-lang/ghc-6.8.2:0/7.6.3= required by >> (dev-haskell/random-1.0.1.1-r1:0/1.0.1.1::gentoo, installed) >> ^^^^^^^^^ >> (and 68 more with the same problem) >> >> How can I see all list of these 68 packages? Sometimes this feature is >> really desired, e.g. if I don't want to update all @world but need to >> apply GLSA fix which leads to similar conflicts. I can't find any >> switch in emerge manual. > > There's currently no switch for this. However, you can use a a command > like this to see all installed packages that pull in your installed ghc: > > emerge -pv --depclean dev-lang/ghc > > I've filed a feature request bug for the switch that you have requested: > > https://bugs.gentoo.org/show_bug.cgi?id=529988
I forgot, we have a --verbose-conflicts option already. >> As for hitomi box, it is both slower and have much older packages, >> so I'm still struggling to fix conflicts and other issues. Results >> will be available later. > > From your results, it seems that _select_pkg_highest_available would be > an obvious thing to optimize. This method already uses memoization, but > the cache is entirely discarded each time that a package is added to the > graph. I will see about making it salvage as much cache as possible when > a package is added. I've written a patch, and it gives good results. On one of my computers with this patch, 'emerge -puvDN @world' takes 15% less time, and results in 58% fewer _select_pkg_highest_available_imp calls: https://bugs.gentoo.org/show_bug.cgi?id=530010 -- Thanks, Zac