Gentoo Archives: gentoo-dev

From: Alec Warner <antarus@g.o>
To: Gentoo Dev <gentoo-dev@l.g.o>
Cc: Matt Turner <mattst88@g.o>
Subject: Re: [gentoo-dev] [PATCH] Split python implementations definition to separate eclass
Date: Fri, 27 Mar 2020 22:51:52
Message-Id: CAAr7Pr_03CJMP04OAZ9ArXPmwbBRZ9fn38U18N-3xvjf+RKLsg@mail.gmail.com
In Reply to: Re: [gentoo-dev] [PATCH] Split python implementations definition to separate eclass by Patrick McLean
1 On Fri, Mar 27, 2020 at 3:11 PM Patrick McLean <chutzpah@g.o> wrote:
2
3 > On Fri, 27 Mar 2020 14:48:53 -0700
4 > Matt Turner <mattst88@g.o> wrote:
5 >
6 > > On Thu, Mar 26, 2020 at 2:03 PM Patrick McLean <chutzpah@g.o>
7 > wrote:
8 > > >
9 > > > This patch splits the definition of _PYTHON_ALL_IMPLS and
10 > > > _python_impl_supported to a separate eclass, this allows overlays
11 > > > to easily support a different set of python implementations than
12 > > > ::gentoo without having to fork the entire suite of eclasses.
13 > >
14 > > (I think the issue is that you have some packages that still need
15 > > Python 3.4. Correct me if I'm wrong)
16 > >
17 > > How many packages do you need to work with Python 3.4? Presumably just
18 > > a couple and then a pile of dependencies in ::gentoo?
19 > >
20 >
21 > For our particular purpose, it's more complicated than that. We do not
22 > expect or want ::gentoo to try support Python 3.4 in any way. We have an
23 > overlay that is shared on a lot of machines, some of those machines are
24 > older than others. As such we still have ebuilds that only support
25 > python3_4 that still exist in the overlay. We would like it if the
26 > existence of these packages in the overlay, do not cause metadata
27 > generation or dependency calculation to explode on the more up-to-date
28 > machines.
29 >
30
31 > We do not need Python 3.4 packages to be installable on the newer
32 > machines, we just need them not to explode.
33 >
34
35 Couldn't you simply remove the ebuilds from the overlay entirely in this
36 case? It's my understanding that on the machines with the packages
37 installed, the merged package metadata is being used (which is why those
38 machines work) and since the newer machines don't have this merged package
39 metadata, they don't work properly.
40
41 -A
42
43
44 >
45 > I am trying to come up with a solution that *any* overlay can use, I
46 > am happy to do work towards that end. Basically, it would be very
47 > nice if there was a minimal eclass that handles all the python
48 > version compatibility. Almost everything in the eclasses does not care
49 > about versions.
50 >
51 > This is not meant to be something just for our usage, we want this to
52 > be usable for *any* overlay, and are more than happy to make things as
53 > generic as possible. If some overlay wants to support Python 3.10 alpha,
54 > resurrect jython support, or add Ironpython support, without forking
55 > all the eclasses, I would like to think that could be doable as well.
56 >
57 >

Replies