From: Patrick McLean <chutzpah@gentoo.org>
To: "Michał Górny" <mgorny@gentoo.org>
Cc: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] [RFC] Deadlines for next Python implementations
Date: Mon, 1 Jun 2020 14:19:30 -0700 [thread overview]
Message-ID: <20200601141930.4ad746fd@moya.linuxfreak.ca> (raw)
In-Reply-To: <399ebac1c82d545464c19fbdc2e2424c84cb1647.camel@gentoo.org>
On Mon, 01 Jun 2020 23:04:38 +0200
Michał Górny <mgorny@gentoo.org> wrote:
> On Mon, 2020-06-01 at 13:34 -0700, Patrick McLean wrote:
> > On Mon, 01 Jun 2020 22:27:19 +0200
> > Michał Górny <mgorny@gentoo.org> wrote:
> >
> > > Hi, everyone.
> > >
> > > I'd like to be more proactive in avoiding the mess like Python 3.6->3.7
> > > switch were. For this reason, I think it would be better to set
> > > and publish some early deadlines. Even if we aren't going to strictly
> > > keep to them, it would help people realize how much time there is left
> > > to finish the preparations.
> > >
> > >
> > > Python 3.6→3.7 migration
> > > ========================
> > > We've already switched the profiles but there are still some unmigrated
> > > packages. We will continue either migrating them or last riting if
> > > migration seems unlikely to happen. Nevertheless, it is wortwhile to
> > > set some final deadlines. My proposal is:
> > >
> > >
> > > 2020-08-01 Python 3.7 migration deadline
> > >
> > > After this date, we lastrite all remaining packages that haven't been
> > > ported. This gives people roughly two months, with a ping one month
> > > from now.
> > >
> > > 2020-09-15 Python 3.6 target removal
> > >
> > > As usual, the interpreter will be kept a bit longer, then moved to
> > > ::python. This accounts for some extra time if people decide to
> > > recover last rited packages last minute.
> >
> > Given that 2020-08-15 is still well over a year before the upstream EOL,
> > this might be a little premature. How about we the deprecation dates back
> > by 4 months? We can still have a similar schedule, just a little later. That
> > way we are deprecating 3.6 less than a year before the EOL upstream.
> >
> > We can keep the 2.7 removal as-is.
>
> I don't mind shifting the removal.
>
> >
> > > Python 3.7→3.8 migration
> > > ========================
> > > The interpreter is stable but there's still lot of migration work to be
> > > done. Good news is that because of the delay with 3.7, many packages
> > > are getting 3.7+3.8 or even 3.7+3.8+3.9 simultaneously, so there will be
> > > less work in the future.
> > >
> > >
> > > 2020-07-01 Python 3.8 target stable-unmasking goal
> > >
> > > This is not really a deadline but I'd like to aim for resolving
> > > depgraph issues and stabilizing everything needed to unmask python3_7
> > > target on stable. Initial set of stablereqs was filed already,
> > > and we'll be unmasking the target as soon as the depgraph is clean.
> > >
> > > 2020-09-01 Python 3.8 migration warning
> > >
> > > At this point we tell people it's about time to start actively
> > > updating their packages.
> >
> > Under my suggested timeline, I would say we do this 2020-12-01.
>
> ...but I do mind this. Python 3.8 is something we should very soon,
> and waiting another 6 months to tell people to start testing will just
> make it into another mess like Python 3.7 were.
That's fine with me, I don't mind having a warning about packages not
migrated to 3.8 earlier. I just would to keep 3.6 around for until next
year to give us a little more time to migrate.
> > > 2020-12-01 Python 3.8 migration deadline
> > >
> > > We lastrite all the unmigrated packages.
> >
> > This could be pushed back to 2020-05-01 to not be too close to the 3.6
> > removal. I personally do not have any strong feelings either way about
> > 3.7, so I would be fine removing 3.6 and 3.7 at the same time if that
> > is easier.
>
> I would actually prefer pushing for 3.8 earlier and removing them
> at the same time. If anything, this would let people who haven't moved
> off 3.6 yet go straight to 3.8 without having them do another update
> in a few months.
That's fine with me. We are actually taking this approach, skipping 3.7
entirely any moving directly to 3.8.
> > > 2021-01-15 Python 3.7 target removal
> > >
> > > As above.
> > >
> > >
> > > Python 2.7 removal
> > > ==================
> > > I would like to continue removing py2.7 from packages where possible,
> > > and slowly lastriting where clearly impossible. However,
> > > for the remaining packages I'd like to set a hard deadline.
> > >
> > >
> > > 2021-01-01 Final Python 2.7 deadline
> > >
> > > That's one year after upstream's EOL. At this point, we last rite
> > > all the remaining py2.7 packages.
> > >
> > > 2021-02-15 Python 2.7 target removal
> > >
> > > All packages relying on the target are removed. The interpreter
> > > stays for as long as we need it.
> > >
> > >
> > > General goal
> > > ============
> > > As a general goal, I'd like to set timelines like this once we decide
> > > that the next interpreter goes stable. The exact lengths are highly
> > > dependent on properties of the next target. For example, I suspect
> > > Python 3.9 will be easier for us; so far my testing has shown issues
> > > that are rather easy to solve.
> > >
> >
> > Here is an attempt at updating version of ASCII art, from what
> > I can tell, the 'w' at the 3.7->3.8 warning probably belonged
> > in the 3.7 column, I moved it.
>
> Thanks.
>
> > As I said above, I am personally
> > fine if we make 3.6 and 3.7 removals close together (even at
> > the same time).
> >
> > Combined timeline
> > =================
> > From the above dates:
> >
> > 2.7 3.6 3.7 3.8
> > 2020-07-01 | | | u py3.8 target unmasked
> > | | | |
> > | | | |
> > | | | |
> > | | | |
> > | | | |
> > | | | |
> > 2020-12-01 | | w | py3.7→3.8 migr. warning
> > | | | |
> > | | | |
> > 2021-01-01 m | | | py2.7 pkg last rites
> > | | | |
> > | | | |
> > 2021-02-01 | m | | py3.6 pkg last rites
> > | | | |
> > 2021-02-15 x | | | py2.7 pkg removal
> > 2021-03-15 x | | py3.6 pkg removal
> > | |
> > | |
> > | |
> > 2021-05-01 m | py3.7 pkg last rites
> > | |
> > | |
> > 2021-06-15 x | py3.7 pkg removal
> > |
> > v
> >
> >
>
> --
> Best regards,
> Michał Górny
>
next prev parent reply other threads:[~2020-06-01 21:19 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-01 20:27 [gentoo-dev] [RFC] Deadlines for next Python implementations Michał Górny
2020-06-01 20:34 ` Patrick McLean
2020-06-01 21:04 ` Michał Górny
2020-06-01 21:19 ` Patrick McLean [this message]
2020-06-01 20:49 ` Matthias Maier
2020-06-01 21:07 ` Michał Górny
2020-06-02 1:54 ` Aaron Bauman
2020-06-02 5:54 ` [gentoo-dev] [RFCv2] " Michał Górny
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200601141930.4ad746fd@moya.linuxfreak.ca \
--to=chutzpah@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
--cc=mgorny@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox