Gentoo Archives: gentoo-dev

From: Sergei Trofimovich <slyfox@g.o>
To: "Michał Górny" <mgorny@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
Date: Fri, 26 Jun 2020 16:47:37
Message-Id: 20200626174724.614c9b15@sf
In Reply to: Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7 by "Michał Górny"
1 On Fri, 26 Jun 2020 11:38:58 +0200
2 Michał Górny <mgorny@g.o> wrote:
3
4 > On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:
5 > > On Fri, 26 Jun 2020 07:29:45 +0000
6 > > Michał Górny <mgorny@g.o> wrote:
7 > >
8 > > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@g.o> napisał(a):
9 > > > > On Sat, 20 Jun 2020 16:29:53 +0100
10 > > > > Sergei Trofimovich <slyfox@g.o> wrote:
11 > > > >
12 > > > > > On Sat, 20 Jun 2020 16:05:38 +0200
13 > > > > > Michał Górny <mgorny@g.o> wrote:
14 > > > > >
15 > > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:
16 > > > > > > > Give maintainers the chance to act and flag packages that pull in
17 > > > > python:2.7.
18 > > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@g.o>
19 > > > > > > > ---
20 > > > > > > > profiles/package.deprecated | 4 ++++
21 > > > > > > > 1 file changed, 4 insertions(+)
22 > > > > > > >
23 > > > > > > > diff --git a/profiles/package.deprecated
24 > > > > b/profiles/package.deprecated
25 > > > > > > > index a756e845f47..bb661571962 100644
26 > > > > > > > --- a/profiles/package.deprecated
27 > > > > > > > +++ b/profiles/package.deprecated
28 > > > > > > > @@ -17,6 +17,10 @@
29 > > > > > > >
30 > > > > > > > #--- END OF EXAMPLES ---
31 > > > > > > >
32 > > > > > > > +# Sergei Trofimovich <slyfox@g.o> (2020-06-20)
33 > > > > > > > +# Deprecated. Consider poring to python 3 and drop support for
34 > > > > python2.
35 > > > > > > > +dev-lang/python:2.7
36 > > > > > > > +
37 > > > > > > > # Sergei Trofimovich <slyfox@g.o> (2020-02-22)
38 > > > > > > > # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
39 > > > > > > > # Use that instead. Or even better use none of them. It's a
40 > > > > > >
41 > > > > >
42 > > > > > > It will trigger the same for packages that support *only*
43 > > > > > > Python 2.7, as well as these that support 2.7 in addition to 3
44 > > > > because
45 > > > > > > they have 2.7 deps.
46 > > > > >
47 > > > > > If we expect actions by developers on both cases I don't see a
48 > > > > problem with that.
49 > > > >
50 > > > > Pushed as:
51 > > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
52 > > > > with full text being:
53 > > > >
54 > > > > +# Sergei Trofimovich <slyfox@g.o> (2020-06-26)
55 > > > > +# Deprecated.
56 > > > > +# - optional python:2.7 dependency should be dropped if no reverse
57 > > > > +# dependencies are using it.
58 > > > > +# - mandatory python:2.7 depepndency will require package porting
59 > > > > +# or package removal if no reverse dependencies are using it.
60 > > > > +dev-lang/python:2.7
61 > > >
62 > > > You've just introduced 829 CI warnings
63 > >
64 > > That's the intention.
65 > >
66 > > > effectively disabling the ability to distinguish *new* problems in these packages.
67 > >
68 > > Correct. Citing above:
69 > >
70 > > "If we expect actions by developers on both cases I don't see a problem with that."
71 > >
72 > > I assume we still do.
73 >
74 > Not exactly. You've pinpointed the wrong target.
75 >
76 > First of all, we want people to support Python 3. Removing support for
77 > Python 2 is a secondary goal.
78
79 What is the desired end state here? All packages that depend on
80 python should support python3?
81
82 > Flagging packages that support Python 2 in addition to Python 3
83 > and cause no trouble in py2 cleanup is doubtful.
84
85 What is "py2 cleanup"? I still struggle to understand what packages
86 require change and which do not. Is there one pager doc that explains
87 a few things for me:
88 - How packages are picked for masking? Maybe we can deprecate them
89 instead? Or we (I) can write a bit of code that flags packages requiring
90 maintainers' attention.
91 - What is the expected end state for the "py2 cleanup"?
92
93 The doc would also be a good link to add to recently added "# Py2 only"
94 masks as well.
95
96 > Flagging packages that support 2+3 because of their revdeps is not
97 > helpful at all. It's just noise to the maintainer who can't remove py2
98 > because of revdeps.
99
100 I agree it can be spammy if we expect to have many packages with
101 python2 support for an extended period of time (3+ months). If it's
102 seen by others as too noisy I can revert the commit now.
103
104 > Flagging dev-python/pypy* which needs py2 but is entirely outside
105 > the eclass system is not helpful at all.
106
107 To pick a concrete example: from what I read above I don't see why
108 app-misc/golly was masked for removal.
109
110 --
111
112 Sergei

Replies