← All reportsPublic report

django/django

The Web framework for perfectionists with deadlines.

89k stars Python View on GitHubprofiled 15d ago
Try GitZoid
94PRs this week
36Contributors
5Deps scanned
0Issues found
01 · Repo overview

How django is put together

This is the Django web framework itself — a high-level Python framework for building server-side web applications, structured as a large library of loosely-coupled subsystems packaged under the `django/` namespace. It provides an ORM (`django.db`), request/response and middleware processing, URL routing, a template engine, forms, and a suite of contrib apps (admin, auth, admindocs). Data flows from WSGI/ASGI entry points through a middleware chain, into URL resolvers, view callables, the ORM, and back out via HttpResponse; app configuration is bootstrapped through the Apps registry from INSTALLED_APPS. The core is Python 3.12+, with a small JavaScript/QUnit test suite for admin frontend widgets.

Languages

PythonJavaScript

Frameworks

Django (this repository)QUnit (JS tests)Grunt (JS test runner)

Infrastructure

WSGIASGItox (test automation)pre-commitRead the Docs

Major components

django.apps

Application registry and AppConfig machinery that loads INSTALLED_APPS and tracks installed models.

django.db

ORM and database layer providing model persistence, transactions, and connection routing.

django.middleware

Built-in middleware (CSRF, security, clickjacking, cache, gzip, CSP, common) wrapping request/response processing.

django.contrib.admin

Auto-generated administrative CRUD interface with model registration, sites, options, and widgets.

django.contrib.auth

Authentication framework with user models, authentication backends, and admin integration.

django.template

Template engine handling parsing, context processing, tags/filters, and template loading/rendering.

django.forms

Form and formset handling with field definitions, model forms, widgets, and rendering.

django.urls

URL routing with resolvers, converters, and reverse-URL resolution.

Over the last several weeks, Django has been stabilizing and polishing its upcoming 6.1 release, finalizing release notes, patching four security vulnerabilities, and fixing a steady stream of bugs across the database layer, admin interface, forms, and geographic (GIS) tools. Much of the work focuses on correctness edge cases—query ordering, primary keys, database defaults—and on cleaning up documentation as version-specific notices are removed for the release. The pace is high and detail-oriented, reflecting the careful final polish typical before a major version ships.

Week by week

2026-08-17A quiet week of documentation cleanup and test adjustments as the 6.1 release wraps up.latest5 changes

Docs

Documented ordering error in combined queries

Clarified the error users see when default-ordering fields are missing after combining query results, and corrected a related release note.

Chore

Removed version-specific notices for 6.1

Cleaned out 'new in this version' documentation markers that are no longer needed now that 6.1 is being finalized.

Chore

Adjusted geographic tests for newer Oracle

Skipped certain map-data tests that behave differently on Oracle database version 23.9.

Chore

Restored optional Python 3.15 build requirements

Re-added optional dependencies used in daily test builds targeting the upcoming Python 3.15.

Chore

Added a missing test skip condition

Ensured a database-level foreign-key test only runs where supported.

2026-08-10A busy bug-fixing week spanning queries, forms, the admin, and security hardening of the URL validator.6 changes

Fix

Rejected dangerous characters in URL validation

The URL validator now refuses null characters, closing a potential input-handling problem.

Fix

Fixed admin list-display of related data

Corrected wrong values shown for indirectly related records in the admin interface's list columns.

Fix

Improved query ordering and sorting flexibility

Allowed more sophisticated ordering expressions after renaming query fields and better handled aliases in sorting logic.

Fix

Fixed decimal handling on SQLite

Corrected how decimal numbers without a set precision are read back from SQLite databases.

Fix

Fixed international text handling in the admin

Corrected Slovak character capitalization when generating URL-friendly slugs in the admin.

Fix

Allowed nesting of geographic collections

Made it possible to nest geometry-collection objects in Django's geographic tools.

2026-08-03Django finalized the 6.1 release notes and published fixes for several recently disclosed security issues.6 changes

Chore

Finalized Django 6.1 release notes

Completed the official notes for the 6.1 release and added starter notes for the follow-up 6.1.1.

Fix

Recorded four security advisories

Added four newly assigned security vulnerabilities to Django's security archive.

Fix

Restored safe rendering of HTML in forms

Fixed a regression so trusted HTML strings display correctly in form media and related output.

Fix

Hardened admin popup handling

Handled additional malformed input in admin popup windows to prevent errors.

Fix

Restored older model-loading customizations

Brought back support for the previous way developers could customize how models load from the database.

Chore

Updated translations

Refreshed translated text from the translation platform, including a Serbian language fix.

2026-07-27The project's busiest week, with wide-ranging fixes to database defaults, migrations, primary keys, and continuous-integration setup.6 changes

Fix

Fixed several primary-key and default-value bugs

Corrected how database-generated defaults and primary keys from related records are handled when saving data.

Fix

Smoother database migrations

Made harmless deletion-behavior changes no longer trigger unnecessary migration prompts, including for unmanaged models.

Fix

Fixed bulk record creation with related keys

Corrected mass-inserting records whose related primary keys are assigned late.

Fix

Improved admin sorting behavior

Prevented sort controls from appearing on admin columns that can't be meaningfully sorted.

Chore

Expanded and updated the test setup

Enabled the full Python test matrix on CI, added free-threaded Python 3.14, and updated tooling dependencies.

Fix

Added compatibility with newer SQL parsing library

Ensured Django works with version 0.5.5 of the sqlparse dependency.

2026-07-20A lighter week focused on documentation, admin fixes, and preparing upcoming maintenance releases.6 changes

Fix

Fixed admin crash on related data

Resolved a crash when displaying indirectly related records in the admin's list columns.

Docs

Documented async testing tools

Added documentation for the asynchronous test client available in Django's testing utilities.

Chore

Prepared upcoming maintenance releases

Added starter release notes and dates for the 6.0.8 and 5.2.17 maintenance versions.

Feature

Added a database capability flag

Introduced an internal flag indicating whether a database supports UUID generation in default values.

Docs

Cleaned up contributor documentation

Removed outdated references to the long-obsolete Python 2 from the contributing guide.

Chore

Adjusted geographic tests for Oracle

Skipped a geographic test that requires a feature unavailable on Oracle databases.

03 · Security check

Dependencies and code review

5 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 5 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required