$ the-wire · showcase
Django core lands bugfixes while djangoproject.com adopts ruff
By RepoJournal · Filed · About Django · Composed from the cited sources · methodology
Django shipped four targeted fixes overnight while the official site's lint stack gets a modern overhaul.
The core framework closed four tickets: transformations can now chain in order_by() after alias() [1], URLValidator rejects null characters [2], GEOS GeometryCollection nesting is allowed [3], and SQLite DecimalField conversion no longer breaks without precision [4]. The djangoproject.com repo is bringing in ruff with minimal config, and the PR notes "The goal is to introduce ruff to the lint setup with minimal config & changes" [5]. A separate commit applies the ruff fixes [6], and checkmake's minphony rule gets disabled because it "doesn't fit our use case" [7]. Code of conduct maintainers documented the Slack reminder requirement for suspension end dates [8], which was merged in [9]. The action is concentrated in the core bugfixes; the lint work is lower risk but worth watching.
Action items
- → Review and test Django core fixes against your queries that use alias() with order_by() django/django [plan]
- → Patch URLValidator null character rejection before exposing to untrusted input django/django [immediate]
- → Watch the ruff enablement PR on djangoproject.com for lint rule impacts django/djangoproject.com [monitor]
References
- [1] Fixed #37274 -- Allowed transforms in order_by() after alias(). ↗ django/django
- [2] Fixed #37279 -- Rejected null characters in URLValidator. ↗ django/django
- [3] Fixed #37250 -- Allowed nesting GEOS GeometryCollection objects. ↗ django/django
- [4] Fixed #37275, Refs #24920 -- Fixed SQLite DecimalField conversion without precision. ↗ django/django
- [5] Enable ruff ↗ django/djangoproject.com
- [6] Apply ruff fixes ↗ django/djangoproject.com
- [7] Disable checkmake's minphony rule ↗ django/djangoproject.com
- [8] Document Slack reminder requirement for suspension end dates ↗ django/code-of-conduct
- [9] Merge pull request #115 from django/document-suspension-reminders ↗ django/code-of-conduct