Gentoo Archives: gentoo-dev

From: Michael Orlitzky <mjo@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: Please port your packages to Python 3.8
Date: Fri, 04 Sep 2020 12:40:28
Message-Id: cc194831-2a95-7c46-e06c-1914636bf1f2@gentoo.org
In Reply to: [gentoo-dev] Re: Please port your packages to Python 3.8 by Martin Vaeth
1 On 2020-09-04 04:39, Martin Vaeth wrote:
2 >
3 >> That's completely legal according to the PMS, and also the
4 >> smart thing to do:
5 >
6 > s/smart/dumb/, but necessary for a dumb PM
7 Word games notwithstanding, these are the package managers described by
8 the PMS.
9
10
11 >> sourcing a few thousand lines of bash *just in case* there was an
12 >> important change in some ebuild is a huge waste of users' time.
13 >
14 > That's wrong: The metadata has to be (re)generated anyway,
15 > independent of whether this is a revision bump or just a modification.
16 > For most syncing methods the bash sourcing does not happen on the
17 > user's machine, and on those machines where the metadata is actually
18 > calculated, there are checksums and timestamps used to minimize the
19 > effort. From this perspective there is no difference between a
20 > modification or a revision bump.
21
22 This is Hollywood accounting =)
23
24 Who generates the metadata when I `git pull`? Or in overlays? It's me,
25 but if you record that wasted time in a different "metadata generation"
26 ledger, then it looks like I've saved a bunch of time because the "bash
27 sourcing" ledger reads zero.
28
29 Even if I believe in a metadata angel and if we pretend that the PMS
30 requires the metadata to be there, then rebuilding whenever metadata
31 changes is still not 100% correct (as you point out), because it often
32 rebuilds pointlessly. But that's getting into a harder problem.
33
34
35 > ... costs thousands of users a lot of compilation time, although
36 > the recompilation is completely pointless for each of them, but
37 > done only to keep the PM simpler.
38
39 The recompilation isn't always pointless. In the present scenario, the
40 rebuild is what installs the python-3.8 copy of the program.
41
42 I'm not arguing that this is the best way to do things, but that it's
43 the only way to do them given what's in the PMS today. The foundation is
44 always looking for ways to spend money; maybe it should pay a few people
45 to sit around and think about this for a week. In any case, until a
46 better solution finds its way into the PMS, we should make the revisions.

Replies

Subject Author
[gentoo-dev] Re: Please port your packages to Python 3.8 Martin Vaeth <martin@×××××.de>