Python Monthly News

Python News: What's New From July 2022

by Kate Finegan community

In July 2022, Python reached for the stars, playing a key role in processing data from the James Webb Space Telescope. After two years of virtual conferences, EuroPython 2022 took place in Dublin, Ireland. Anaconda celebrated its tenth birthday, and Flask achieved a major milestone on GitHub.

Two new pre-release versions of Python 3.11 were released, with 3.11.0b5 representing the final beta version. Meanwhile, the Python Package Index (PyPI) introduced a two-factor authentication requirement for maintainers of critical projects. Finally, RStudio is changing its name and has released Shiny for Python.

Extra, extra! Read all about the exciting Python news from the past month!

Python Goes to Space

Well, perhaps it’s more accurate to say that Python brought space down to Earth. The James Webb Space Telescope (JWST) made headlines worldwide when NASA and U.S. President Joe Biden unveiled its first images. The full gallery is visually spectacular and scientifically groundbreaking, as it’s full of the deepest infrared images of the universe yet.

This work was made possible by Python. As Dr. Patrick Kavanagh, researcher and Mid-Infrared Instrument (MIRI) software developer for the Dublin Institute for Advanced Studies, said in his talk at EuroPython 2022:

Ninety percent—or more, probably—of the analysis tools, the simulators, and so on were developed in Python […] and use Python. (Source)

For example, the JWST Science Calibration Pipeline runs on Python with some C plugins for speed. Webb’s images are processed as NumPy arrays, and data scientists at the Space Telescope Science Institute rely on SciPy and Jupyter notebooks, as well as the institute’s own AstroConda channel.

If you’d like to try your hand at working with astronomical data, then you’re in luck! Webb’s data is freely available, and you can prepare to get out of this world in three steps:

  1. Create a virtualenv or conda environment.
  2. Activate your environment.
  3. Install the jwst package using pip.

Now you’re just about ready to play. But before you blast off, you’ll need to download raw data from Barbara A. Mikulski Archive for Space Telescopes (MAST). There’s a ton of data, and it can be complicated to get what you want. Luckily, AstroExploring has a how-to blog and video to help you out.

To learn more about Python’s role in this new frontier, check out Python and the James Webb Space Telescope from the Talk Python to Me podcast. Be sure to share your astronomical discoveries in the comments below!

Dublin Hosts EuroPython 2022

Just like in April and May with PyCon US 2022, the Python community is getting back together and it feels so good! This month, the biggest gathering was EuroPython 2022, which took place from July 11 to 17 in Dublin, Ireland.

The conference hosted a number of exciting events, including Beginners’ Day - Humble Data Workshop, Django Girls, and Trans*Code. Events like these are opening doors to the Python community, making coding more welcoming and accessible for all. Big kudos to EuroPython for making inclusivity a priority!

While several programmers were excited to get together in person, EuroPython also provided a fully featured remote option to make sure everyone, near and far, had a seat in the auditorium. Remote ticket holders could actively participate in Lightning Talks, Q&A sessions, and breakout discussions with featured speakers.

Both in-person and remote attendees had access to talks covering a wide variety of tracks. Even if you didn’t buy a ticket, you can still view all the sessions online.

Anaconda and Flask Celebrate Milestones

On July 11, Anaconda turned ten! Anaconda is an open-source distribution system that’s particularly geared toward data science and machine learning.

Pythonistas can also thank Anaconda for its development of libraries including pandas, Dask, Bokeh, and most recently PyScript.

To learn about Anaconda’s first ten years and its plans for the future, check out 10 Years of Data Science Innovation: Anaconda’s Commitment to the Open-Source Python Community. Team Anaconda notes that Python is gaining ground more quickly than any other programming language, Anaconda has over thirty million users, and the team is committed to expanding access to data literacy across the board. We at Real Python applaud these efforts!

But Anaconda isn’t alone in having a reason to celebrate—Flask kicked off the month with zero open issues or pull requests on GitHub:

Tweet Celebrating No Pull Requests or Open Issues for Flask on GitHub
Image source

Congratulations to David Lord and the whole team on this huge feat!

Flask is a popular library for web development. Library maintainers are constantly responding to users’ needs and making improvements, so clearing the queue is quite an accomplishment. If you want to harness the power of Flask in your own web development, you can learn how by following the Flask by Example learning path here at Real Python.

Here’s to the next ten years of Anaconda and the continued popularity and maintenance of Flask!

Final Python 3.11 Beta Versions Released

Big news is coming in October 2022, when Python 3.11 will finally be released into the wild! But for now, the Python community can enjoy tinkering with the beta releases.

On July 11, Python 3.11.0b4 came out, at long last:

Tweet Celebrating Python 3.11.0b4 Release
Image source

Python 3.10/3.11 release manager and Python core developer Pablo Galindo Salgado calls this a cursed release because of some blockers that required modifying the release schedule. In particular, there were stability concerns surrounding past beta releases, so this version was released two days after its successor, Python 3.11.0b5, was originally supposed to come out.

Initially, it was predicted that the official release of Python 3.11 might be delayed to December 2022, but it looks like the developers are back on track for an October release. July 26 marked the release of Python 3.11.0b5:

Tweet Celebrating Python 3.11.0b5 Release
Image source

These tweets highlight how much time and effort go into each beta release. So why bother with them? In short, the beta phase is critical to the health of Python.

During the alpha phase, new features are being added, but the beta phase comes with a feature freeze. That makes it the perfect time for developers, library maintainers, and programmers to test it out with their code and report any bugs or unexpected behaviors before the big day:

Screenshot Urging Users to Test Beta Releases of Python 3.11
Image source

So, now’s the time to give it a go. If you haven’t already, you can download Python 3.11.0b5 here. Then try out its shiny new features, like even better error messages, task and exception groups, and support for reading TOML with tomllib. Share your discoveries and blockers in the comments below.

PyPI Requires Two-Factor Authentication

Another key to the health of Python is making sure that all third-party libraries are safe and secure. That’s why PyPI is working on ensuring that developers of critical libraries use two-factor authentication (2FA). This will become a requirement in the months ahead.

While the ultimate goal is to get as many library maintainers and owners as possible to use 2FA, the first major push is to get all maintainers of critical libraries onboard. Here’s what critical means in this context:

Project eligibility is based on downloads: any project in the top 1% of downloads over the prior 6 months is designated as critical (as well as PyPI’s own dependencies). (Source)

Over 3,500 projects meet this criterion, and the Google Open Source Security Team is providing two free Titan security keys to all eligible maintainers.

But even if you’re not maintaining a critical library, you can opt in and require 2FA for your fellow maintainers and owners.

You can track the progress of this initiative on the PyPI 2FA Dashboard. As of July 31, about two thousand out of over eight thousand critical maintainers have adopted 2FA:

Graph Showing the Adoption of 2FA on PyPI
Image source

If you’re maintaining a library on PyPI, critical or not, you ought to enable 2FA to protect yourself and others!

RStudio Changes Name and Releases Shiny for Python

The RStudio company has made a name for itself by providing open-source software for data science, scientific research, and technical communication. And now it’s adopting a new name: Posit! Here’s what that means:

Posit is a real word that means to put forth an idea for discussion. Data scientists spend much of their day positing claims that they then evaluate with data. When considering a new name for the company we wanted something that reflects both the work our community engages in (testing hypotheses!) as well as the scientific aspiration to build ever- greater levels of knowledge and understanding. (Source)

The blog post goes on to note that, although RStudio’s efforts have primarily related to the R programming language, the company’s mission “intentionally goes beyond ‘R for Data Science.’”

That includes a continuing commitment to developing tools for Python. One such tool was released in alpha at the end of July. Shiny for Python offers an approachable, flexible, and performant dashboard for building web applications.

Because it’s still in the alpha phase, you shouldn’t rely on it for apps in production, but you can definitely give it a go and see what it can do. You can get started by installing it on your computer or trying it out in your web browser.

What’s Next for Python

What are you most excited about in the world of Python this month?

Were you at EuroPython 2022? Did you play around with data from the farthest reaches of space? Are you making your library more secure by requiring 2FA? Are you testing out Python 3.11 in its latest beta version? How are you celebrating the success of Anaconda and Flask? Let us know in the comments!

Happy Pythoning!

🐍 Python Tricks 💌

Get a short & sweet Python Trick delivered to your inbox every couple of days. No spam ever. Unsubscribe any time. Curated by the Real Python team.

Python Tricks Dictionary Merge

About Kate Finegan

Kate relishes a well-placed comma as Tutorial Editor for Real Python.

» More about Kate

Each tutorial at Real Python is created by a team of developers so that it meets our high quality standards. The team members who worked on this tutorial are:

Master Real-World Python Skills With Unlimited Access to Real Python

Locked learning resources

Join us and get access to thousands of tutorials, hands-on video courses, and a community of expert Pythonistas:

Level Up Your Python Skills »

Master Real-World Python Skills
With Unlimited Access to Real Python

Locked learning resources

Join us and get access to thousands of tutorials, hands-on video courses, and a community of expert Pythonistas:

Level Up Your Python Skills »

What Do You Think?

Rate this article:

What’s your #1 takeaway or favorite thing you learned? How are you going to put your newfound skills to use? Leave a comment below and let us know.

Commenting Tips: The most useful comments are those written with the goal of learning from or helping out other students. Get tips for asking good questions and get answers to common questions in our support portal.

Looking for a real-time conversation? Visit the Real Python Community Chat or join the next “Office Hours” Live Q&A Session. Happy Pythoning!

Keep Learning

Related Topics: community