1 |
On Tue, 25 Sep 2012 12:54:39 -0700 |
2 |
Brian Harring <ferringb@×××××.com> wrote: |
3 |
|
4 |
> On Tue, Sep 25, 2012 at 08:58:07PM +0200, Micha?? G??rny wrote: |
5 |
> > On Tue, 25 Sep 2012 14:47:33 -0400 |
6 |
> > Ian Stakenvicius <axs@g.o> wrote: |
7 |
> > |
8 |
> > > Based on the above I do expect the reference implementation would also |
9 |
> > > need to change. I expect, for instance, that the PM's |
10 |
> > > metadata-handling would need to occur as normal even though none of |
11 |
> > > the package's phase functions would run, that is, *DEPEND |
12 |
> > > (realistically RDEPEND as that should be the only one affected here, |
13 |
> > > maybe PDEPEND too) and USE/PKGUSE would get updated. Since portage |
14 |
> > > would not be re-emerging the package from the tree the original ebuild |
15 |
> > > would remain. |
16 |
> > |
17 |
> > Yes, unless I'm missing something that's the intent. I will re-read |
18 |
> > and update the GLEP a bit sometime this week. |
19 |
> |
20 |
> There's a fairly strong user interaction component here, along w/ |
21 |
> potential nastyness for ebuilds (the proposal assume that a flag will |
22 |
> be toggable in all cases within an ebuild if IUSE_RUNTIME specified; I |
23 |
> guarantee instances where that fails can be found in the tree if a |
24 |
> basic audit was done). Additionally, this *is* useless if it's done |
25 |
> in a form the UI an't display/handle; Ciaran may bitch about |
26 |
> REQUIRED_USE's UI (which I knew going in was going to be |
27 |
> problematic, just to be clear), but he's right on that front. |
28 |
> |
29 |
> Additionally, this needs to be thought out how it'll interact with |
30 |
> eclasses; what stacking, etc. It doesn't cover the basics there to |
31 |
> say the least. |
32 |
|
33 |
The proposal didn't cover eclasses at all. Is there a need to do so or |
34 |
are we chasing some kind of perfection based on filling all unused |
35 |
slots? |
36 |
|
37 |
> Pretty much, this needs an implementation, partial conversion of the |
38 |
> tree to demonstrate it. |
39 |
> |
40 |
> Just to prove that fricking point; if you had tried implementing this, |
41 |
> a full investigation of what's involved alone, you'd have spotted that |
42 |
> the core of the proposal is based on a wrong assumption. |
43 |
> |
44 |
> Portage doesn't write unfinalized DEPEND/RDEPEND/PDEPEND to the VDB. |
45 |
|
46 |
There's a footnote there, saying: |
47 |
|
48 |
The package manager has to ensure that all relevant information is |
49 |
stored in the installed package metadata. |
50 |
|
51 |
> > > I expect, as a corollary to this, that a rebuild would be necessary if |
52 |
> > > (on-disk-IUSE_RUNTIME xor in-ebuild-IUSE_RUNTIME) was non-empty |
53 |
> > > (--newuse) or resulted in any flags that are in USE |
54 |
> > > (--reinstall=changed-use). IMO this would be necessary to ensure the |
55 |
> > > local ebuild copy and all related metadata for it gets updated in vdb. |
56 |
> > |
57 |
> > I think that's a common package manager logic and it's out of scope |
58 |
> > of the GLEP. |
59 |
> |
60 |
> Portage doesn't do physical updates last I saw- if it did, well, |
61 |
> that's fairly dangerous. Only thing stored in the VDB is the ebuild |
62 |
> and the environment dump, and the environment dump is what's ran from. |
63 |
> |
64 |
> You cannot sanely pick part the dump and try to intermix current |
65 |
> ebuilds; rephrasing, I'll kick in the head anyone who tries that. |
66 |
|
67 |
What are you talking about? As far as I can see, we are talking here |
68 |
about *full rebuild*. |
69 |
|
70 |
-- |
71 |
Best regards, |
72 |
Michał Górny |