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 PATCHES HEADER PARSING VULNERABILITY AFFECTING CACHE AND SECURITY

By RepoJournal · Filed · About Django

Django shipped a critical fix for CVE-2026-48587 that rewrites how the framework parses HTTP header values, closing a whitespace-handling gap that could leave tokens improperly sanitized.

The security fix [1] extracts repeated split-and-strip logic into a new `split_header_value()` generator in django/utils/http.py. The old `cc_delim_re` regex only stripped whitespace around the comma delimiter itself, leaving leading or trailing whitespace intact on first and last tokens. RFC 9110 compliance means every token gets fully stripped now, not just the edges around delimiters. This matters because improper header parsing can cascade through cache headers, content-type values, and any comma-separated header field your app touches. In parallel, Django optimized DBCache culling [2] to run only every n queries instead of every query, a performance win for apps hammering the database cache layer. The team also fixed test isolation bugs [3] where cached Site instances were leaking database hints across test boundaries, causing unexpected writes to alternate databases. These aren't flashy features, but they're the kind of foundational fixes that prevent production surprises.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Refs CVE-2026-48587 -- Added helper to properly split header values. django/django
  2. [2] Fixed #32785 -- Optimize cull frequency for DBCache. ↗ django/django
  3. [3] Refs #16281 -- Fixed isolation of admin_views.ViewOnSiteTests. django/django

Quick answers

What shipped in Django on June 9, 2026?
Django shipped a critical fix for CVE-2026-48587 that rewrites how the framework parses HTTP header values, closing a whitespace-handling gap that could leave tokens improperly sanitized. In total, 5 commits and 3 pull requests landed.
Who contributed to Django on June 9, 2026?
1 developer shipped this update, including eevelweezel.
What were the notable Django updates?
Refs CVE-2026-48587 -- Added helper to properly split header values, Fixed #32785 -- Optimize cull frequency for DBCache, and Refs #16281 -- Fixed isolation of admin_views.ViewOnSiteTests.

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?