Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Deadlines for next Python implementations
Date: Mon, 01 Jun 2020 21:04:48
Message-Id: 399ebac1c82d545464c19fbdc2e2424c84cb1647.camel@gentoo.org
In Reply to: Re: [gentoo-dev] [RFC] Deadlines for next Python implementations by Patrick McLean
1 On Mon, 2020-06-01 at 13:34 -0700, Patrick McLean wrote:
2 > On Mon, 01 Jun 2020 22:27:19 +0200
3 > Michał Górny <mgorny@g.o> wrote:
4 >
5 > > Hi, everyone.
6 > >
7 > > I'd like to be more proactive in avoiding the mess like Python 3.6->3.7
8 > > switch were. For this reason, I think it would be better to set
9 > > and publish some early deadlines. Even if we aren't going to strictly
10 > > keep to them, it would help people realize how much time there is left
11 > > to finish the preparations.
12 > >
13 > >
14 > > Python 3.6→3.7 migration
15 > > ========================
16 > > We've already switched the profiles but there are still some unmigrated
17 > > packages. We will continue either migrating them or last riting if
18 > > migration seems unlikely to happen. Nevertheless, it is wortwhile to
19 > > set some final deadlines. My proposal is:
20 > >
21 > >
22 > > 2020-08-01 Python 3.7 migration deadline
23 > >
24 > > After this date, we lastrite all remaining packages that haven't been
25 > > ported. This gives people roughly two months, with a ping one month
26 > > from now.
27 > >
28 > > 2020-09-15 Python 3.6 target removal
29 > >
30 > > As usual, the interpreter will be kept a bit longer, then moved to
31 > > ::python. This accounts for some extra time if people decide to
32 > > recover last rited packages last minute.
33 >
34 > Given that 2020-08-15 is still well over a year before the upstream EOL,
35 > this might be a little premature. How about we the deprecation dates back
36 > by 4 months? We can still have a similar schedule, just a little later. That
37 > way we are deprecating 3.6 less than a year before the EOL upstream.
38 >
39 > We can keep the 2.7 removal as-is.
40
41 I don't mind shifting the removal.
42
43 >
44 > > Python 3.7→3.8 migration
45 > > ========================
46 > > The interpreter is stable but there's still lot of migration work to be
47 > > done. Good news is that because of the delay with 3.7, many packages
48 > > are getting 3.7+3.8 or even 3.7+3.8+3.9 simultaneously, so there will be
49 > > less work in the future.
50 > >
51 > >
52 > > 2020-07-01 Python 3.8 target stable-unmasking goal
53 > >
54 > > This is not really a deadline but I'd like to aim for resolving
55 > > depgraph issues and stabilizing everything needed to unmask python3_7
56 > > target on stable. Initial set of stablereqs was filed already,
57 > > and we'll be unmasking the target as soon as the depgraph is clean.
58 > >
59 > > 2020-09-01 Python 3.8 migration warning
60 > >
61 > > At this point we tell people it's about time to start actively
62 > > updating their packages.
63 >
64 > Under my suggested timeline, I would say we do this 2020-12-01.
65
66 ...but I do mind this. Python 3.8 is something we should very soon,
67 and waiting another 6 months to tell people to start testing will just
68 make it into another mess like Python 3.7 were.
69
70 > > 2020-12-01 Python 3.8 migration deadline
71 > >
72 > > We lastrite all the unmigrated packages.
73 >
74 > This could be pushed back to 2020-05-01 to not be too close to the 3.6
75 > removal. I personally do not have any strong feelings either way about
76 > 3.7, so I would be fine removing 3.6 and 3.7 at the same time if that
77 > is easier.
78
79 I would actually prefer pushing for 3.8 earlier and removing them
80 at the same time. If anything, this would let people who haven't moved
81 off 3.6 yet go straight to 3.8 without having them do another update
82 in a few months.
83
84 > > 2021-01-15 Python 3.7 target removal
85 > >
86 > > As above.
87 > >
88 > >
89 > > Python 2.7 removal
90 > > ==================
91 > > I would like to continue removing py2.7 from packages where possible,
92 > > and slowly lastriting where clearly impossible. However,
93 > > for the remaining packages I'd like to set a hard deadline.
94 > >
95 > >
96 > > 2021-01-01 Final Python 2.7 deadline
97 > >
98 > > That's one year after upstream's EOL. At this point, we last rite
99 > > all the remaining py2.7 packages.
100 > >
101 > > 2021-02-15 Python 2.7 target removal
102 > >
103 > > All packages relying on the target are removed. The interpreter
104 > > stays for as long as we need it.
105 > >
106 > >
107 > > General goal
108 > > ============
109 > > As a general goal, I'd like to set timelines like this once we decide
110 > > that the next interpreter goes stable. The exact lengths are highly
111 > > dependent on properties of the next target. For example, I suspect
112 > > Python 3.9 will be easier for us; so far my testing has shown issues
113 > > that are rather easy to solve.
114 > >
115 >
116 > Here is an attempt at updating version of ASCII art, from what
117 > I can tell, the 'w' at the 3.7->3.8 warning probably belonged
118 > in the 3.7 column, I moved it.
119
120 Thanks.
121
122 > As I said above, I am personally
123 > fine if we make 3.6 and 3.7 removals close together (even at
124 > the same time).
125 >
126 > Combined timeline
127 > =================
128 > From the above dates:
129 >
130 > 2.7 3.6 3.7 3.8
131 > 2020-07-01 | | | u py3.8 target unmasked
132 > | | | |
133 > | | | |
134 > | | | |
135 > | | | |
136 > | | | |
137 > | | | |
138 > 2020-12-01 | | w | py3.7→3.8 migr. warning
139 > | | | |
140 > | | | |
141 > 2021-01-01 m | | | py2.7 pkg last rites
142 > | | | |
143 > | | | |
144 > 2021-02-01 | m | | py3.6 pkg last rites
145 > | | | |
146 > 2021-02-15 x | | | py2.7 pkg removal
147 > 2021-03-15 x | | py3.6 pkg removal
148 > | |
149 > | |
150 > | |
151 > 2021-05-01 m | py3.7 pkg last rites
152 > | |
153 > | |
154 > 2021-06-15 x | py3.7 pkg removal
155 > |
156 > v
157 >
158 >
159
160 --
161 Best regards,
162 Michał Górny

Attachments

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

Replies

Subject Author
Re: [gentoo-dev] [RFC] Deadlines for next Python implementations Patrick McLean <chutzpah@g.o>