Gentoo Archives: gentoo-dev

From: Patrick McLean <chutzpah@g.o>
To: "Michał Górny" <mgorny@g.o>
Cc: gentoo-dev@l.g.o, William Hubbs <williamh@g.o>
Subject: Re: [gentoo-dev] [PATCH 0/1] allow extra implementations of python
Date: Thu, 26 Mar 2020 20:47:39
Message-Id: 20200326134731.5b67bb00@moya.linuxfreak.ca
In Reply to: Re: [gentoo-dev] [PATCH 0/1] allow extra implementations of python by "Michał Górny"
1 On Thu, 26 Mar 2020 21:11:11 +0100
2 Michał Górny <mgorny@g.o> wrote:
3
4 > On Thu, 2020-03-26 at 14:13 -0500, William Hubbs wrote:
5 > > There are situations in which downstream overlays need to have versions
6 > > of python which Gentoo no longer supports in the tree.
7 > >
8 > > Currently, the only way to do this is for the overlay author to fork
9 > > python-utils-r1.eclass. This is highly undesirable since it creates a
10 > > very significant maintenance burden for the overlay author.
11 >
12 > Is it preferable to create the maintenance burden on Gentoo developers
13 > instead? Is it fair that paid company developers shift the burden
14 > on people who work on Gentoo in their free time, and already have their
15 > plate full?
16
17 We have no intention of shifting maintenance burdens anywhere, we want
18 to make minor changes to make it easier for us to keep up. It's the
19 same as a Gentoo developer asking an upstream project to make minor
20 changes to their build system to support DESTDIR or a sandbox fix.
21
22 >
23 > > The simplest way would be to apply the following patch.
24 > > In this situation, all the overlay author
25 > > would have to do is adjust the PYTHON_COMPAT_ALLOW_EXTRA_IMPLS variable.
26 >
27 > ...which solves exactly zero problems because the eclass still doesn't
28 > support the implementation in question. The best it could do is sweep
29 > part of the problem under the carpet.
30
31 We don't care if it *actually* supports it, the ebuilds in question
32 aren't going to be installed on modern machines. We just want it to not
33 blow up in the global scope.
34
35 > Even if it miraculously works right now at all, it will probably fail or
36 > misbehave randomly. Any eclass change might break it. Then one cheap
37 > hack will serve as an excuse to add one more, and another.\
38 >
39 > > The other option would be to move _PYTHON_ALL_IMPLS and the
40 > > implementation of _python_impl_supported to a separate eclass, e.g.
41 > > python-impls-r1.eclass. This eclass could be forked freely downstream
42 > > without worrying about the other python eclasses.
43 >
44 > Again, this doesn't solve the problem. It just moves the problem
45 > elsewhere.
46 >
47
48 How does this not solve the problem? Overlays could trivially support
49 different implementations, without maintaining a lot of forks. We are
50 quite happy to do the work to split it out to a separate eclass.
51
52 > > Thoughts?
53 >
54 > I've already told you that if you want to fork, fork all eclasses. Then
55 > you wouldn't have to worry about internal API going out of sync.
56 >
57 > Or don't autoupdate ::gentoo when eclasses change.
58 >

Replies

Subject Author
Re: [gentoo-dev] [PATCH 0/1] allow extra implementations of python "Michał Górny" <mgorny@g.o>