PEP 569 updated and marked as final. The Downloads page and the devguide updated. The branch is deleted, and a new 3.8 tag is placed in its stead for posterity.
Thanks, 3.8. You were a good one. You brought us assignment expressions, and with that, the Steering Councils. But this wasn’t the only cool new feature.
Things that we take for granted today, like the debugging equals sign in f-strings, or positional-only arguments, or audit events, or the asyncio REPL, were all added in that version. Pickle protocol 4 became the default in 3.8 and still is the default in 3.13. That will change in 3.14 where we’re switching to pickle protocol 5, also added in Python 3.8.
And who could forget that before Python 3.8 it was impossible to continue
in a finally:
block?
If you’re still a user of Python 3.8, I don’t blame you, it’s a lovely version. But it’s time to move on to newer, greater things. Whether it’s typing generics in built-in collections, pattern matching, except*
, low-impact monitoring, or a new pink REPL, I’m sure you’ll find your favorite new feature in one of the versions we still support. So upgrade today!
Signed,
the 3.8 RM.