Issue #651

Lots of PEPs, More Py3.13, HPy, and More

Oct. 15, 2024

Lots of PEPs, More Py3.13, HPy, and More
#651 – OCTOBER 15, 2024 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Exploring the New Features of Python 3.13
Python 3.13 is here! Our regular guests, Geir Arne Hjelle and Christopher Trudeau, return to discuss the new version. This year, Geir Arne coordinated a series of preview articles with members of the Real Python team and a showcase tutorial, “Python 3.13: Cool New Features for You to Try.” Christopher’s video course “What’s New in Python 3.13” covers the topics from the article and shows the new features in action.
REAL PYTHON podcast

HPy: A Better C API for Python
The HPy project is a wrapper to the Python C-API meant to make it easier to integrate with Python code. It allows for universal binaries and has a debug mode. Associated HN Discussion
HPYPROJECT.ORG

Posit Connect: Share the Work You Make With Streamlit, FastAPI, & Other FOSS Frameworks
People use Posit Connect to publish, host, & manage interactive apps, dashboards, Python models, APIs, & much more. It provides a centralized, self-service place to share the products of data science teams. Increase the impact of your work by making it easier for others to integrate with your work →
POSITsponsor

PyCon Africa 2024: A Summary
This was Vuyisile’s first visit to PyCon Africa and so he posted a summary of the event.
VUYISILE NDLOVU

PEP 760: No More Bare Excepts (Withdrawn)
PYTHON.ORG

PEP 735: Dependency Groups in pyproject.toml (Accepted)
PYTHON.ORG

Django Bugfix Release Issued: 5.1.2
DJANGO SOFTWARE FOUNDATION

Python Developers Survey 2024
PSF

Quiz: When to Use a List Comprehension in Python
REAL PYTHON

Quiz: Modern Python String Formatting Tools
REAL PYTHON


Articles & Tutorials


__init__.py Files Are Optional. You Should Still Use Them
If you’ve ever googled the question “Why do Python packages have empty __init__.py files?”, you could get the idea that Python packages wouldn’t work without them. This is a common misconception—they’ve been optional since Python 3.3! Why then, do most Python projects still have them?
BOVENBERG.NET • Shared by Arie Bovenberg

Build a Contact Book App With Python, Textual, and SQLite
In this tutorial, you’ll be guided step by step through the process of building a basic contact book application. You’ll use Python and Textual to build the application’s text-based user interface (TUI), and then use SQLite to manage the database.
REAL PYTHON

Save 100+ Engineering Hours With the Highest Performing GPU Clusters on the Market
FluidStack provides GPU clusters for LLM training & inference for the top AI labs including Poolside and CharacterAI. Clusters are built on the latest Nvidia GPUs (A100s, H100s, H200s, GB200s) and are deployed on fully managed Kubernetes/Slurm with 24/7 support, 15 min response time and 99% uptime →
FLUIDSTACKsponsor

PEP 777: How to Re-Invent the Wheel
“The current wheel 1.0 specification was written over a decade ago, and has been extremely robust to changes in the Python packaging ecosystem… this PEP prescribes compatibility requirements on future wheel revisions.”
PYTHON.ORG

PEP 758: Allow except and except* Expressions Without Parentheses
“This PEP proposes to allow unparenthesized except and except* blocks in Python’s exception handling syntax. Currently, when catching multiple exceptions, parentheses are required around the exception types.”
PYTHON.ORG

PEP 761: Deprecating PGP Signatures for CPython Artifacts
Since Python 3.11.0, CPython has provided two verifiable digital signatures for all CPython artifacts: PGP and Sigstore. This PEP proposes moving to Sigstore as the only way of signing artifacts.
PYTHON.ORG

In the Making of Python Fitter and Faster
This post details how Python’s recent performance improvements work under the hood. It covers changes to the interpreter, better memory management, and the newly experimental JIT compiler.
SUMER CIP

The Ultimate Guide to Error Handling in Python
This detailed post covers the variety of ways to deal with errors in your code, why you might choose between the approaches, and what all this theory actually means in the real world.
MIGUEL GRINBERG

TypedDicts Are Better Than You Think
TypedDict was introduced in PEP-589 which landed in Python 3.8. The primary use case was to create type annotations for dictionaries. This post explains why you should use them.
CHANGS.CO.UK

Narrow State of a Django Model Using Python TypeGuard
Bruno came across a problem with type checking for a Django project which led him to use TypeGuard for the first time. This post explains why.
BRUNO ALLA

If We Had $1,000,000…
Jacob ponders what the Django Software Foundation would look like if they had 4x their current budget.
JACOB KAPLAN-MOSS


Projects & Code


Brought to you by Real Python for Teamssponsor
Online Python training created by a community of experts. Give your team the real-world Python skills they need to succeed →

srgn: Grep-Like Tool That Understands Code
GITHUB.COM/ALEXPOVEL

streamable: Stream-Like Manipulation of Iterables
GITHUB.COM/EBONNAL

httpdbg: Debug HTTP(S) Requests in a Python Program
GITHUB.COM/CLE-B

Secure.py: HTTP Security Headers Made Easy
GITHUB.COM/TYPEERROR • Shared by Caleb Kinney

django-admin-tui: Django Admin in the Terminal!
GITHUB.COM/VALBERG

📆🐍 Upcoming Python Events


Weekly Real Python Office Hours Q&A (Virtual)
October 16, 2024

Python Brasil 2024
October 16 to October 21, 2024

PyCon Panamá 2024
October 16 to October 19, 2024

Swiss Python Summit 2024
October 17 to October 19, 2024

PyData Bristol Meetup
October 17, 2024

PyLadies Dublin
October 17, 2024

PyCon APAC 2024
October 25 to October 27, 2024

PyCon Korea 2024
October 25 to October 28, 2024

PythonHo Conference 2024
October 26 to October 28, 2024
Happy Pythoning!
Copyright © 2024 PyCoder’s Weekly, All rights reserved.