Python developers release three "cursed" updates

A screen showing code written in Python, with purple light reflecting off the surface
(Image credit: Bigstock)

The core Python developers have launched three new "cursed" releases of the Python programming languages today, each of which causing headaches.

The developers were forced to release the new versions without Windows installers - a less than ideal circumstance but the launch was necessary due to a memory leak bug in the previous version which impacted certain apps.

The developers were unable to issue the new releases with Windows installers due to unexpected complexities regarding the Windows certificate renewal. Two lead developers are working hard to resolve the issue and Windows installers are expected to added by the end of this week.

"The releases you’re looking at were all cursed in some way," said Łukasz Langa, CPython core developer. "What a way to start 2022! Besides the certificate hold up, Python 3.10.2 is an expedited release, Python 3.11.0a4 had almost 20 release blockers before being finally green, and Python 3.9.10 was made from a new M1 Mac on macOS Monterey which made the usually boring process quite a ride. We’re hoping 2022 won’t be this intense all year!"

Python 3.10.2

The latest release for the up-to-date main Python build is a special bug-fixing edition which has been released ahead of schedule to address a memory leak bug. The issue was affecting apps using certain function calls when using Cython - a superset of the python language that compiles code into C, offering performance boosts.

"The memory leak consisted of a small constant amount of bytes in certain function calls from Cython code," said Langa. "Although in most cases this was not very noticeable, it was very impactful for long-running applications and certain usage patterns."

The release also addresses more than 100 other bugs which are now fixed and developers are highly encouraging the community to upgrade to Python 3.10.2 as soon as possible.

Python 3.9.10

Python 3.9 is the most recent legacy Python series and the update marks its ninth maintenance release. Python 3.9 will receive three more bug-fixing updates before users are expected to migrate projects to the latest 3.10 build, but will receive security updates until 2025. The final bug-fixing update is expected to land in May 2022 and the next one is scheduled for Pi Day, 14 March 2022.

With the latest 3.9.10 release, the developers have made 130 changes since 3.9.9 which represents a higher number of fixes made to the build in this stage of its development cycle compared to Python 3.8.

The developers served a reminder for macOS users that the default installer is now the new universal2 variant. It's compatible with Mac OS X 10.9 and newer, and will work natively with Apple Silicon machines.

Python 3.11.0a4

The next generation of Python 3 is still in alpha development with 3.11.0a4 representing the fourth of seven planned alpha releases before it succeeds Python 3.10 as the main build in October 2022.

RELATED RESOURCE

Automating the modern data warehouse

Freedom from constraints on your data

FREE DOWNLOAD

"Alpha releases are intended to make it easier to test the current state of new features and bug fixes by the community, as well as to test the release process," said Langa. "During the alpha phase, features may be added up until the start of the beta phase (2022-05-06) and, if necessary, may be modified or deleted up until the release candidate phase (2022-08-01). Please keep in mind that this is a preview release and its use is not recommended for production environments."

Features for Python 3.11 are still being planned and written, but among the most exciting for developers will be the implementation of the Faster CPython Project. The project aims to find performance improvements in the speed of executing Python code without breaking the C API.

Python creator Guido van Rossum said at the 2021 Python Language Summit that he and a small team, funded by Microsoft, were working on making performance improvements to the language. At the time, van Rossum said improvements were possible but the degree to which speeds could be improved was unknown.

The latest alpha build of Python 3.11 has shown around 19% faster performance compared to Python 3.10 on the geometric mean of the PyPerformance benchmarks, Langa said.

Connor Jones
News and Analysis Editor

Connor Jones has been at the forefront of global cyber security news coverage for the past few years, breaking developments on major stories such as LockBit’s ransomware attack on Royal Mail International, and many others. He has also made sporadic appearances on the ITPro Podcast discussing topics from home desk setups all the way to hacking systems using prosthetic limbs. He has a master’s degree in Magazine Journalism from the University of Sheffield, and has previously written for the likes of Red Bull Esports and UNILAD tech during his career that started in 2015.