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

Bug 476350

Summary: emerge --keep-going should be able to do everything not blocked.
Product: Portage Development Reporter: Robert White <rwhite>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: CONFIRMED ---    
Severity: enhancement CC: esigra, marcec, orzel
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 300071    

Description Robert White 2013-07-10 06:06:18 UTC
When a package is blocked and the user has supplied --keep-going, and one or more packages not related to the blockage have been selected, the un blocked package shoudl still be built.

Example: packages A, B, C, D and E are due for update.

B needs C
C is blocked for some reason (so neither B nor C are safe to install/update).

A, D and E should still be processed if --keep-going has been specified.

If C is blocked because it's update conflicts with E, then A and D should still be processed.

Basically if something comes up blocked a list should be made of all the packages, then every package in the the blocking set is removed. Then the dependent packages who's install-or-update are dependent on the blocked update are removed, etc. A package that can be built using the existing install is not removed. Lather-rinse-repeat. If that itterative process finishes with a non-empty list then that is a list of packages that are "innocent" of the conflicts in the system and they can be safely updated.

Real World Example:

I am running ~amd64. app-emulation/emul-linux-x86-medialibs and app-emulation/emul-linux-x86-soundlibs are blocked right now with the the ABI_X86="64 32" make flag. This is bleeding edge and likely to snag.

None of that blockage should be holding back xterm, dhcp, dosfstools or ntp (etc, etc, etc).

Reproducible: Always
Comment 1 Thomas Capricelli 2018-11-20 02:54:07 UTC
It's getting worse and worse every week, probably because more and more packages fail now in the main tree. The result is that we cant update system at all, because there's always one package failing early and emerge wont keep going after this. This is getting critical.