The Wire · Showcase
DJANGO CLEANS UP BUILD DEPENDENCIES WHILE FIXING CUSTOM USER MODEL EDGE CASES
By RepoJournal · Filed · About Django
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
- → Pull the latest django/django main if you maintain custom user models django/django [plan]
- → Review your npm build output to verify no duplicate puppeteer entries remain django/django [monitor]
References
- [1] Removed unnecessary direct dev dependency on puppeteer. django/django
- [2] Fixed #36225 - Made implementation of natural_key optional on User Model Manager ↗ django/django
- [3] Fixed #36225 -- Coped with lack of get_by_natural_key() in createsuperuser. django/django
- [4] [checklists] Ensure that issue severity is not duplicated in prenotification django/djangoproject.com
- [5] [checklists] Remove severity duplication in security release checklist ↗ django/djangoproject.com
- [6] Update changelog ↗ django/code-of-conduct
- [7] Add Djangonaut Space as an affiliated program ↗ django/code-of-conduct
- [8] Merge pull request #107 from django/changelog-update-14 django/code-of-conduct
FAQ
- What changed 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.
- What should Django teams do about it?
- Pull the latest django/django main if you maintain custom user models • Review your npm build output to verify no duplicate puppeteer entries remain
- Which Django repositories shipped on May 29, 2026?
- django/django, django/djangoproject.com, django/code-of-conduct