1
0
mirror of https://github.com/django/django.git synced 2025-10-31 01:25:32 +00:00
Commit Graph

33482 Commits

Author SHA1 Message Date
Mariusz Felisiak
5aefd005fc [5.2.x] Fixed writer_name deprecation warning in docutils 0.22+.
Backport of 65ab92f6a8 from main.
2025-07-29 21:50:54 -03:00
Simon Charette
3031c512f0 [5.2.x] Fixed #36522 -- Added support for filtering composite pks using a tuple of expressions.
Thanks Jacob Walls for the report, and Sarah Boyce and Mariusz Felisiak
for reviews.

Backport of 0a4999b422 from main.
2025-07-28 16:40:08 -03:00
Jordan Bae
28f33f50b2 [5.2.x] Moved manual testing instructions from intro to submitting patches docs.
The section on manual testing, including how to use a local checkout of
Django, is moved from the contribution intro to the submitting patches
docs. This makes it easier for reviewers and authors to follow best
practices.

Backport of fdeca38072 from main.
2025-07-28 09:02:15 -03:00
Mike Edmunds
c1356333b6 [5.2.x] Fixed typo in docs/topics/email.txt.
Backport of f551aeb003 from main.
2025-07-25 13:32:23 +02:00
Thibaud Colas
6e71386118 [5.2.x] Added accessibility guidelines for contributors.
Backport of 5527df9192 from main.
2025-07-23 16:42:23 +02:00
Mike Edmunds
6966adc519 [5.2.x] Fixed get_connection() signature in docs/topics/email.txt.
django.core.mail.get_connection() has always supported only variable
keyword arguments (never variable positional arguments).

Backport of 5289ce65b9 from main.
2025-07-17 14:02:01 -03:00
Natalia
a76587531b [5.2.x] Added SimpleTestCase.enterContext() on Python < 3.11.
This reverts commit 47a618d45c and uses
a solution similar to ed4f83782d instead.
2025-07-16 18:11:53 -03:00
nessita
fcc7c12f80 [5.2.x] Fixed GitHub Action that checks commit prefixes to fetch PR head correctly.
Backport of 8499fba0e1 from main.
2025-07-16 15:37:08 -03:00
nessita
c1883c3b20 [5.2.x] Added GitHub Action to enforce stable branch commit message prefix.
Backport of 10386fac00 from main.
2025-07-16 08:38:50 -03:00
Clifford Gama
1c2e11c7f4 [5.2.x] Fixed typo in docs/ref/utils.txt.
Backport of ac2d907f45 from main
2025-07-13 19:38:44 +02:00
Tim Schilling
e5080fc5e9 [5.2.x] Added Django ecosystem page to the documentation.
Backport of 395e498553 from main
2025-07-13 15:06:58 +02:00
Simon Charette
3df1ad57bf [5.2.x] Fixed #36502 -- Restored UNNEST strategy for foreign key bulk inserts on PostgreSQL.
Regression in 764af7a3d6.

Backport of 0fe218842e from main.
2025-07-10 18:36:01 +02:00
Natalia
abc10ab7f9 [5.2.x] Added release date for 5.2.4.
Backport of 94ebcf8366 from main.
2025-07-02 15:56:47 -03:00
Natalia
4da3446c92 [5.2.x] Added stub release notes for 5.2.5.
Backport of 7ab6b863da from main.
2025-07-02 15:51:38 -03:00
Natalia
1a5c75d8cd [5.2.x] Post-release version bump. 2025-07-02 15:44:20 -03:00
Natalia
c941d0deec [5.2.x] Bumped version for 5.2.4 release. 5.2.4 2025-07-02 15:42:00 -03:00
Natalia
47a618d45c Fixed AttributeError for enterContext() on Python < 3.11.
On Jenkins with Python 3.10:

Traceback (most recent call last):
  File "[...]/python3.10/tests/composite_pk/test_filter.py", line 559, in setUp
    self.enterContext(feature_patch)
AttributeError: 'CompositePKFilterTupleLookupFallbackTests' object has no attribute 'enterContext'
2025-07-02 10:25:21 -03:00
Simon Charette
a150160c9f [5.2.x] Fixed #36464 -- Fixed "__in" tuple lookup on backends lacking native support.
When native support for tuple lookups is missing in a DB backend, it can
be emulated with an EXISTS clause. This is controlled by the backend
feature flag "supports_tuple_lookups".

The mishandling of subquery right-hand side in `TupleIn` (added to
support `CompositePrimaryKey` in Refs #373) was likely missed because
the only core backend we test with the feature flag disabled
(Oracle < 23.4) supports it natively.

Thanks to Nandana Raol for the report, and to Sarah Boyce, Jacob Walls,
and Natalia Bidart for reviews.

Backport of 192bc7a7be from main.
2025-06-30 20:16:08 -03:00
Jake Howard
db5da3c91c [5.2.x] Clarified that only latest dependency versions are valid for security reports.
Backport of bc1bfe12b6 from main.
2025-06-18 11:05:15 -03:00
nessita
359af3779a [5.2.x] Added guidance on AI-assisted security reports to docs/internals/security.txt.
Co-authored-by: Shai Berger <shai@platonix.com>
Co-authored-by: Mike Edmunds <medmunds@gmail.com>

Backport of 0f60102444 from main.
2025-06-17 11:45:48 -03:00
Clifford Gama
1d89691c74 [5.2.x] Fixed #36453 -- Made When.condition resolve with for_save=False.
Value(None, JSONField()) when used in When.condition incorrectly resolved with
for_save=True, resulting in the value being serialized as SQL NULL instead of
JSON null.

Regression in c1fa3fdd04.

Thanks to Thomas McKay for the report, and to David Sanders and Simon Charettes
for the review.

Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>

Backport of 104cbfd44b from main.
2025-06-16 10:41:24 +02:00
Jake Howard
4de4edf2c0 [5.2.x] Fixed #36447 -- Selected preferred media type based on quality.
When matching which entry in the `Accept` header should be used for
a given media type, the specificity matters. However once those are
resolved, only the quality matters when selecting preference.

Regression in c075508b4d.

Thank you to Anders Kaseorg for the report.

Backport of 12c1557060 from main.
2025-06-16 09:27:46 +02:00
Sarah Boyce
f5cc6a888b [5.2.x] Corrected jsonfield fieldlookup references.
Backport of 8e2249bc79 from main.
2025-06-13 09:53:30 +02:00
Sulove Bista
538616136b [5.2.x] Fixed #36463 -- Fixed grammar in docs/intro/contributing.txt.
Backport of e80b33ae4d from main.
2025-06-12 15:14:52 -03:00
ruvilonix
e3b2370795 [5.2.x] Fixed #36454 -- Fixed typo in docs/intro/tutorial08.txt.
Backport of 87a5ae6c5b from main.
2025-06-12 09:56:39 +02:00
junghwan16
91569cffec [5.2.x] Fixed #36425 -- Standardized integer fields descriptions.
Backport of 091f66e51a from main.
2025-06-11 10:00:21 +02:00
Sarah Boyce
329a5c9228 [5.2.x] Added follow-up to CVE-2025-48432 to security archive.
Backport of 2714bc3f2c from main.
2025-06-10 15:11:54 +02:00
Sarah Boyce
69fe089f00 [5.2.x] Added stub release notes for 5.2.4.
Backport of 7fcc7b1a0c from main.
2025-06-10 12:31:19 +02:00
Sarah Boyce
6979ee39ae [5.2.x] Post-release version bump. 2025-06-10 11:47:04 +02:00
Sarah Boyce
15883bc669 [5.2.x] Bumped version for 5.2.3 release. 5.2.3 2025-06-10 11:34:02 +02:00
Jacob Walls
264003146f [5.2.x] Refs #373 -- Doc'd that on_delete is ignored for ForeignObject.
Backport of 76e1ca77bc from main.
2025-06-10 09:48:25 +02:00
Jacob Walls
6f99c8856d [5.2.x] Fixed #36449 -- Fixed field types in example model using ForeignObject.
Backport of 5942754769 from main.
2025-06-10 09:47:37 +02:00
Mariusz Felisiak
aec11dbb4c [5.2.x] Refs #36419 -- Fixed BulkUpdateTests.test_json_field_sql_null() crash on Oracle.
Follow up to c1fa3fdd04.

Backport of f5441e42da from main.
2025-06-10 08:42:37 +02:00
Natalia
cc5079730a [5.2.x] Fixed #36446 -- Restored "q" in internal MediaType.params property.
The "q" key was removed while addressing ticket #36411. Despite
`MediaType.params` is undocumented and considered internal, it was used
in third-party projects (Zulip reported breakage), so this work restored
the `q` key in `params`.

Thanks Anders Kaseorg for the report.

Regression in c075508b4d.

Backport of cf5f36bf90 from main.
2025-06-09 17:39:25 -03:00
Clifford Gama
6fc620b4a8 [5.2.x] Fixed #36419 -- Ensured for_save was propagated when resolving expressions.
The for_save flag wasn't properly propagated when resolving expressions, which
prevented get_db_prep_save() from being called in some cases. This affected
fields like JSONField where None would be saved as JSON null instead of SQL NULL.

Regression in 00c690efbc.

Thanks to David Sanders and Simon Charette for reviews.

Co-authored-by: Adam Johnson <me@adamj.eu>

Backport of c1fa3fdd04 from main.
2025-06-06 17:41:51 +02:00
Jake Howard
8fcc83953c [5.2.x] Refs CVE-2025-48432 -- Prevented log injection in remaining response logging.
Migrated remaining response-related logging to use the `log_response()`
helper to avoid potential log injection, to ensure untrusted values like
request paths are safely escaped.

Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>

Backport of 9579517552 from main.
2025-06-06 09:07:12 -03:00
Natalia
9d7fc9eb1c [5.2.x] Refs CVE-2025-48432 -- Made SuspiciousOperation logging use log_response() for consistency.
Backport of ff835f439c from main.
2025-06-06 09:07:06 -03:00
Natalia
c042af7147 [5.2.x] Refactored logging_tests to reuse assertions for log records.
Backport of 9d72e7daf7 from main.
2025-06-06 09:06:57 -03:00
Sarah Boyce
5901cfe591 [5.2.x] Updated translations from Transifex. 2025-06-06 13:55:05 +02:00
Natalia
f11fb10766 [5.2.x] Improved "fetch" translations helper to restrict the resulting set by date.
Backport of e715b07cf3 from main.
2025-06-05 12:04:50 -03:00
Natalia
48a82d44d8 [5.2.x] Added CVE-2025-48432 to security archive.
Backport of 51923c576a from main.
2025-06-04 10:58:40 -03:00
Natalia
3bc3ce8e64 [5.2.x] Added stub release notes for 5.2.3.
Backport of 1f19c36e2d from main.
2025-06-04 10:56:00 -03:00
Natalia
16892c92f5 [5.2.x] Post-release version bump. 2025-06-04 08:45:21 -03:00
Natalia
9e2fe65967 [5.2.x] Bumped version for 5.2.2 release. 5.2.2 2025-06-04 08:38:55 -03:00
Natalia
7456aa23da [5.2.x] Fixed CVE-2025-48432 -- Escaped formatting arguments in log_response().
Suitably crafted requests containing a CRLF sequence in the request
path may have allowed log injection, potentially corrupting log files,
obscuring other attacks, misleading log post-processing tools, or
forging log entries.

To mitigate this, all positional formatting arguments passed to the
logger are now escaped using "unicode_escape" encoding.

Thanks to Seokchan Yoon (https://ch4n3.kr/) for the report.

Co-authored-by: Carlton Gibson <carlton@noumenal.es>
Co-authored-by: Jake Howard <git@theorangeone.net>

Backport of a07ebec559 from main.
2025-06-04 08:34:51 -03:00
Simon Charette
3340d41446 [5.2.x] Fixed #36432 -- Fixed a prefetch_related crash on related target subclass queryset.
Regression in 626d77e52a.

Refs #36116.

Thanks Cornelis Poppema for the excellent report.

Backport of 08187c94ed from main.
2025-06-04 10:48:13 +02:00
Jake Howard
0c548e62d0 [5.2.x] Fixed #36411 -- Made HttpRequest.get_preferred_type() consider media type parameters.
HttpRequest.get_preferred_type() did not account for parameters in
Accept header media types (e.g., "text/vcard; version=3.0"). This caused
incorrect content negotiation when multiple types differed only by
parameters, reducing specificity as per RFC 7231 section 5.3.2
(https://datatracker.ietf.org/doc/html/rfc7231.html#section-5.3.2).

This fix updates get_preferred_type() to treat media types with
parameters as distinct, allowing more precise and standards-compliant
matching.

Thanks to magicfelix for the report, and to David Sanders and Sarah
Boyce for the reviews.

Backport of c075508b4d from main.
2025-06-03 16:11:38 -03:00
Jacob Walls
2bf4c5b9ea [5.2.x] Fixed #36416 -- Made QuerySet.in_bulk() account for composite pks in id_list.
Backport of 26313bc219 from main.
2025-06-03 17:46:59 +02:00
Blayze
37e5cc6d89 [5.2.x] Fixed #36423 -- Prevented filter_horizontal buttons from intercepting form submission.
In the admin's filter_horizontal widget, optional action buttons like
"Choose all", "Remove all", etc. were changed from `<a>` to `<button>`
elements in #34619, but without specifying `type="button"`. As a result,
when pressing Enter while focused on a form input, these buttons could
be triggered and intercept form submission.

Explicitly set `type="button"` on these control buttons to prevent them
from acting as submit buttons.

Thanks Antoliny Lee for the quick triage and review.

Regression in 857b1048d5.

Backport of 90429625a8 from main.
2025-06-02 22:26:36 -03:00
Natalia
e107b8a9d3 [5.2.x] Added stub release notes and release date for 5.2.2, 5.1.10, and 4.2.22.
Backport of 1a74434399 from main.
2025-05-28 10:18:13 -03:00