1 |
> On Sunday 07 November 2004 22:12, Patrick Lauer wrote: |
2 |
> >Also, what happens if someone uses an overlay with a |
3 |
> > better/newer/older eclass version? As long as there is no distinction |
4 |
> > between versions, I can imagine lots of *ahem* interesting problems that |
5 |
> > could be avoided. |
6 |
> |
7 |
> Um, you should rename (e.g. datecode) it, if you put it in your overlay. |
8 |
> User's overlay is nothing we have to care about. If you want to be absolutely |
9 |
> safe, then use a snapshot, otherwise live with it, that Gentoo is a moving |
10 |
> target. I can't see a benefit in eclass versioning, that outweighs the added |
11 |
> maintenance overhead. If a new eclass is really needed, then it's always |
12 |
> possible to add one, anyways. All eclasses have to be compatible to all |
13 |
> ebuilds in the Portage tree, if not, open a bug report. |
14 |
|
15 |
You're right, they should be compatible with all ebuilds in the |
16 |
current portage tree. But if I understand things right, they in fact |
17 |
have to be backwards compatible with all ebuilds that ever have been |
18 |
in the portage tree for eternity. |
19 |
|
20 |
The reason is (please correct me if I'm wrong) that, as far as I |
21 |
can see, when an ebuild is installed on a user's machine, the ebuild |
22 |
is saved, but not the eclasses it depends on. Should the user later |
23 |
decide that the package should be removed from his system (or |
24 |
updated), then the pkg_prerm and pkg_postrm functions from the *old* |
25 |
ebuild are executed in conjunction with the *current* versions of |
26 |
the eclasses it depends on. And the older an ebuild is, the more |
27 |
likely it gets that the eclass has evolved beyond compatibility in |
28 |
the meantime. |
29 |
|
30 |
While this is usually unlikely to cause major breakage, it's still |
31 |
an annoyance. |
32 |
|
33 |
Cheers, |
34 |
Andres |
35 |
|
36 |
|
37 |
|
38 |
-- |
39 |
gentoo-dev@g.o mailing list |