RepoJournal
Django

@django

Python's batteries-included web framework

What actually shipped in Django, written up every day — commits, pull requests, releases, and security advisories.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Python Full archive →

The Wire · Showcase

DJANGO KILLS SIGNUP BOT ATTACK WITH RECAPTCHA, DAPHNE GAINS WEBSOCKET CONTROL

By RepoJournal · Filed · About Django

The Django project site plugged its only unprotected registration form after automated signups tanked email reputation, while Daphne now lets you configure WebSocket message sizes in development.

Djangoproject.com added ReCAPTCHA V3 to its self-serve registration form [1], the only public endpoint that wasn't protected. Bots were hammering it directly into activation emails to fake addresses, generating hard bounces that degraded the site's email sending reputation. The fix mirrors the same protection already in place on the contact and fundraising forms. Over on Daphne [2], you can now configure websocket-max-message-size and websocket-max-frame-size via CLI argument or Django setting when running the dev server, which closes the loop on applications that needed tighter control over incoming WebSocket traffic. Django core shipped documentation fixes for CSRF context processor clarity [6] and improved SVG icon contrast in the default debug page [7], addressing accessibility issues in High Contrast mode. Build infrastructure got minor bumps across the board: djangoproject.com updated actions/setup-python to 6.3.0 [3], Channels jumped to v7 [4], and pre-commit linting tools advanced across Daphne [5].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Added a reCAPTCHA to the account registration form. ↗ django/djangoproject.com
  2. [2] Add ability to configure websocket message size when running as django dev server ↗ django/daphne
  3. [3] Bump actions/setup-python from 6 to 6.3.0 ↗ django/djangoproject.com
  4. [4] Bump actions/setup-python from 6 to 7 ↗ django/channels
  5. [5] [pre-commit.ci] pre-commit autoupdate ↗ django/daphne
  6. [6] Fixed #37032 -- Documented that the CSRF context processor is always enabled in its reference documentation. ↗ django/django
  7. [7] Fixed #36229 -- Improved SVG icon color contrast in django/views/templates/default_urlconf.html. ↗ django/django

Quick answers

What shipped in Django on July 22, 2026?
The Django project site plugged its only unprotected registration form after automated signups tanked email reputation, while Daphne now lets you configure WebSocket message sizes in development. In total, 6 commits and 7 pull requests landed.
Who contributed to Django on July 22, 2026?
8 developers shipped this update, including nessita, dependabot, Dmytro Berezovskyi, pre-commit-ci[bot], pre-commit-ci, Carlton Gibson, VIZZARD-X, and Phinart98.
What were the notable Django updates?
Added a reCAPTCHA to the account registration form, Add ability to configure websocket message size when running as django dev server, and Bump actions/setup-python from 6 to 6.3.0.

More from @django

Daily updates, in your inbox

Follow Django

What actually shipped in Django, written up every day — commits, pull requests, releases, and security advisories.

or

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

Elsewhere on the wire

Want every project, not just this one?