Summary: | Some built-slot dependencies are not rebuilt automatically on update (needs --rebuild-if-new-slot by default) | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Nikita Zlobin <cook60020tmp> |
Component: | Core - Interface (emerge) | Assignee: | Portage team <dev-portage> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | esigra, pacho |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=693242 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 155723 |
Description
Nikita Zlobin
2017-02-03 22:44:54 UTC
(In reply to Nikita Zlobin from comment #0) > I propose to add option like rebuild-all-build-slot for such cases (if not > even change default befavior). It's intended to trigger the rebuilds by default when they are appropriate, but the existing mechanism is complex and error-prone. For example, see bug 439688 were unnecessary rebuilds were triggered when an available update had to be skipped due to a dependency conflict. In order to improve the situation, it probably does make sense for it to assume that all things need to be rebuilt (as an initial approximation). After it has successfully built a dependency graph under this assumption, it could use that as a guide to assemble an optimal dependency graph that uses as many of the installed packages as possible (avoiding unnecessary rebuilds). Found solution: option --rebuild-if-new-slot does what's expected. Of course it will not help for restrictions like. In my opinion this option must be set by default. Whoever thinks it's better off - must have skill to easily reconfigure default flags for self. No matter, what's expected level for target auditory, there's also newcomers subset, for which default settings must be oriented. Also - for cases of ebuild writer mistakes, when they forget to make dependencies like ":=" (for those deps, which need that), there's possible "paranoid" mode, using --rebuild-if-new-ver. |