RepoJournal
Django

@django

Python's batteries-included web framework

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

One email a day. Unsubscribe in one click.

Pick a date

Topics: Python Full archive →

The Wire · Showcase

DJANGO 5.2.13 PATCHES CRITICAL UPLOAD VULNERABILITY

By RepoJournal · Filed · About Django

Django shipped an emergency security update that enforces upload size limits on request bodies—a gap that could let attackers bypass your DATA_UPLOAD_MAX_MEMORY_SIZE protections.

Code.djangoproject.com just landed Django 5.2.13 [1], which includes CVE-2026-33034, a fix that closes a dangerous hole where request body data wasn't subject to the memory upload ceiling you thought was enforcing. This is the kind of patch that feels minor until you realize someone's been uploading 500MB payloads to your endpoint. Meanwhile, the core Django repo is preparing for Python 3.15 compatibility [2], having adopted the new annotation_format parameter in getfullargspec() just before the feature freeze—good news if you're running bleeding-edge Python. On the feature front, Django landed dictionary-based EMAIL_PROVIDERS [3], decoupling backend tests from settings [4] and fixing a subtle but annoying bug where admin calendar widgets highlighted the wrong date based on timezone mismatches [7]. Djangoproject.com integrated the djade linter [5] for consistent template formatting and rewired the /about redirect [6] to point at /foundation instead of 404ing.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Bump django from 5.2.9 to 5.2.13 ↗ django/code.djangoproject.com
  2. [2] Refs #36712, #36664 -- Used annotation_format parameter of getfullargspec() on Python 3.15. ↗ django/django
  3. [3] Isolated commits from PR #21231 -- Fixed #35514 -- Implemented dictionary-based EMAIL_PROVIDERS. ↗ django/django
  4. [4] Refs #35514 -- Decoupled settings from functional EmailBackend tests. django/django
  5. [5] Add djade linter for Django templates (Fixes #2372) ↗ django/djangoproject.com
  6. [6] Redirect /about to /foundation ↗ django/djangoproject.com
  7. [7] Fixed #37074 -- Synced admin calendar today highlight with server time. ↗ django/django

Quick answers

What shipped in Django on May 9, 2026?
Django shipped an emergency security update that enforces upload size limits on request bodies—a gap that could let attackers bypass your DATA_UPLOAD_MAX_MEMORY_SIZE protections. In total, 11 commits and 11 pull requests landed.
Who contributed to Django on May 9, 2026?
6 developers shipped this update, including dependabot[bot], jacobtylerwalls, nessita, aNsHuL5217, CodeVishal-17, and SnippyCodes.
What were the notable Django updates?
Bump django from 5.2.9 to 5.2.13, Refs #36712, #36664 -- Used annotation_format parameter of getfullargspec() on Python 3.15, and Isolated commits from PR #21231 -- Fixed #35514 -- Implemented dictionary-based EMAIL_PROVIDERS.

More from @django

Daily updates, in your inbox

Follow Django

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

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?