Summer holidays have ended, and it’s back to school again. While it was a time of leisure and getting disconnected from the virtual world for many of us, the Python maintainers and contributors have been busy working during that same period. Just in August 2021, the Python community saw three new Python releases, bringing some important security fixes, optimizations, and brand-new features.
Let’s dive into the biggest Python news from the past month!
Free Bonus: Click here to get a Python Cheat Sheet and learn the basics of Python 3, like working with data types, dictionaries, lists, and Python functions.
On August 3rd, the first preview release of Python 3.10.0 finally came out.
The Python community has been holding their breath for months in anticipation of the next minor release of their favorite language. Python 3.10.0 will be packed with loads of exciting new features and improvements. Some even sparked a bit of controversy, but that’s often the case with groundbreaking changes.
If you can’t wait to give Python 3.10.0 a test drive before it’s officially released on October 4th, then you can grab its release candidate that got published early last month. The final release will only include bug fixes without adding extra features, so the preview release is fairly complete.
You can access the preview release in a couple of different ways:
- You can navigate your web browser to the official Python 3.10.0rc1 downloads page and fetch either the source code to compile or a Python installer for your operating system.
- Alternatively, you can run the release candidate alongside your other Python interpreters with the help of pyenv.
- Finally, you can try the latest Python release without installing it by running the interpreter in a Docker container.
The most revolutionary upcoming change, which deserves a brief mention here, is the addition of structural pattern matching to the language’s syntax. Pattern matching is a powerful construct seen in some functional programming languages, like Scala, and can make your code much cleaner and more reliable. In some cases, it will also let you mimic the
switch statement, which Python has been criticized for not having.
But that’s only scratching the surface! There will be lots of other improvements, so stay tuned for future Real Python tutorials that will break down most of the new features in Python 3.10 for you.
Both Python 3.9.7 and Python 3.8.12 were released on August 30th.
Even though Python 3.10 will soon be the latest version of the language and will provide some cutting-edge features, it’s going to take some time before it becomes widespread and fully supported by third-party library vendors. Therefore, most companies that use Python commercially will likely stick to slightly older releases for a bit, as older releases are more stable and battle-tested.
Python 3.9.7 is now the newest stable release that you should consider installing. This release includes several dozen security and bug fixes as well as small optimizations and improvements. Python 3.9 will be supported until approximately October 2025.
Python 3.8.12 is the second security-only patch for the legacy Python 3.8 series. In the meantime, it will remain supported until October 2024, though without regular maintenance releases.
On an August 27th blog post, JetBrains announced the release of PyCharm 2021.2.1, which is the latest build of their extremely popular IDE for Python developers.
With Python 3.10 on the horizon, companies that provide tools for software developers in the Python ecosystem must prepare for the big changes that this new Python release will bring. PyCharm now provides support for new syntax constructs introduced in Python 3.10, such as structural pattern matching and union types.
On top of countless bug fixes, as well as performance and usability improvements, another interesting innovation in PyCharm is the shift from Python’s built-in
venv module to the
virtualenv library for virtual environment creation. This little change supposedly allows for a significant speedup by taking advantage of caching as well as linking to directories instead of copying them.
If you’re new to PyCharm, then you’ll appreciate the improved feature trainer plugin that comes with the IDE. It was added recently to teach you how to use the graphical user interface through interactive lessons. It now has new lessons devoted to working with Git repositories directly from the IDE.
On August 4th, the Django Software Foundation (DSF) announced that they’d started collecting input from Django developers all over the world to better understand how the community is using their web framework and related tools. In partnership with JetBrains, the goal of this survey was to gather knowledge to help them choose the right direction for development.
The survey is now closed, but it took about ten minutes to complete and was comprised of mostly multiple-choice questions. Hopefully, many of you Django users got a chance to share your valuable feedback.
The survey’s results will be aggregated, anonymized, and made available to the public. To get news about when the results will come out, you can follow the Django Software Foundation and JetBrains on social media.
On August 18th, the Python Software Foundation (PSF) announced that Shamika Mohanan has accepted a newly opened position as Packaging Project Manager.
In last month’s news, you learned that the PSF hired Łukasz Langa as the first full-time CPython Developer-in-Residence. Thanks to the continued support of their sponsors, the non-profit organization has been able to hire another full-time employee with a secured two-year contract.
Shamika will be responsible for collecting feedback from the Python community about the challenges and ongoing projects and initiatives in the packaging ecosystem, focusing on improving the Python Package Index (PyPI). That’s great news, considering the landscape of packaging tools in Python has always been fragmented and doesn’t follow one specific standard.
Congratulations Shamika 👏
On August 30th, the PyCon US organizers announced that they’re starting to look for volunteers who want to contribute their time and knowledge towards facilitating next year’s conference.
There are usually many opportunities to work as volunteer staff at PyCon. At the moment, however, the PSF is particularly interested in getting members for a committee responsible for the Call for Proposals process. It involves three broad tasks described in more detail in this Google Document.
August saw some exciting developments in Python. At Real Python, we’re excited about Python’s future and can’t wait to see what new things are in store for us in September.
What’s your favorite piece of Python news from August? Did we miss anything notable? Let us know in the comments, and we might feature you in next month’s Python news roundup.