1 |
On Sat, 10 Jul 2010 01:34:37 -0700 |
2 |
Brian Harring <ferringb@×××××.com> wrote: |
3 |
|
4 |
> On Sat, Jul 10, 2010 at 09:30:42AM +0300, Petteri RRRty wrote: |
5 |
> > The standing policy is still not to remove any public functionality from |
6 |
> > eclasses. If we decide to start removing functionality the council |
7 |
> > should set common rules for it. |
8 |
> |
9 |
> Just adding a note on this one- the original technical reason for |
10 |
> this policy (portage inability to run from just the saved env dump) |
11 |
> is no longer an issue. |
12 |
> |
13 |
> If people want to allow eclasses to have fluid APIs (specifically |
14 |
> removal of functionality), that's a discussion that needs to start on |
15 |
> the dev level. |
16 |
> |
17 |
> Anyone got strong opinions on this one? |
18 |
|
19 |
I don't believe there ever was such a policy, except for pkg_{pre,post}rm |
20 |
because of the mentioned technical limitations (which were fixed in portage |
21 |
2-3 years ago now). If there is such a policy then I've violated it on |
22 |
several occasions :). In fact, isn't the generally accepted method of |
23 |
deprecating an eclass to remove all functionality and replace it with a |
24 |
message in global scope and a "# @DEAD" tag? |
25 |
|
26 |
I don't see the advantage of keeping unmaintained broken code no one should |
27 |
use around in eclasses. You can argue that removing eclass functionality can |
28 |
potentially break ebuilds in overlays, but if you follow that line of |
29 |
reasoning then really we should never remove any package from the tree |
30 |
because it may be a dependency of something, somewhere. |
31 |
|
32 |
So I'd like to see a policy that treats public functions in eclasses the same |
33 |
as the last rites policies for package removal: minimum 30 day deprecation |
34 |
period, mail to dev-announce, etc. |
35 |
|
36 |
|
37 |
-- |
38 |
fonts, gcc-porting, and it's all by design |
39 |
toolchain, wxwidgets to keep us from losing our minds |
40 |
@ gentoo.org EFFD 380E 047A 4B51 D2BD C64F 8AA8 8346 F9A4 0662 |