| in blog | Django News |
|---|---|
| published date | 2026-09-25 |
| original entry | Issue 356: New technical governance approved for Django |
All PyCon US 2026 talks are now on YouTube, along with a highlight reel and a full recap of the first year in Long Beach, which drew 1,901 attendees from 58 countries. PyCon US 2027 returns to Long Beach, May 12-18.
Forty-five years a developer, now retired and answering forum questions so the core team doesn't have to, which he counts as a contribution in itself. He builds browser-based board game engines with Channels and HTMX, and his advice fits on a sticker: don't fight the framework.
The Steering Council and the DSF Board both approved DEP 19, which simplifies Django's technical governance and swaps narrow eligibility rules for a broad set of qualities a Steering Council member might have. Documentation updates come next.
Quorum is currently measured against every member on the rolls, which only gets harder to reach as membership grows. The proposal counts members who voted in the last two years, lets everyone else opt in, and takes nobody off the rolls. Comment by October 7.
A new experimental MCP package for Wagtail and how it came about.
Today, "Updates to Django" is presented by Raffaella from Djangonaut Space! ๐
Last week we had 20 pull requests merged into Django by 13 different contributors - including 3 first-time contributors! Congratulations to jgoneit, Philip Sรธrensen and ddelange for having their first commits merged into Django - welcome on board!
News in Django 6.1:
fields.W225 system check incorrectly warned that null has no effect on GeneratedField (#37348).FETCH_PEERS did not batch instances loaded by select_related(), causing unnecessary queries (#37344).News in Django 6.2:
django.db.models.GenericIPAddressField now validates IPv6 input strictly when saving and querying. Invalid IPv6 addresses now raise ValidationError instead of being silently accepted, and surrounding whitespace is stripped.EmailValidator.validate_domain_part() method is deprecated in favor of the new validate_domain() method.Thanks to all the collaborators for the good work done on the PRs merged last week. Thanks also to the volunteer reviewers who contributed: Mykhailo Havelia, Simon Charette and Mike Edmunds.
Five Caktus folks pick their favourites from Chicago: the Dawn Wages and Sarah Boyce keynotes, browser features that cut JavaScript, Django 6.1's auto-prefetching for N+1 queries, and the PostgreSQL Anonymizer extension found in a hallway conversation.
When a pull request had to be carved out of granite with a chisel, the effort filtered out the frivolous ones. Frank Wiles on the slop tsunami that replaced it, and what maintainers can do: gate contributors, close the tracker on weekends, and reject clearly and kindly.
Carson Gross argues the prompts behind LLM-written code are thrown away, unlike the source a compiler keeps. His fix is a /src/md directory of human-curated Markdown, checked in beside the code and tests that get generated from it.
Lessons from shipping one, including an agent that fired a send_email tool early and mailed customers half-built data. Start read-only, add writes with dry runs and audit logs, and expect SynchronousOnlyOperation until you wrap ORM calls in sync_to_async.
Natalia reviewed 11 PRs, four of them sponsorship page improvements on djangoproject.com, and kept two security patches moving. She also reverted the system check for null on GeneratedField, dug into ORM internals to triage a related migrations ticket, and opened a forum proposal to swap Django's custom Sphinx version annotations for Sphinx's standard wording.
Jacob reported in from the Django on the Med sprints this week. He triaged 9 tickets (including several composite primary key bugs), reviewed 10 PRs, opened 5 tickets and 6 PRs (among them dropping GDAL 3.3/3.4 support), and weighed in on forum threads about newcomer sprints and security release notes.
Sarah had a busy week: she triaged six new tickets, reviewed 14 pull requests across django/django, djangoproject.com, and the DSF working groups repo, and worked through five security reports. On the authoring side, she opened a PR to document Django's new annual release cycle in the release process docs, and another to finally allow multiline template tags, a long-requested change that closes two tickets, one of them over a decade old.
The MariaDB Foundation's yearly survey is open to Postgres, SQLite, and MySQL users too this year, with some questions split by role. It is anonymous, takes under 10 minutes, closes in mid-October, and the results are published as a public report.
A new Django role at The Developer Society leads the board, alongside machine learning work at Provision and a backend seat at The Cruise Brothers.
๐ Django Developer at The Developer Society
Machine Learning Engineer (Hybrid) at Provision
Django Developer at The Cruise Brothers
Add a mixin to your ModelAdmin classes and MCP clients get CRUD, admin actions, and relationship traversal, all within Django's existing permissions, with only Django and Pydantic as dependencies.
Build any Django app (a SaaS, a dashboard, or an API) from a single sentence. An agent skill that wires packages, splits dev/prod settings, and adds CI.