Wednesday, October 15, 2025

Python 3.15.0 alpha 1

This is an early developer preview of Python 3.15

https://www.python.org/downloads/release/python-3150a1/

Major new features of the 3.15 series, compared to 3.14

Python 3.15 is still in development. This release, 3.15.0a1, is the first of seven planned alpha releases.

Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process.

During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up until the release candidate phase (2026-07-28). Please keep in mind that this is a preview release and its use is not recommended for production environments.

Many new features for Python 3.15 are still being planned and written. Among the new major new features and changes so far:

  • PEP 799: A dedicated profiling package for Python profiling tools
  • PEP 686: Python now uses UTF-8 as the default encoding
  • PEP 782: A new PyBytesWriter C API to create a Python bytes object
  • Improved error messages
  • (Hey, fellow core developer, if a feature you find important is missing from this list, let Hugo know.)

The next pre-release of Python 3.15 will be 3.15.0a2, currently scheduled for 2025-11-18.

More resources

And now for something completely different

And hence not only at substantiated times, upon well known separate feeding-grounds, could Ahab hope to encounter his prey; but in crossing the widest expanses of water between those grounds he could, by his art, so place and time himself on his way, as even then not to be wholly without prospect of a meeting.

Enjoy the new release

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the Python Software Foundation.

Regards from Helsinki before the first PyCon Finland in 9 years,

Your release team,
Hugo van Kemenade
Ned Deily
Steve Dower
Łukasz Langa

Tuesday, October 14, 2025

Python 3.13.9 is now available!

 

Python 3.13.9

 
 
3.13.9 is an expedited release containing a fix for one specific regression in Python 3.13.8:
  • gh-139783: Fix inspect.getsourcelines for the case when a decorator is followed by a comment or an empty line.

There are no other changes in this release, compared to 3.13.8.

More resources

  

Enjoy the new releases

 

Thanks to all of the many volunteers who help make Python Development and this release possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the Python Software Foundation.

Your expedited release team,
Your release team,
Thomas Wouters
Ned Deily
Steve Dower
Łukasz Langa

Thursday, October 9, 2025

Python 3.12.12, 3.11.14, 3.10.19 and 3.9.24 are now available!

 

Old-timer Release Party

We couldn’t just let Hugo have fun with 3.14.0, so here are new security releases of the venerated Python versions, 3.12 through 3.9!

Security content in these releases

 

XML-related

Archive-related

  • gh-130577: tarfile now validates archives to ensure member offsets are non-negative.
  • gh-139700: Now checking consistency of the zip64 end of central directory record. Added support for records with “zip64 extensible data” if there are no bytes prepended to the ZIP file.

HTML parsing-related

  • gh-135661: Fixed parsing start and end tags in html.parser.HTMLParser according to the HTML5 standard.
  • Whitespaces no longer accepted between </ and the tag name. E.g. </ script> does not end the script section.
  • Vertical tabulation (\v) and non-ASCII whitespaces no longer recognized as whitespaces. The only whitespaces are \t\n\r\f and space.
  • Null character (U+0000) no longer ends the tag name.
  • Attributes and slashes after the tag name in end tags are now ignored, instead of terminating after the first > in quoted attribute value. E.g. </script/foo=">"/>.
  • Multiple slashes and whitespaces between the last attribute and closing > are now ignored in both start and end tags. E.g. <a foo=bar/ //>.
  • Multiple = between attribute name and value are no longer collapsed. E.g. <a foo==bar> produces attribute “foo” with value “=bar”.
  • gh-135661: Fixed CDATA section parsing in html.parser.HTMLParser according to the HTML5 standard: ] ]> and ]] > no longer end the CDATA section. Add private method _set_support_cdata() which can be used to specify how to parse <[CDATA[ — as a CDATA section in foreign content (SVG or MathML) or as a bogus comment in the HTML namespace.
  • gh-102555: Fixed comment parsing in html.parser.HTMLParser according to the HTML5 standard. --!> now ends the comment. -- > no longer ends the comment. Support abnormally ended empty comments <--> and <--->.
  • gh-135462: Fixed quadratic complexity in processing specially crafted input in html.parser.HTMLParser. End-of-file errors are now handled according to the HTML5 specs – comments and declarations are automatically closed, tags are ignored.
  • gh-118350: Fixed support of escapable raw text mode (elements “textarea” and “title”) in html.parser.HTMLParser.
  • gh-86155: html.parser.HTMLParser.close() no longer loses data when the <script> tag is not closed.

 

Python 3.12.12


Python 3.11.14

Additional security content in this release:


Python 3.10.19

Additional security content in this release:


Python 3.9.24

Additional security content in this release:


Stay safe and upgrade!

As always, upgrading is highly recommended to all users of affected versions.

Enjoy the new releases

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organization contributions to the Python Software Foundation.

Regards from your very old tireless release team,
Thomas Wouters
Pablo Galindo Salgado
Łukasz Langa
Ned Deily
Steve Dower

Tuesday, October 7, 2025

Python 3.14.0 (final) is here!

Two snakes enjoying a pie with 3.14 on the top and π crimping

Python 3.14.0 is now available

python.org/downloads/release/python-3140/

This is the stable release of Python 3.14.0

Python 3.14.0 is the newest major release of the Python programming language, and it contains many new features and optimisations compared to Python 3.13.

Major new features of the 3.14 series, compared to 3.13

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

New features

For more details on the changes to Python 3.14, see What’s new in Python 3.14.

Build changes

Incompatible changes, removals and new deprecations

Python install manager

The installer we offer for Windows is being replaced by our new install manager, which can be installed from the Windows Store or from its download page. See our documentation for more information. The JSON file available for download contains the list of all the installable packages available as part of this release, including file URLs and hashes, but is not required to install the latest release. The traditional installer will remain available throughout the 3.14 and 3.15 releases.

More resources

And now for something completely different

Edgar Allen Poe died on 7th October 1849.

As we all recall from 3.14.0a1, piphilology is the creation of mnemonics to help memorise the digits of π, and the number of letters in each word in a pi-poem (or “piem”) successively correspond to the digits of π.

In 1995, Mike Keith, an American mathematician and author of constrained writing, retold Poe’s The Raven as a 740-word piem. Here’s the first two stanzas of Near A Raven:

            Poe, E.
      Near a Raven

Midnights so dreary, tired and weary.
    Silently pondering volumes extolling all by-now obsolete lore.
During my rather long nap - the weirdest tap!
    An ominous vibrating sound disturbing my chamber’s antedoor.
        “This”, I whispered quietly, “I ignore”.

Perfectly, the intellect remembers: the ghostly fires, a glittering ember.
    Inflamed by lightning’s outbursts, windows cast penumbras upon this floor.
Sorrowful, as one mistreated, unhappy thoughts I heeded:
    That inimitable lesson in elegance - Lenore -
        Is delighting, exciting…nevermore.

Enjoy the new release

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the Python Software Foundation.

Regards from a colourful autumnal Helsinki,

Your release team,
Hugo van Kemenade
Ned Deily
Steve Dower
Łukasz Langa

Python 3.13.8 is now available

 

The latest version of Python 3.13 is now available!

Python 3.13.8

This is the eighth maintenance release of Python 3.13

Python 3.13 is the newest previous major release of the Python programming language, and it contains many new features and optimizations compared to Python 3.12. 3.13.8 is the eighth maintenance release of 3.13, containing around 200 bugfixes, build improvements and documentation changes since 3.13.7.

Full Changelog

More resources

 

Enjoy the new releases

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organization contributions to the Python Software Foundation.

Regards from your package managers,

Thomas Wouters
Ned Deily
Steve Dower
Łukasz Langa