1 |
On 3/27/20 4:12 PM, Alec Warner wrote: |
2 |
> On Fri, Mar 27, 2020 at 3:54 PM Patrick McLean <chutzpah@g.o |
3 |
> <mailto:chutzpah@g.o>> wrote: |
4 |
> |
5 |
> On Fri, 27 Mar 2020 15:51:35 -0700 |
6 |
> Alec Warner <antarus@g.o <mailto:antarus@g.o>> wrote: |
7 |
> |
8 |
> > On Fri, Mar 27, 2020 at 3:11 PM Patrick McLean |
9 |
> <chutzpah@g.o <mailto:chutzpah@g.o>> wrote: |
10 |
> > |
11 |
> > > On Fri, 27 Mar 2020 14:48:53 -0700 |
12 |
> > > Matt Turner <mattst88@g.o <mailto:mattst88@g.o>> |
13 |
> wrote: |
14 |
> > > |
15 |
> > > > On Thu, Mar 26, 2020 at 2:03 PM Patrick McLean |
16 |
> <chutzpah@g.o <mailto:chutzpah@g.o>> |
17 |
> > > wrote: |
18 |
> > > > > |
19 |
> > > > > This patch splits the definition of _PYTHON_ALL_IMPLS and |
20 |
> > > > > _python_impl_supported to a separate eclass, this allows |
21 |
> overlays |
22 |
> > > > > to easily support a different set of python implementations than |
23 |
> > > > > ::gentoo without having to fork the entire suite of eclasses. |
24 |
> > > > |
25 |
> > > > (I think the issue is that you have some packages that still need |
26 |
> > > > Python 3.4. Correct me if I'm wrong) |
27 |
> > > > |
28 |
> > > > How many packages do you need to work with Python 3.4? |
29 |
> Presumably just |
30 |
> > > > a couple and then a pile of dependencies in ::gentoo? |
31 |
> > > > |
32 |
> > > |
33 |
> > > For our particular purpose, it's more complicated than that. We |
34 |
> do not |
35 |
> > > expect or want ::gentoo to try support Python 3.4 in any way. We |
36 |
> have an |
37 |
> > > overlay that is shared on a lot of machines, some of those |
38 |
> machines are |
39 |
> > > older than others. As such we still have ebuilds that only support |
40 |
> > > python3_4 that still exist in the overlay. We would like it if the |
41 |
> > > existence of these packages in the overlay, do not cause metadata |
42 |
> > > generation or dependency calculation to explode on the more |
43 |
> up-to-date |
44 |
> > > machines. |
45 |
> > > |
46 |
> > |
47 |
> > > We do not need Python 3.4 packages to be installable on the newer |
48 |
> > > machines, we just need them not to explode. |
49 |
> > > |
50 |
> > |
51 |
> > Couldn't you simply remove the ebuilds from the overlay entirely |
52 |
> in this |
53 |
> > case? It's my understanding that on the machines with the packages |
54 |
> > installed, the merged package metadata is being used (which is why |
55 |
> those |
56 |
> > machines work) and since the newer machines don't have this merged |
57 |
> package |
58 |
> > metadata, they don't work properly. |
59 |
> > |
60 |
> |
61 |
> Sometimes we have to fix the older machines, so we have to keep |
62 |
> everything around until none of our machines are using it any more. |
63 |
> |
64 |
> |
65 |
> +Zac Medico <mailto:zmedico@g.o> |
66 |
> |
67 |
> I'm not following something then. One of the proposals earlier was "do |
68 |
> not generate metadata for these ebuilds" which to me reads as "keep |
69 |
> these ebuilds in the repo, but the ebuilds themselves will not be |
70 |
> usable[0]." Then you go on to say that old machines need to be fixed |
71 |
> occasionally, so either you need to reinstall a package or update it. |
72 |
> The reinstall might be strictly possible from the vdb metadata, but the |
73 |
> upgrade would require working repository metadata, which we said earlier |
74 |
> we didn't want to generate. |
75 |
|
76 |
The ebuilds may or may not be usable, depending on the snapshot of |
77 |
::gentoo eclasses that they're paired with. |
78 |
|
79 |
> (There is a different question of whether you could use a binpkg binhost |
80 |
> to basically build versions of these packages and use those for |
81 |
> reinstalls, because at least the binpkg metadata *is* nominally fixed in |
82 |
> time and can be re-used easily and doesn't require eclass magic in |
83 |
> theory, as the eclasses are bound in the environment.tar?) I suspect in |
84 |
> essence it might be easier to just do what Robin suggested and use a |
85 |
> frozen ::gentoo on the older machines. |
86 |
|
87 |
We do use a frozen snapshot of ::gentoo on older machines. The issue is |
88 |
that we've got a repository of ebuilds that can be used with many |
89 |
different snapshots of ::gentoo, but we'd like to be able to support |
90 |
python implementations that may not be officially supported by a |
91 |
particular snapshot of ::gentoo eclasses. |
92 |
|
93 |
> -A |
94 |
> |
95 |
> [0] Perhaps the earlier proposals were ..slightly off. With more |
96 |
> information it seems like what you want is to be able to easily maintain |
97 |
> some python-3.4 ebuilds in your overlay, even though Gentoo is on to 3.6 |
98 |
> (and soon 3.7). I personally think the conversation would have gone much |
99 |
> better had you just come out and said "hey we have a bunch of internal |
100 |
> overlays with 3.4 and we need to keep the packages for another N months, |
101 |
> how can we do this easily?" Instead of whatever happened. I tend to |
102 |
> agree with mgorny that it's not simply carrying this single patch, but |
103 |
> in reality it's a stronger commitment to build some kind of method to |
104 |
> let you continue to support older python versions. Future changes might |
105 |
> impact your ability to support your ebuilds and we have no real way of |
106 |
> knowing if we broke you..so I can see why (irrespective of the tone of |
107 |
> the conversation) he would be reticent to pick that up. |
108 |
|
109 |
If you break us then that's fine, we'll deal with it. We're just asking |
110 |
for a way to tweak the set supported of python implementations, and |
111 |
whether or not those implementations actually work in practice is not an |
112 |
upstream gentoo problem. |
113 |
-- |
114 |
Thanks, |
115 |
Zac |