Gentoo Archives: gentoo-python

From: "Michał Górny" <mgorny@g.o>
To: Dirkjan Ochtman <djc@g.o>
Cc: gentoo-python <gentoo-python@l.g.o>, Gentoo Python Project <python@g.o>
Subject: Re: [gentoo-python] Re: Package supporting single implementation only -- auxiliary variable solution
Date: Mon, 19 Nov 2012 10:16:43
Message-Id: 20121119111730.5381023a@pomiocik.lan
In Reply to: [gentoo-python] Re: Package supporting single implementation only -- auxiliary variable solution by Dirkjan Ochtman
1 On Mon, 19 Nov 2012 10:57:52 +0100
2 Dirkjan Ochtman <djc@g.o> wrote:
3
4 > On Thu, Nov 15, 2012 at 10:44 PM, Michał Górny <mgorny@g.o> wrote:
5 > > Of course, a MIP would not be allowed to depend on a SIP.
6 >
7 > How big of a problem would this be?
8
9 None at all. Just stating the obvious fact, in case anyone wanted
10 to try doing that or point out that my solution is not well though
11 out :).
12
13 > > To sum it up quickly, the aux variable solution:
14 > >
15 > > Advantages:
16 > > - painless for most of our users,
17 > > - explicit, transparent,
18 > > - simple and matching SIP->SIP and SIP->MIP deps.
19 > >
20 > > Disadvantages:
21 > > - a bit redundant,
22 >
23 > Given the requirement for enabling multiple implementation in
24 > PYTHON_TARGETS, which I feel strongly about, there has to be a choice
25 > which one of the implementations will be target for SINGLE_TARGET
26 > packages. Adding a variable for that, therefore, doesn't seem
27 > redundant.
28
29 Well, some people could argue that if they set PYTHON_TARGETS
30 to a single value (like python3.2), they need to set an auxiliary
31 variable as well. But that's the lesser evil, I think.
32
33 > > - does not solve the issue for py3-only SIP packages,
34 >
35 > I guess this might become a problem in the future. Once we have both
36 > py2-only SIP packages and py3-only SIP packages, we have a bit of a
37 > problem. Maybe we should think more about that.
38
39 Let's grep the tree then (and a few random overlays I'm using)...
40
41 I have used the following command:
42
43 $ find -name '*.ebuild' -exec grep -L SUPPORT_PYTHON_ABIS {} + \
44 | xargs grep PYTHON_DEPEND
45
46 I have counted 1372 ebuilds not supporting multiple Python
47 implementations, in 648 packages.
48
49 Of those ebuilds:
50 - 4 ebuilds (1 pkg) support both Python 2 & 3:
51 - media-gfx/hugin;
52 - 8 ebuilds (3 pkgs) require Python 3:
53 - sys-power/upower with USE=test,
54 - media-gfx/blender (3.2+),
55 - net-irc/znc with USE=python.
56
57 Considering that's ~0.6% of all packages, I'd say we could just be lazy
58 and use package.use for them.
59
60 > > - may require explicit action when changing PYTHON_TARGETS.
61 >
62 > Yeah, I don't see a problem with this. In particular, it seems
63 > unlikely that many people will setup their system to exclude the
64 > default SINGLE_TARGET impl (2.7) from their TARGETS.
65
66 --
67 Best regards,
68 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature