1 |
On Sun, 9 Apr 2017 17:52:44 -0400 |
2 |
Michael Orlitzky <mjo@g.o> wrote: |
3 |
|
4 |
> On 04/09/2017 12:15 PM, William L. Thomson Jr. wrote: |
5 |
> > Not sure if this is practical, it may be less work if the use of |
6 |
> > Python and Ruby versions ( maybe others ) is reversed. Rather than |
7 |
> > adding all the versions that the ebuild supports. What if it only |
8 |
> > included versions it did not support? |
9 |
> |
10 |
> Even if this would work better, it would require retraining all |
11 |
> developers, completely rewriting several eclasses, tons of |
12 |
> documentation, and a few thousand ebuilds. |
13 |
|
14 |
There could be things done to ease any transition. |
15 |
|
16 |
Regarding python, the first of which could be to ignore any targets |
17 |
beyond say 2.7 and just starting enabling support. That would mostly |
18 |
leave just effected packages, ones that break with some 3.x version but |
19 |
not with another. |
20 |
|
21 |
As for modifying a few thousand ebuilds; |
22 |
|
23 |
1, That is already the case now. If a new python or ruby version comes |
24 |
out. All those ebuilds have to modified to support the new target. That |
25 |
argument isn't really valid. |
26 |
|
27 |
2. As for the actual changes that can be done pragmatically if just |
28 |
swapping out the TARGETS variable. Or even if more advanced |
29 |
requiring changing lines. If its the same change to all. I have a |
30 |
script, ebuild-batcher[1], that can safely make any change to a |
31 |
massive number of ebuilds. I have used it a few times on hundreds of |
32 |
ebuilds. It can easily handle thousands. |
33 |
|
34 |
> No one's going to jump on that bandwagon without a proof-of-concept |
35 |
> that works much better than what we have now. |
36 |
|
37 |
Anyone who has worked with a Gentoo system long enough that has Python |
38 |
and/or Ruby has experienced this. You end up having multiple TARGETS |
39 |
and are constantly messing with those variables adding new ones, |
40 |
removing old, etc. It creates a considerable amount of work. |
41 |
|
42 |
I have been fighting over ruby23 that I cannot seem to avoid. Despite |
43 |
having had ruby24 for I think at least a week or more. My build server |
44 |
stopped due to needing ruby23. I have been fighting with stuff around |
45 |
that. More than likely anything bound to ruby23 target works with |
46 |
ruby24. Its mostly how the system is designed. |
47 |
|
48 |
I could be wrong in that case and something require ruby23, that does |
49 |
not with ruby24. However most those packages do not have a ruby24 |
50 |
target, so its hard to say if its negated or just not enabled yet. |
51 |
Being a new version, all have to be modified for such. |
52 |
|
53 |
1. https://github.com/Obsidian-StudiosInc/ebuild-batcher |
54 |
|
55 |
-- |
56 |
William L. Thomson Jr. |