126 wires and counting

$ follow Django

Keep up with Django in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-05-29
stories 13

© 2026 RepoJournal Home Showcase Explore How it works Privacy

$ the-wire · showcase

DJANGO CLEANS UP BUILD DEPENDENCIES WHILE FIXING CUSTOM USER MODEL EDGE CASES

By RepoJournal · Filed · About Django · Composed from the cited sources · methodology

Django core removed a mistaken puppeteer direct dependency that was supposed to be managed through npm overrides, while simultaneously fixing createsuperuser to handle custom user models without natural keys.

The build pipeline got lighter today with the removal of an unnecessary puppeteer dependency [1] that was added in error. The original intent was to pin versions through npm overrides, not direct dependencies, creating duplicate package entries that npm ls flagged. Meanwhile, on the user model front, Django fixed a critical issue where createsuperuser would fail against custom user implementations that lack a natural_key method [2] [3]. This matters because nullable username fields are a documented and supported configuration, yet the command's uniqueness check was hardcoded to call get_by_natural_key(), breaking legitimate setups. The djangoproject.com team also tightened security release checklists by eliminating severity duplication in notifications [4] [5]. Previously, announcing five low-severity fixes would read as 'low, low, low, low, and low' - now it collapses cleanly. Code of Conduct expanded its scope to include Djangonaut Space as an affiliated program [7], formalized in updated documentation [6] [8].

Action items

References

  1. [1] Removed unnecessary direct dev dependency on puppeteer. ↗ django/django
  2. [2] Fixed #36225 - Made implementation of natural_key optional on User Model Manager ↗ django/django
  3. [3] Fixed #36225 -- Coped with lack of get_by_natural_key() in createsuperuser. ↗ django/django
  4. [4] [checklists] Ensure that issue severity is not duplicated in prenotification ↗ django/djangoproject.com
  5. [5] [checklists] Remove severity duplication in security release checklist ↗ django/djangoproject.com
  6. [6] Update changelog ↗ django/code-of-conduct
  7. [7] Add Djangonaut Space as an affiliated program ↗ django/code-of-conduct
  8. [8] Merge pull request #107 from django/changelog-update-14 ↗ django/code-of-conduct

Quick answers

What shipped in Django on May 29, 2026?
Django core removed a mistaken puppeteer direct dependency that was supposed to be managed through npm overrides, while simultaneously fixing createsuperuser to handle custom user models without natural keys. In total, 8 commits and 5 pull requests landed.
Who contributed to Django on May 29, 2026?
4 developers shipped this update, including babbitt, nessita, github-actions[bot], and dryan.
What were the notable Django updates?
Removed unnecessary direct dev dependency on puppeteer, Fixed #36225 - Made implementation of natural_key optional on User Model Manager, and Fixed #36225 -- Coped with lack of get_by_natural_key() in createsuperuser.