On Thu, 1 Apr 2010 00:56:08 -0700 Brian Harring <ferri...@gmail.com> wrote: > Actually, I'm well aware I did. See, if PMS wasn't developed in a > void you'd know build, bootstrap, acl and friends were already a > known issue with use cycle breaking.
So since it's a known issue, why are you pushing for VALID_USE "because it allows cycle breaking" without also pushing for a solution to flags that can't be toggled at the same time? > pkg_setup: ran just before the build of the pkg, after the pkg's > DEPENDS are all built. Meaning you *can* do has_version checks, > kernel config checks, etc, because the proceeding deps are now > satisfied. Except that they might change, because, as we established on the bug, two packages that aren't interdependent can affect each other's assumptions, and can be built in parallel. pkg_pretend does not alter the problem here. > Cherry picking the argument again. Main != whole, meaning the > majority reason I could see w/in council logs for supporting > pkg_pretend was USE constraint validation. > > As I've said, and as you seem to finally understand, VALID_USE isn't > a replacement for pkg_pretend- it just replaces the *main* usage of > it. You said on the bug that you wanted pkg_pretend removed in favour of VALID_USE. I don't object to VALID_USE; I object to you claiming that it replaces pkg_pretend, and I object to you claiming that using VALID_USE instead of pkg_pretend is enough to allow cycle breaking. > > Simply adding VALID_USE won't let you do cycle breaking. You also > > need extensive lists of which flags for which packages can safely > > be toggled and when without breaking the system, and the only way > > you'll get those lists is if developers care enough to update their > > ebuilds to provide them. > > That's one view, but sure, I'll run with it. > > The thing is, *without* VALID_USE you cannot do use cycle breaking > *period*. executable vs data for the representation of the > constraints (as I've spelled out for you 3 times now). You also can't do it *with* VALID_USE, unless you also have extensive help from ebuilds. Why are you pushing for VALID_USE without also proposing a way for the package mangler to be told which flags it can change? > pkg_pretend however completely disallows even *doing* use cycle > breaking. How in the hell is that a better next step? pkg_pretend is a pragmatic, cheap solution that solves a larger number of problems, whilst not ruling out anything that Portage will realistically be able to do in a relevant timeframe. If, in the distant future, Portage supports use cycle breaking, then people can switch their ebuilds to use VALID_USE when they're also updating their ebuilds to export the cycle breaking information the package mangler requires to do it without trashing a system. But since we don't know exactly what that information looks like yet, we might as well just stick with the single solution that solves all of the problems. -- Ciaran McCreesh
signature.asc
Description: PGP signature