Python Monthly News

Python News: What's New From March 2023

by Leodanis Pozo Ramos community

In March 2023, Python 3.12.0 alpha 6 was released! With several exciting new features, improvements, and optimizations, this release is a must-try for all Python enthusiasts. If you want to stay on the cutting edge of Python development, then you should really take it for a spin. But keep in mind that this release isn’t recommended for production.

The Python community has been buzzing with activities and events. PyCascades 2023 took place in Vancouver, British Columbia. The event featured talks and presentations on several Python topics. If you’re itching to get involved in the Python community, then you should know that the upcoming PyCon US 2023 has called for volunteers.

Finally, the AI explosion is shaking up the coding world. GitHub Copilot has just announced Copilot X, a new vision for AI-assisted development.

Let’s dive into the most exciting Python news from March 2023!

Python 3.12.0 Alpha 6 Released

The Python development team released Python 3.12.0 alpha 6, which is the second to last alpha version before the feature freeze kicks in for the beta phase:

Python 3.12.0a6 Release in Python Insider

This latest release continues to improve Python’s error messages. For example, now the interpreter can suggest standard-library modules in error messages for NameError. It can also provide attribute name suggestions when a NameError occurs.

This release also added support for the Linux perf profiler as a new feature. Yes, now the interpreter supports the perf profiler through the new environment variable PYTHONPERFSUPPORT, the new command-line option -X perf, and an API.

Several standard-library modules have benefited from various improvements. So far, those modules include array, asyncio, inspect, pathlib, math, sqlite3, os, typing, sys, and a few others.

Python 3.12.0 alpha 6 also made several deprecations, including:

As with any alpha release, Python 3.12.0 alpha 6 is intended for experimentation and testing purposes only and isn’t recommended for production use. That said, you should definitely install the pre-release and see what it can do!

The Python development team plans to release the final version, Python 3.12.0, in October this year. However, keep in mind that this timeline is subject to change.

PEP 582 on Python Local Packages Directory Rejected

PEP 582 was rejected. After a long debate on the forum, steering council member and Python 3.12 release manager Thomas Wouters communicated the decision:

After careful consideration, the SC has decided to reject PEP 582 (Python local packages directory), at least in its current form. (Source)

PEP 582 proposes the addition of a local packages directory feature to Python. The feature would allow developers to install packages locally to a project directory, like in Node.js projects, rather than installing them directly to the operating system or to a virtual environment. The idea was to lower the bar for beginners by eliminating the confusion around virtual environments.

The reasons behind the rejection include the following:

  • The implementation of the proposal is too complex and could lead to unnecessary complications when combined with other module search paths, such as virtual environments, PYTHONPATH, and path configuration (.pth) files.
  • The expected benefit of the proposal for new users is limited, and the added complexity outweighs the benefits.
  • There’s no clear consensus among the packaging community and no clear-cut beneficial use case for the new feature.

However, the decision is open to reconsideration if a more clear consensus or a stronger argument showing the benefits of the proposal emerges.

PyCascades 2023 Takes Place in Vancouver, British Columbia

PyCascades is a regional Python conference in the Pacific Northwest. The organizing team consists of members from the Vancouver, Seattle, and Portland Python user groups. PyCascades 2023 took place from March 17 to 20 at the Simon Fraser University (SFU) Harbour Centre in Vancouver:

SFU Harbour Centre in Vancouver, BC
SFU Harbour Centre, Vancouver (Image source)

This year, the conference was in person. However, it also had an online event for remote participants. The preconference social was on March 17, while the talks occurred on March 18 and 19. On March 20, the sprints took place.

The conference covered a wide range of categories related to Python, such as core Python, data science, web development, and community. Some of the topics at the conference included Python syntax, machine learning, data visualization, web scraping, Django, Flask, and testing.

If you couldn’t participate this year and want to watch the talks, then check out the recordings for the two main conference days:

This year, Real Python was a silver sponsor of PyCascades. We also had a virtual booth on the web platform:

Real Python Online Booth at Pycascades 2023

This Real Python booth was a great opportunity for us to connect with both the online and in-person participants.

A few members of our team attended in person this year, which was an amazing experience:

Real Python Team at Pycascades 2023

As always, going to Python conferences, meetups, and events will keep you up to date on the latest developments related to the language. It’s also a great way to interact with the community, meet some of its members, and widen your professional network as a Python developer.

This year’s PyCascades was a great experience for us at Real Python. We were able to connect with several members of the Python community and meet them in person. We also got a ton of valuable feedback that’ll help us improve our future work. Thank you all for that!

PyCon US 2023 Calls for Volunteers

PyCon US 2023 posted their call for volunteers on March 6. This year, you can sign up for volunteer roles directly on the PyCon US website by navigating to the Volunteering page:

PyCon US 2023 Banner
Image source

The PyCon US conference is organized and run by volunteers from the Python community. This year, they’re looking for volunteers to fill over three hundred on-site hours to help make sure everything runs smoothly.

If you’re interested in becoming a volunteer, then you’ll need to sign up for one or more specific roles. The available opportunities include:

  • Registration
  • Information desk
  • Green room
  • Tutorial hosts
  • Swag setup and handout
  • Session staff
  • PyLadies auction helpers
  • PSF booth volunteers

The roles come with different responsibilities and requirements that you can peruse on the page. What they all share is the promise that you’ll contribute in a meaningful way to the Python community! The conference runs from April 19 to April 23, 2023.

PyPI Publishes a Blog

PyPI, the Python package index, lauched its official blog on March 21. Ee Durbin, director of infrastructure at the Python Software Foundation, made the announcement:

PyPI Blog Launched

The PyPI team will be using this space to communicate with PyPI users. They’ll be posting about:

  • New features and updates
  • Interesting technology
  • General information and context around PyPI

This blog is an effort to keep the Python community up to date about the latest news related to PyPI and the continued efforts of the Python Software Foundation to keep the platform online, available, and secure.

Django Developers Survey 2022 Results Are Here

The Django team shared the results of the annual Django Developers Survey for 2022. William Vincent made the announcement on the Django news page on March 9.

This edition of the survey was conducted from September to October 2022 in collaboration with JetBrains. Almost five thousand Django users from 248 countries participated.

The survey covered a broad list of topics, which were organized into the following categories:

  • Django usage
  • Technologies and frameworks
  • Syntax and documentation
  • Languages and other web frameworks
  • Resources
  • Python versions
  • Cloud
  • Development tools
  • Containers
  • Demographics
  • Company

In every category, you’ll find several specific topics with detailed results and insights. Here’s a short summary of the most relevant results from the Django Developers Survey 2022:

  • The most commonly used Django version is 4.1, followed by 4.0 and 3.2.
  • The majority of respondents use PostgreSQL as their primary database, followed by SQLite and MySQL.
  • Most respondents use Linux or macOS as their development operating system, with Windows (with WSL) being the third most commonly used operating system.
  • The most popular development environment is Visual Studio Code, followed by PyCharm and Vim.
  • The preferred Python version is 3.10, followed by 3.9 and then 3.8.
  • The most commonly used testing framework is pytest, followed by unittest and pytest-django.
  • The most popular cloud hosting platform is AWS, followed by DigitalOcean and Heroku.

If you’re an active Django user or if you just want to know how the Django community is doing, then you’ll find many interesting facts and insights in this survey. Check it out!

GitHub Copilot X Makes Strides

Lately, a lot is happening around artificial intelligence (AI), especially language models. Tools like ChatGPT are changing the global scene in many fields. In the world of programming, GitHub Copilot started the age of AI-assisted programming.

Copilot is already writing 46 percent of code. However, the current Copilot only provides AI-powered auto-completion that integrates into your editor or IDE. The next step is GitHub Copilot X, which aims to go way further and integrate AI into other areas of your workflow.

As they say on GitHub:

GitHub Copilot X is our vision for the future of AI-powered software development. Integrated into every part of your workflow. (Source)

GitHub Copilot X will provide several neat features in different contexts. That’s where the X comes in. The X represents a placeholder for those contexts where GitHub Copilot might become available. For example, Copilot for pull requests, Copilot for security, Copilot for CLI, and so on.

GitHub Copilot is adopting OpenAI’s new GPT-4 model and including support for the following features:

  • GitHub Copilot Chat: A chat interface integrated into your editor. It’ll recognize the code that you’ve typed and provide explanations of code blocks, generate tests, and suggest bug fixes.

  • Copilot for Pull Requests: A tool for automatically generating and suggesting descriptions for pull requests on GitHub. It’ll base the suggested description on the changed code.

  • Copilot for Docs: An experimental tool with a chat interface that’ll provide you with AI-generated responses to questions about documentation.

  • Copilot for the Command-Line Interface (CLI): An extension of GitHub Copilot into the terminal, where developers can ask for help with commands and receive contextual responses.

Wow, that sounds great! Copilot X aims to integrate these and other features into various aspects of your development workflow. The future of AI-powered software development seems promising. What are your thoughts on this topic? Let us know in the comments!

What’s Next for Python?

March 2023 was an exciting month for the Python community. We had the release of Python 3.12.0 alpha 6 and the Django Developers Survey 2022 results, as well as PyCascade 2023 taking place and GitHub Copilot X making waves in the AI-powered developer experience.

The Python ecosystem continues to evolve and advance, and we can’t wait to see what’s next. Let us know your thoughts on these developments in the comments below!

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 Leodanis Pozo Ramos

Leodanis is an industrial engineer who loves Python and software development. He's a self-taught Python developer with 6+ years of experience. He's an avid technical writer with a growing number of articles published on Real Python and other sites.

» More about Leodanis

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