Rich Freeman <ri...@gentoo.org> wrote: > On Tue, Jul 22, 2014 at 4:06 PM, Martin Vaeth <mar...@mvath.de> wrote: >> ...but by introducing all the additional complications Ian >> has mentioned. More precisely: What happens if new dependencies >> are introduced which are not satisfied? >> One has to face it: Portage must not just silently "update" the >> database and thus silently produce a /var/db which does not >> satisfy its own dependencies... > > While this is problematic, I think portage actually can handle this > (but I haven't tested this recently).
The problem here arises if new dependencies with automatic subslots (foo/bar:=) are added which are not yet installed: Portage cannot fill these correctly. Solving all these difficulties appears harder to me than implementing dynamic deps correctly. > I think that allowing devs to instruct portage to update VDB with > USE/dep/etc changes is potentially less problematic than having > portage trying to guess what the right thing to do is. I completely agree. The idea of minor revisions is just one of several possibilities to achieve this; there are several others (e.g. another metadata variable describing which versions can be updated by skipping the prepare/config/compile/merge phases). The implementation, however, would be rather similar: Usually you need a new EAPI (or in case of noninvasive change might discuss whether to change EAPI's retroactively), and some "reemerging without the time-consuming phases" must be implemented.