The Wire · Showcase
DJANGO KILLS FALSE DEPRECATION WARNING IN TEMPLATES
By RepoJournal · Filed · About Django
Adam Johnson fixed a critical bug where Django 7.0 deprecation warnings fired on innocent string literals with consecutive dots, breaking test suites across the ecosystem.
The issue struck templates using string or numeric literals containing double dots, like {{ "a..b" }} or {{ 'a..b'|upper }}, which incorrectly triggered RemovedInDjango70Warning even though no actual variable lookup was happening [1] [2]. The root cause: Django's deprecation check inspected the resolved value rather than the expression itself, creating noise that broke builds relying on warnings-as-errors settings. This fix lands in django/django and closes a gap that could have cascaded across production deployments hitting Django 7.0 for the first time. Meanwhile, djangoproject.com's dependency pipeline moved smoothly with routine updates across playwright, time-machine, and feedparser [3] [4] [5], while asgiref clarified ASGI Early Hints message ordering to align with real-world server implementations like Hypercorn [6].
One email a day. Unsubscribe in one click.
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. Read a past issue →
Action items
- → If you have tests with warnings-as-errors enabled, upgrade django/django to pick up the fix django/django [plan]
- → Review your template literals before 7.0 release if you're running a development branch django/django [monitor]
References
- [1] Fixed #37257, Refs #35738 -- Prevented double-dot deprecation warnings for template literals. django/django
- [2] Fixed #37257, Refs #35738 -- Prevented double-dot deprecation warnings for template literals. ↗ django/django
- [3] Bump playwright from 1.61.0 to 1.62.0 in /requirements ↗ django/djangoproject.com
- [4] Bump time-machine from 3.2.0 to 3.3.0 in /requirements ↗ django/djangoproject.com
- [5] Bump feedparser from 6.0.12 to 6.0.14 in /requirements ↗ django/djangoproject.com
- [6] Clarify Early Hints message ordering ↗ django/asgiref