summaryrefslogtreecommitdiff
path: root/docs/ref
AgeCommit message (Collapse)Author
6 daysRefs #36905 -- Corrected safe param in JSONResponse signature in docs.Aslan Osmanov
The docstring and reference documentation still described the safe parameter as defaulting to True after its deprecation. Follow-up to 6e15ac8066312328de279e3e072667416c205bfc.
7 daysDocumented additional caveats for inspectdb.Clifford Gama
9 daysFixed CVE-2026-15830 -- Mitigated potential DoS via nested geometry collections.Jacob Walls
Since deeply nested geometry collections can lead to fatal errors in GEOS, a new `max_geom_collections` argument on geometry model and form fields, passed down to `GEOSGeometry` itself, allows limiting either depth (WKT) or total number (WKB) before reaching GEOS. Thanks Andrew MacPherson and kimchunbok_ for the reports, and Natalia Bidart, Simon Charette, and Sarah Boyce for reviews.
9 daysFixed CVE-2026-15337 -- Mitigated potential DoS in check_for_language().Natalia
Language codes longer than 500 characters are now rejected before the cached lookup, so they are no longer retained as cache keys consuming memory from each process. Thanks Jaeyoung Jang for the report, and Sarah Boyce for reviews.
9 daysFixed CVE-2026-15307 -- Blocked raster strings and dicts in spatial lookups.Jacob Walls
Spatial lookups optimistically parse values as rasters before retrying as geometries. If a malicious value reached the GDALRaster constructor, depending on the raster driver, it might write to disk or fetch from the network regardless of the constructor's `write=False` default argument. Although this works as designed for model field assignment, this is potentially unexpected for querying, for example, in the admin's changelist view, which allows staff users to execute arbitrary lookups on models registered with the admin. Network rasters didn't even work in lookup contexts before, providing further evidence that this use case was unintentional. (The failure point was after the fetching, however.) Now, strings and dicts representing rasters are rejected by spatial lookups. To opt in to using them, wrap them in a `GDALRaster` first. Although it would simplify the implementation to try geometries before rasters (instead of stashing a raster exception and raising it later), we maintain the current order, which has been stable for a decade. Thanks Bence Nagy, localhost-detect, and kimchunbok_ for providing information useful in evaluating this report. Thanks Simon Charette, Natalia Bidart, and Sarah Boyce for reviews.
10 daysFixed #37069 -- Clarified that UniqueConstraint may create a unique index.Clifford Gama
Thanks Jacob for the triage and James for the review.
10 daysRefs #28586 -- Renamed RAISE fetch mode to FETCH_RAISE.Jacob Walls
This aims for consistency in the django.db.models namespace. Thanks Natalia Bidart and Simon Charette for the idea.
13 daysFixed #36626 -- Preserved milliseconds in DataSource time fields.Francesco Bruni
13 daysRefs #37139 -- Doc'd _is_pk_set() handling of DatabaseDefault.Jacob Walls
14 daysRefs #28586 -- Doc'd fetch_mode attribute on ModelState.Jacob Walls
2026-07-29Fixed #37194 -- Removed redundant choice widget documentation.maheen8q
The removed section primarily provided usage examples and recommendations rather than documenting the widget API. The interaction between a choice field and its widget is already documented in the Select.choices reference.
2026-07-27Fixed #20023 -- Added custom validation example for admin inlines.Joseano Sousa
Thank you to James Bligh and Sarah Boyce for the review.
2026-07-24Fixed minor typos and grammatical errors in docs and docstrings.Jacob Walls
Thanks to these people for pointing these out: * Hojeong Park * Natalia Bidart * Sulav Raj Bista
2026-07-22Fixed #36925 -- Listed further shared features for InlineModelAdmin.James Aylett
2026-07-21Fixed #37032 -- Documented that the CSRF context processor is always enabled ↵VIZZARD-X
in its reference documentation.
2026-07-17Fixed #37219 -- Added GeneratedField example to PostgreSQL search reference.Carlton Gibson
2026-07-15Added MAILERS to core settings topical index.Mike Edmunds
2026-07-13Fixed #37199 -- Fixed typo in bulk_update code example in ↵Tom Most
docs/ref/models/querysets.txt.
2026-07-10Fixed #36864 -- Supported modules and submodules in import_string().Leland
Before, only submodules worked (and only if already imported). Now, all modules work regardless of prior import state. Updated expected exception in auth tests where import_string() returns a non-callable.
2026-07-08Refs #36277 -- Added release note for Postgres 18+ virtual column.Simon Charette
2026-07-07Refs #32670 -- Revealed warning in GDAL virtual filesystem reference.Jacob Walls
2026-07-06Fixed flatpages synopsis in docs.Mike Edmunds
Changed `?flat?` to `"flat"` in synopsis. (Guessing this was an encoding problem related to fancy quotes in some earlier version.) Removed `simple` from synopsis, matching other page content.
2026-07-06Added FILE_UPLOAD_DIRECTORY_PERMISSIONS to docs settings index.Lincoln Puzey
2026-07-06Fixed #37172 -- Linked to upload handlers section in FILE_UPLOAD_* settings ↵Lincoln Puzey
see for details.
2026-07-01Fixed #34753 -- Extended security and safety remarks in email topics docs.Mike Edmunds
Reworked the outdated "Preventing header injection" section: * Added a "Safely sending email" section noting that the topic is relevant but beyond the scope of Django's own docs. * Added a section on correctly formatting email addresses with a variable display name to avoid injection attacks. * Updated the existing "Preventing header injection" section to note that Django (via Python) already prevents CRLF injection, but that custom email backends that bypass Django's protections may need to handle it. Also added references to the new "Formatting email addresses" section from the `ADMINS`, `DEFAULT_FROM_EMAIL`, and `SERVER_EMAIL` settings.
2026-06-30Fixed #37162 -- Updated ContactForm docs example to use safe practices.Mike Edmunds
Updated the `ContactForm` examples in the "Forms" topic and reference docs to avoid broken and unsafe practices around sending email: * Stopped using user-provided `sender` address as `from_email`. Instead, renamed to `contact_email` and used it as the `reply_to` address. * Removed `cc_myself` option to prevent using the form to send spam. Substituted an `urgent` field to demonstrate `BooleanField` use. * Identified email as coming from the contact form and added other content to reduce impersonation/phishing risks. Also updated some example output in the forms reference docs where it had drifted from the example code over time: email fields default to `maxlength=320`; the `ContactForm` example has been using a `TextArea` widget for its message field.
2026-06-25Refs #37188 -- Used a more realistic --ignore in compilemessages example.Jacob Walls
2026-06-23Removed additional versionchanged notices for 6.0.Jacob Walls
2026-06-23Fixed #37166 -- Added deploy system check for dev-only 'default' MAILERS.Mike Edmunds
Added mail.E001 deployment-only system check to detect one of Django's not-for-production-use email backends in the "default" MAILERS entry.
2026-06-22Fixed #37161 -- Warned via system check on missing "default" entry in ↵badereddinebenhirt
MAILERS setting. Thanks Mike Edmunds for reviews. Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2026-06-16Fixed #36881 -- Corrected documentation for ModelAdmin.search_fields.Amar
2026-06-16Refs #37142 -- Removed docs for django.utils.warnings.django_file_prefixes().Natalia
This reverts docs changes from commit f970a98e464320c09dde8d45009eadfb4d038a57.
2026-06-11Fixed #37141 -- Added --using option to sendtestemail command.NagaKartheekReddy
2026-06-11Refs #24941 -- Doc'd get_exclude() in base features shared by InlineModelAdmin.Jacob Walls
2026-06-10Fixed #37142 -- Moved django_file_prefixes() to django.utils.warnings.zhengkangyang
2026-06-05Fixed #36984 -- Made inline formset error messages respect ↵Karolis Ryselis
delete_confirmation_max_display.
2026-06-03Refs #36905 -- Moved JSONResponse safe param discussion to versionchanged box.Jacob Walls
Follow-up to 6e15ac8066312328de279e3e072667416c205bfc.
2026-06-03Refs CVE-2026-6873 -- Defaulted SIGNED_COOKIE_LEGACY_SALT_FALLBACK ↵Jacob Walls
transitional setting to False.
2026-06-03Fixed #34699 -- Added examples of database comparisons against ↵wesley
Extract()/Trunc().
2026-06-03Fixed CVE-2026-6873 -- Prevented signed cookie salt namespace collisions.Paul McMillan
Made signed cookies derive their signer namespace from an injective encoding of `(name, salt)` while preserving compatibility with legacy `name + salt` cookies behind SIGNED_COOKIE_LEGACY_SALT_FALLBACK. Thanks Peng Zhou for the report, and Shai Berger, Markus Holterman, Jake Howard, and Paul McMillan for reviews. Co-authored-by: Jacob Walls <jacobtylerwalls@gmail.com> Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2026-06-01Fixed #28800 -- Added a listurls management command.Chris Rose
Thanks JaeHyuck Sa, Jacob Walls, and Tim McCurrach for reviews. Co-authored-by: Ülgen Sarıkavak <ulgensrkvk@gmail.com>
2026-06-01Fixed #37119 -- Clarified middleware ordering note for nonce access.vishwa
2026-05-29Refs #35514 -- Improved docs for MAILERS setting and mailers migration guide.Natalia
Thanks Mike Edmunds for flagging these issues and for the review.
2026-05-27Fixed #36905 -- Deprecated the safe parameter of JSONResponse.Tim Harris
Peer frameworks have long since dropped their analogous checks for this vulnerability that was fixed in ES5.
2026-05-26Refs #35514 -- Removed specific Django versions from outside deprecated blocks.Natalia
This follows the contributing guidelines that state: [...] Avoid referring to a specific version of Django outside a ``deprecated`` block. Even inside a block, it's often redundant to do so as these annotations render as "Deprecated since version A.B".
2026-05-26Refs #35870 -- Moved deprecated notice at the bottom for USE_BLANK_CHOICE_DASH.Natalia
Also expended a bit on details for the setting so readers know what is it about.
2026-05-26Fixed #37116 -- Explained why a code is useful in a ValidationError.Arthur Vuillard
2026-05-20Removed versionadded/changed annotations for 6.0.Sarah Boyce
2026-05-20Fixed #37091 -- Confirmed support for GDAL 3.13.Milad Zarour
Thanks David Smith for reviews.
2026-05-20Refs #35514 -- Cleaned up mailers docs.Mike Edmunds
* Fixed typos related to automated EMAIL_PROVIDERS -> MAILERS renaming. * Clarified wording in some recently added/updated sections. * Removed deprecated, extraneous `fail_silently=False` from examples. * Moved EmailBackend API documentation out of "Email backends" intro into a dedicated section in email.txt. * Sorted MAILERS alphabetically in settings.txt.