1 |
On 28 August 2013 16:00, Michał Górny <mgorny@g.o> wrote: |
2 |
> Hello, all. |
3 |
> |
4 |
> I think I'm finally ready to put all the breaking awesomeness that was |
5 |
> waiting for the git eclasses. However, I'm wondering what's the best |
6 |
> way of proceeding with it. |
7 |
> |
8 |
> We've just lately finished the git->git-2 eclass migration. The old |
9 |
> eclass is no longer used and is marked for removal in a few days. |
10 |
[...] |
11 |
> However, I would like to do a few breaking changes to simplify |
12 |
> the eclass and its maintenance: |
13 |
[...] |
14 |
> But it's not all removing. There are also a few things I would like to |
15 |
> change/add: |
16 |
[...] |
17 |
> |
18 |
> How should I proceed? Assuming that git-2.eclass is used by live |
19 |
> ebuilds only, and those ebuilds can be subject to random breakage, |
20 |
> I could supposedly just start changing API of the eclass. |
21 |
> |
22 |
> On the other hand, I could also go for beautiful git-r1.eclass, |
23 |
> and cleanly switch the packages. |
24 |
> |
25 |
> Then, I could go for something involving the two -- create a new |
26 |
> git-r1.eclass that has API fully stripped, and start deprecating |
27 |
> features from git-2.eclass. We would be able to switch to git-r1 to |
28 |
> test offending packages safely, then do a big switch of remaining |
29 |
> packages and make the two eclasses temporarily equivalent. |
30 |
> |
31 |
> What are your thoughts? |
32 |
|
33 |
You are planning to do more than trivial changes, so you should make a |
34 |
new eclass (-version). Ebuilds rely on eclass functionality to be |
35 |
stable, so please don't introduce unnecessary breakage. |
36 |
|
37 |
This is another indication that we really need a better mechanism for |
38 |
eclass versioning. But that would deserve it's own separate thread. |
39 |
|
40 |
As for naming, I recommend you do a +1 to avoid confusion, so |
41 |
git-3.eclass, or git-r3.eclass. Again, here it would be good to agree |
42 |
on a convention for everyone to follow. |
43 |
|
44 |
-- |
45 |
Cheers, |
46 |
|
47 |
Ben | yngwin |
48 |
Gentoo developer |