On 09/07/2012 11:17 AM, Fabian Groffen wrote: > No, not a GLEP, per se. I'm trying to understand what sub-slot does and > is. I think I'm starting to understand now. However, for this feature > to be added to an EAPI, IMO it would be nice if there are resources that > make it for most developers very clear how this feature should be used > (and how not), and what kind of problems it can solve. > > I guess real-life examples, more extensively described than you did > before, with exactly where it goes wrong, and how the situation is > improved would help.
Perhaps some of the greatest frustrations for Gentoo users stem from the lack of support for automatic rebuild of packages when necessary. Imagine how nice it would be if necessary rebuilds would automatically occur when appropriate, so that you wouldn't experience build failures that require you to manually intervene by running revdep-rebuild, perl-cleaner, or something like that. And there are other kinds of necessary rebuilds that don't trigger build failures, but lead to runtime failures that are noticed much later (like xorg driver failures after a major xorg-server update). Sub-slots can be used to solve the bulk of problems like these that our users have had to deal with manually. > Eh, no. Now it just always breaks when you perform a downgrade, and > revdev-rebuild or @preserved-libs won't help you. I prefer that you > give best practices how to use sub-slots to make Portage also able to do > a recompile of bar when libfnord in the same SLOT gets downgraded. > (Because minors are used for compatible changes -- additions -- to the > ABI.) > (And the recompile is preferably done against the headers of the > downgraded version, but with the newer version's lib still around, such > that if this is a vital binary such as Python, it will not break down -- > however, this is most likely too much to ask.) It might be worthwhile to try come up with some way to handle minor downgrades in some later EAPI, but it adds complexity. Meanwhile, sub-slots are a relatively simple extension to slot-operator deps, and they are poised to greatly improve user experience (via automatic rebuilds) if they are included in EAPI 5. -- Thanks, Zac