1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00
Commit Graph

33365 Commits

Author SHA1 Message Date
Jacob Walls
9525135698 [5.2.x] Fixed #35167 -- Delegated to super() in JSONField.get_db_prep_save().
Avoids reports of bulk_update() sending Cast expressions
to JSONField.get_prep_value().

Co-authored-by: Simon Charette <charette.s@gmail.com>

Backport of 0bf412111b from main.
2025-02-18 17:29:34 +01:00
Sarah Boyce
bb4f65ec87 [5.2.x] Removed advice to propose a new contrib app.
Backport of 9d22a7d8f0 from main.
2025-02-18 16:11:08 +01:00
Simon Charette
6b8a6e1251 [5.2.x] Fixed #36197 -- Fixed improper many-to-many count() and exists() for non-pk to_field.
Regression in 66e47ac69a.

Thanks mfontana-elem for the report and Sarah for the tests.

Backport of c3a23aa02f from main.
2025-02-18 11:44:46 +01:00
Кайрат Макым
b0d497ada0 [5.2.x] Fixed #31170 -- Added change event trigger to dismissRelatedLookupPopup.
Backport of 51398f8bd5 from main.
2025-02-18 10:36:33 +01:00
Кайрат Макым
7cf6a34cb2 [5.2.x] Refs #31170 -- Added JavaScript tests for RelatedObjectLookups.js.
Backport of 91bebf1adb from main.
2025-02-18 10:35:56 +01:00
mimi89999
cb2ab4ee84 [5.2.x] Fixed #36179 -- Unhexed entries and removed duplicates in auth/common-passwords.txt.gz.
Backport of 727731d76d from main.
2025-02-18 09:00:31 +01:00
Gaël Utard
ae391ca368 [5.2.x] Fixed #36191 -- Truncated the overwritten file content in FileSystemStorage.
Backport of 0d1dd6bba0 from main.
2025-02-17 14:03:36 +01:00
Simon Charette
c55a808198 [5.2.x] Refs #35967 -- Doc'd DatabaseCreation.serialize_db_to_string() method.
Backport of 99ac8e2589 from main
2025-02-16 13:43:45 +01:00
Simon Charette
923c5daa10 [5.2.x] Fixed #35967 -- Deferred test suite fixtures serialization after all dbs setup.
While the top-level objects fed to serialization are bound to the test
database being created nothing prevents code invoked during
serialization from performing queries against other connections entries
that haven't been swapped yet.

The reported example of that is a database router directing all reads to
a test mirror for a set of models involving auto-created many-to-many
fields. It might be tempting to address the many-to-many field case but
this a symptom of a larger problem where the test framework yields the
flow execution to user code that could interact with non-test databases
in unexpected ways.

Deferring test database fixture serialization until the point where all
connections entries have been swapped for their test equivalent ensures
that no code triggered during serialization can interact with non-test
databases.

Thanks Jake Howard for the report and Jacob Walls for the initial
investigation.

Backport of dc69a63f84 from main
2025-02-16 13:43:38 +01:00
Mariusz Felisiak
c80c81163e [5.2.x] Refs #36181 -- Removed the obsolete SubqueryConstraint machinery.
Adding proper support for subquery right-hand-sides to TupleIn made it
obsolete.

Backport of d386405e04 from main

Co-authored-by: Simon Charette <charette.s@gmail.com>
2025-02-15 17:48:53 +01:00
Simon Charette
8b1e324ca4 [5.2.x] Fixed #36173 -- Stabilized identity of Concat with an explicit output_field.
When Expression.__init__() overrides make use of *args, **kwargs
captures their argument values are respectively bound as a tuple and
dict instances. These composite values might themselves contain values
that require special identity treatments such as Concat(output_field)
as it's a Field instance.

Refs #30628 which introduced bound Field differentiation but lacked
argument captures handling.

Thanks erchenstein for the report.

Backport of df2c4952df from main
2025-02-15 16:24:00 +01:00
Julien Palard
e62301091d [5.2.x] Fixed #36102 -- Moved i18n comments directly above the translatable string.
xgettext only extracts comment blocks if there is no program code between
the comment and the string that gets extracted. For details, see:
https://www.gnu.org/software/gettext/manual/html_node/xgettext-Invocation.html#Operation-mode

Black formatting has been turned off in some places to ensure the
comments are not moved, which previously resulted in them being removed
from the po files when scripts/manage_translations.py was run.

Backport of 6fcd0440aa from main.
2025-02-14 15:23:46 +01:00
Luke Cousins
9cd975c7fa [5.2.x] Corrected wording in docs/ref/models/constraints.txt.
Backport of 579a1c9996 from main.
2025-02-14 15:20:26 +01:00
9ad5d0ac3b [5.2.x] Fixed typo in docs/ref/databases.txt.
Backport of d87bb0eb3e from main.
2025-02-14 15:16:48 +01:00
Kim Yeongbin
3a455a44c1 [5.2.x] Corrected SHORT_DATE_FORMAT for Korean (ko).
Backport of 14b46c1b84 from main
2025-02-13 22:35:54 +01:00
Natalia
6f934989df [5.2.x] Fixed #36158 -- Refactored shell command to improve auto-imported objects reporting.
Backport of 56e23b2319 from main.
2025-02-13 16:03:09 +01:00
Sarah Boyce
92d5b2f389 [5.2.x] Fixed #36182 -- Returned "?" if all parameters are removed in querystring template tag.
Thank you to David Feeley for the report and Natalia Bidart for the review.

Backport of 05002c153c from main.
2025-02-13 15:50:53 +01:00
Mariusz Felisiak
d3d9f3a5a4 [5.2.x] Reverted "Refs #35803 -- Added support for __coveredby GIS lookup on MariaDB 11.7+."
This partly reverts commit 0b7edb9fcd.

MariaDB reverted GIS functions.

Backport of 54a902c6e8 from main.
2025-02-13 10:40:53 +01:00
Mariusz Felisiak
fc19618171 [5.2.x] Reverted "Fixed #35803 -- Added support for Collect, GeoHash, and IsValid on MariaDB 11.7+."
This reverts commit c77573716a.

MariaDB reverted GIS functions.

Backport of eb70aafdba from main.
2025-02-13 10:40:07 +01:00
Simon Charette
771c250b10 [5.2.x] Fixed #36181 -- Allowed Subquery usage in __in lookups against composite pks.
Thanks Jacob Walls for the report.

Backport of 8561100425 from main.
2025-02-13 09:31:01 +01:00
Simon Charette
dc1c9b4ddd [5.2.x] Fixed #36149 -- Allowed subquery values against tuple exact and in lookups.
Non-tuple exact and in lookups have specialized logic for subqueries that can
be adapted to properly assign select mask if unspecified and ensure the number
of involved members are matching on both side of the operator.

Backport of 41239fe34d from main.
2025-02-11 09:16:44 +01:00
Simon Charette
f8fce8d4dc [5.2.x] Refs #36148 -- Relied on a feature switch to define tuple lookups support.
This should allow backends more easily opt-in or out of native support and rely
on the fallback if unavailable.

Backport of a0a765ddeb from main.
2025-02-11 09:15:58 +01:00
Natalia
16c7dc543c [5.2.x] Refs #35515 -- Fixed shell command verbose output when auto-importing 0 or 1 object.
Co-authored-by: Salvo Polizzi <salvopolizzi03@gmail.com>

Backport of 0597e8ad1e from main.
2025-02-10 22:59:44 -03:00
Natalia
7b0c587a68 [5.2.x] Refs #35515 -- Refactored internal get_and_report_namespace in the shell command.
Backport of 44ccd20375 from main.
2025-02-10 22:59:33 -03:00
Natalia
0125bc15d4 [5.2.x] Refs #35515 -- Added missing docs for --no-imports flag for the shell command.
Backport of 3839afb63a from main.
2025-02-10 22:59:27 -03:00
Natalia
12517e667b [5.2.x] Wrapped lines at 79 cols in docs/howto/custom-shell.txt.
Backport of ca0794fa32 from main.
2025-02-10 22:59:17 -03:00
Mariusz Felisiak
efef715525 [5.2.x] Specified "django" repository for twine call in docs/internals/howto-release-django.txt.
It's necessary to specify a repository for `.pypirc` user configurations
with multiple per-project PyPI tokens.

Follow up to 26aedbbc08.
Backport of 0dc61495b2 from main.
2025-02-10 22:54:26 -03:00
Simon Charette
1ec20a8e84 [5.2.x] Refs #373 -- Delegated Tuple compilation to compiler.
This should allow third-party backends to define Tuple.as_vendor()
overrides that are taken into consideration which calling as_sql()
directly prevents.

Backport of c326cfe3b1 from main
2025-02-09 17:46:07 +01:00
Simon Charette
0690c06013 [5.2.x] Refs #34975 -- Removed unnecessary lookups.In.get_refs().
Now that In.get_source_expression() includes its right-hand-side when it
contains expressions (refs #36025) it no longer requires a specialized
get_refs() method.

Backport of 0bac41fc7e from main.
2025-02-06 17:02:22 +01:00
Simon Charette
d99985bbc1 [5.2.x] Fixed #36025 -- Fixed re-aliasing of iterable (in/range) lookups rhs.
In order for Expression.relabeled_clone to work appropriately its
get_source_expressions method must return all resolvable which wasn't the case
for Lookup when its right-hand-side is "direct" (not a compilable).

While refs #22288 added support for non-literals iterable right-hand-side
lookups it predated the subclassing of Lookup(Expression) refs #27021 which
could have been an opportunity to ensure right-hand-sides are always resolvable
(ValueList and ExpressionList).

Addressing all edge case with non-resolvable right-hand-sides would require
a significant refactor and deprecation of some parts of the Lookup interface so
this patch only focuses on FieldGetDbPrepValueIterableMixin (In and Range
lookups) by making sure that a right-hand-side containing resolvables are dealt
with appropriately during the resolving phase.

Thanks Aashay Amballi for the report.

Backport of 089deb82b9 from main.
2025-02-06 17:00:31 +01:00
brian
b96e4c04b6 [5.2.x] Fixed #36061 -- Added migration support for ManyToManyField.through_fields.
Added through_fields support to ManyToManyField.deconstruct.
Thanks to Simon Charette for pointers and the review.

Backport of b13b8684a0 from main.
2025-02-06 15:27:26 +01:00
Simon Charette
8aea6b802c [5.2.x] Fixed #35677 -- Avoided non-sticky filtering of prefetched many-to-many.
The original queryset._next_is_sticky() call never had the intended effect as
no further filtering was applied internally after the pk__in lookup making it
a noop.

In order to be coherent with how related filters are applied when retrieving
objects from a related manager the effects of what calling _next_is_sticky()
prior to applying annotations and filters to the queryset provided for
prefetching are emulated by allowing the reuse of all pre-existing JOINs.

Thanks David Glenck and Thiago Bellini Ribeiro for the detailed reports and
tests.

Backport of 2598b371a9 from main.
2025-02-06 14:31:32 +01:00
Ben Cail
d57bf4618c [5.2.x] Refs #22997 -- Prevented requesting a default value for auto fields.
Backport of db7b1ae9f6 from main.
2025-02-06 13:55:41 +01:00
Natalia
2b11b8e989 [5.2.x] Added stub release notes for 5.1.7.
Backport of e2a8f4dac8 from main.
2025-02-05 11:22:24 -03:00
Natalia
f075694a62 [5.2.x] Added release date for 5.1.6, 5.0.12, and 4.2.19.
Backport of 294cc965ef from main.
2025-02-05 10:39:42 -03:00
amirreza sohrabi far
2cbf32ed36 [5.2.x] Clarified docs for default email value in UserManager.create_user().
Backport of 5da3ad7bf9 from main.
2025-02-04 16:36:13 -03:00
nessita
d6a44efa49 [5.2.x] Refs #35612 -- Extended docs on how the security team evaluates reports.
Co-authored-by: Shai Berger <shai@platonix.com>

Backport of f609a2da86 from main.
2025-02-04 08:55:11 -03:00
antoliny0919
209d0f6143 [5.2.x] Fixed #36069 -- Fixed the delete button position in TabularInlines.
Backport of 1330cb5705 from main.
2025-02-04 08:57:25 +01:00
antoliny0919
d03102a5a8 [5.2.x] Fixed #36055 -- Prevented overlap of object-tools buttons and page header in the admin.
Backport of b1324a680a from main.
2025-02-04 08:49:07 +01:00
Simon Charette
303c2569da [5.2.x] Fixed #36135 -- Fixed reverse GenericRelation prefetching.
The get_(local|foreign)_related_value methods of GenericRelation must be
reversed because it defines (from|to)_fields and associated related_fields
in the reversed order as it's effectively a reverse GenericForeignKey
itself.

The related value methods must also account for the fact that referenced
primary key values might be stored as a string on the model defining the
GenericForeignKey but as integer on the model defining the GenericRelation.
This is achieved by calling the to_python method of the involved content type
in get_foreign_related_value just like GenericRelatedObjectManager does.

Lastly reverse many-to-one manager's prefetch_related_querysets should use
set_cached_value instead of direct attribute assignment as direct assignment
might are disallowed on ReverseManyToOneDescriptor descriptors. This is likely
something that was missed in f5233dc (refs #32511) when the is_cached guard
was added.

Thanks 1xinghuan for the report.

Backport of 198b30168d from main.
2025-02-03 10:40:52 +01:00
nessita
affad13d0c [5.2.x] Fixed #36140 -- Allowed BaseUserCreationForm to define non required password fields.
Regression in e626716c28.

Thanks buffgecko12 for the report and Sarah Boyce for the review.

Backport of d15454a6e8 from main.
2025-02-01 22:50:26 -03:00
Mike Edmunds
e939cffa50 [5.2.x] Fixed #36162 -- Fixed the black Makefile docs rule to work on macOS.
The `make black` target in the docs directory used Linux-specific
syntax for its `find` command. Changed to syntax that also works
on macOS and other BSD Unix variants.
Backport of 248d8457cb from main.
2025-02-01 22:28:35 -03:00
greg
2146bd1261 [5.2.x] Fixed #36119 -- Fixed UnicodeEncodeError when attaching a file with 8bit Content-Transfer-Encoding.
Backport of 89e28e13ec from main.
2025-01-31 12:55:57 +01:00
nessita
b406907af5 [5.2.x] Tweaked docs to avoid reformatting given new black version.
Backport of fd3cfd80be from main.
2025-01-30 10:38:44 -03:00
sharonwoo
77f9e6bcd3 [5.2.x] Fixed #35235 -- Removed caching of BaseExpression._output_field_or_none.
Backport of cbb0812683 from main.
2025-01-30 13:51:25 +01:00
Vinko Mlačić
d567e3a52e [5.2.x] Fixed #36155 -- Improved error handling when annotate arguments require an alias.
Regression in ed0cbc8d8b.

Backport of c6ace896a2 from main.
2025-01-30 12:18:08 +01:00
Salvo Polizzi
dfaf8aa6c6 [5.2.x] Fixed #36159 -- Removed the empty import example in the custom shell docs.
This can be achieved with the --no-imports flag.

Backport of b84478ae95 from main.
2025-01-30 12:16:16 +01:00
Sarah Boyce
a469397dd3 [5.2.x] Fixed #36118 -- Accounted for multiple primary keys in bulk_update max_batch_size.
Co-authored-by: Simon Charette <charette.s@gmail.com>

Backport of 5a2c1bc07d from main.
2025-01-29 10:25:00 +01:00
Sarah Boyce
4aa2cd6f68 [5.2.x] Clarified the Releaser's discretion for determining and postponing the release date.
Backport of 8a6b4175d7 from main.
2025-01-28 18:19:14 +01:00
Simon Charette
d4d2e09f19 [5.2.x] Fixed #36122 -- Raised FieldError when updating with composite reference value.
Thanks Jacob Walls for the report and test.

Backport of efec74b908 from main.
2025-01-28 13:19:36 +01:00