Notice: While Javascript is not essential for this website, your interaction with the content will be limited. Please turn Javascript on for the full experience.

Python 3.9.0rc1

Release Date: Aug. 11, 2020

This is the first release candidate of Python 3.9

This release, 3.9.0rc1, is the penultimate release preview. Entering the release candidate phase, only reviewed code changes which are clear bug fixes are allowed between this release candidate and the final release. The second candidate and the last planned release preview is currently planned for 2020-09-14.

Call to action

We strongly encourage maintainers of third-party Python projects to prepare their projects for 3.9 compatibility during this phase. As always, report any issues to the Python bug tracker.

Please keep in mind that this is a preview release and its use is not recommended for production environments.

Installer news

This is the first version of Python to default to the 64-bit installer on Windows. The installer now also actively disallows installation on Windows 7. Python 3.9 is incompatible with this unsupported version of Windows.

Major new features of the 3.9 series, compared to 3.8

Some of the new major new features and changes in Python 3.9 are:

  • PEP 584, Union Operators in dict
  • PEP 585, Type Hinting Generics In Standard Collections
  • PEP 593, Flexible function and variable annotations
  • PEP 602, Python adopts a stable annual release cadence
  • PEP 615, Support for the IANA Time Zone Database in the Standard Library
  • PEP 616, String methods to remove prefixes and suffixes
  • PEP 617, New PEG parser for CPython
  • BPO 38379, garbage collection does not block on resurrected objects;
  • BPO 38692, os.pidfd_open added that allows process management without races and signals;
  • BPO 39926, Unicode support updated to version 13.0.0;
  • BPO 1635741, when Python is initialized multiple times in the same process, it does not leak memory anymore;
  • A number of Python builtins (range, tuple, set, frozenset, list, dict) are now sped up using PEP 590 vectorcall;
  • A number of Python modules (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) now use multiphase initialization as defined by PEP 489;
  • A number of standard library modules (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) are now using the stable ABI defined by PEP 384.

  • (Hey, fellow core developer, if a feature you find important is missing from this list, let Ɓukasz know.)

More resources

And now for something completely different

Announcer: (Eric Idle) Welcome to the 'Phone-In'. Today we have on our panel our resident Psychiatrist, a Psychiatrist who isn't resident but is staying with the other one because he can't bear to go home and a Psychiatrist who has lived with the first one but who when the second one arrived felt alienated and since has undergone a total personality change. Our subject tonight is Farming and our first caller is from Redding. (phone rings)
Woman: (Carol Cleveland) Hello.
Announcer: Hello. Welcome to 'Phone-In' what is your question to the panel?
Woman: Is Vic there?
Announcer: Is Vic there? Is Vic there, Doctor Rogers?
Rogers: (Graham Chapman) Well the problem here is a simple one. The caller wants to know if Vic is there... and in this case Vic, as far as I can tell...
Dibbs: (John Cleese) Can I interrupt, Alan?
Announcer: Yes, of course.
Dibbs: I agree with what Rogers was going to say. As far as we can tell, Vic isn't here. The only thing she can do is to keep calling and if Vic comes in we'll let her know.
Announcer: Does that answer your question?
Norman: (Michael Palin) Hello.
Announcer: Hello.
Woman: Vic?

Full Changelog

Files

Version Operating System Description MD5 Sum File Size GPG
Gzipped source tarball Source release f98d8ac7c8b2bf3fd887d989dbb0f2b8 25247669 SIG
XZ compressed source tarball Source release 835f3cb29e4065b9a2dea1c7b9bfc37f 18798364 SIG
macOS 64-bit installer Mac OS X for OS X 10.9 and later 0297dcb8f82ae5f27f8b4bff1613e994 29640671 SIG
Windows help file Windows 4d6fd98c7cc1ce8525e5c66a0a5eb9e0 8734372 SIG
Windows x86-64 embeddable zip file Windows for AMD64/EM64T/x64 636807ae74e4314dca2f8bbbdbdf2684 8384341 SIG
Windows x86-64 executable installer Windows for AMD64/EM64T/x64 ba2192e04064e3bb846e130cc00bd7cd 28072336 SIG
Windows x86-64 web-based installer Windows for AMD64/EM64T/x64 f35f63685c76fe946c53bb5a716f159a 1363840 SIG
Windows x86 embeddable zip file Windows 9e4daceb329431ae83f39216ef1e2e26 7550372 SIG
Windows x86 executable installer Windows ad2f7849189581dedbb7dcf163717c46 26978744 SIG
Windows x86 web-based installer Windows ab79535243e9834a0ee15cfe109a77ee 1328400 SIG