| Age | Commit message (Collapse) | Author |
|
In Python 3.12 it is possible to check containment using member values,
not just the members themselves.
https://docs.python.org/3/library/enum.html#enum.EnumType.__contains__
|
|
Changed the cache name used for singly related objects to be the
to_attr parameter passed to a Prefetch object. This fixes issues with
checking if values have already been fetched in cases where the Field
already has some prefetched value, but not for the same model attr.
|
|
Thanks Adam Johnson and Paolo Melchiorre for reviews.
Co-Authored-By: Lily Foote <code@lilyf.org>
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
|
|
OuterRef annotations.
Thanks Pierre-Nicolas Rigal for the report.
Regression in c67ea79aa981ae82595d89f8018a41fcd842e7c9.
|
|
|
|
ChoiceField's choices.
|
|
|
|
dict_keys.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
|
|
Thanks zhu for the report and Simon Charette for reviews.
|
|
Thanks Nwawel A Iroume for the report.
|
|
|
|
one-to-many relations.
|
|
The __isnull lookup of JSONField must special case
Value(None, JSONField()) left-hand-side in order to be coherent with
its convoluted null handling.
Since psycopg>=3 offers no way to pass a NULL::jsonb the issue is
resolved by optimizing IsNull(Value(None), True | False) to
True | False.
Regression in 5c23d9f0c32f166c81ecb6f3f01d5077a6084318.
Thanks Alexandre Collet for the report.
|
|
Special characters lose their special meaning inside sets of characters.
"-" lose its special meaning if it's placed as the first or last
character.
Follow up to 7c6b66383da5f9a67142334cd2ed2d769739e8f1.
|
|
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
|
|
annotations.
Thanks Toan Vuong for the report.
Thanks Simon Charette for the review.
Regression in 59bea9efd2768102fc9d3aedda469502c218e9b7.
|
|
|
|
|
|
Regression in dd68af62b2b27ece50d434f6a351877212e15c3f.
Thanks Toan Vuong for the report.
|
|
|
|
|
|
|
|
functions.
Regression in 59bea9efd2768102fc9d3aedda469502c218e9b7.
Refs #28477.
Thanks younes-chaoui for the report.
|
|
updating conflicts.
|
|
While values(*field_excluding_pk).distinct() and
distinct(*field_excluding_pk) can reduce the number of resulting rows
in a way that makes subsequent delete() calls ambiguous standalone
.distinct() calls cannot.
Since delete() already disallows chain usages with values() the only
case that needs to be handled, as originally reported, is when
DISTINCT ON is used via distinct(*fields).
Refs #32682 which had to resort to subqueries to prevent duplicates in
the admin and caused significant performance regressions on MySQL
(refs #34639).
This partly reverts 6307c3f1a123f5975c73b231e8ac4f115fd72c0d.
|
|
Model.save().
|
|
inherited from different paths.
Co-authored-by: Simon Charette <charette.s@gmail.com>
|
|
links to common parent for MTI models.
|
|
without width/height fields.
This avoids reading the image size when the dimensions fields
(image_width, image_height) do not exist, as that operation may be
expensive.
Partially reverts ea53e7c09f1b8864c20c65976bbeaeab77abdaec, that dropped
the check for the dimension fields in update_dimension_fields(), because
the post_init signal was no longer registered without dimension fields.
However, another code path to that function exists: when the
ImageFileField is save()d, the name from the storage is setattr()ed on
the field, and ImageFileDescriptor calls update_dimension_fields()
because the image size might have changed. Keep bailing out early when
dimensions are unused.
Besides, computing the image dimensions causes to close() the file,
resulting in a backward-incompatible change. The test protects against
that change.
|
|
ancestor with primary key that has a default.
Co-authored-by: Simon Charette <charette.s@gmail.com>
|
|
The outer query reference is not necessary when alias can be reused and
can even be harmful by confusing query planers.
Refs #34597.
|
|
|
|
An n-ary logical XOR Q(…) ^ Q(…) ^ … ^ Q(…) should evaluate to true
when an odd number of its operands evaluate to true, not when exactly
one operand evaluates to true.
|
|
Regression in b3db6c8dcb5145f7d45eff517bcd96460475c879.
Thanks Ian Cubitt for the report.
This also corrected test_inheritance_deferred2() test which was
previously properly defined and marked as an expected failure but was
then wrongly adjusted to mask the lack of support for per-alias
deferral that was fixed by #21204.
|
|
|
|
values to decimal."
This reverts 7990d254b0af158baf827fafbd90fe8e890f23bd.
Thanks Marc Odermatt for the report.
|
|
Regression in 59bea9efd2768102fc9d3aedda469502c218e9b7.
Refs #28477.
Thanks Denis Roldán and Mariusz for the test.
|
|
reference.
Regression in 1297c0d0d76a708017fe196b61a0ab324df76954.
Refs #31679.
|
|
SQLCompiler.
Performance regression in 278881e37619278789942513916acafaa88d26f3.
Co-authored-by: David Smith <smithdc@gmail.com>
|
|
While deferring many-to-many and GFK has no effect, the previous
implementation of QuerySet.defer() ignore them instead of crashing.
Regression in b3db6c8dcb5145f7d45eff517bcd96460475c879.
Thanks Paco Martínez for the report.
|
|
Regression in 5c23d9f0c32f166c81ecb6f3f01d5077a6084318.
|
|
Special thanks to Hannes Ljungberg for finding multiple implementation
gaps.
Thanks also to Simon Charette, Adam Johnson, and Mariusz Felisiak for
reviews.
|
|
|
|
|
|
It's also supported on SQLite 3.35+ and MariaDB 10.5+.
|
|
|
|
width/height fields.
|
|
|
|
self-referential subqueries if supported.
|
|
It was a copy of sql.Query._add_q that avoided JOIN updates.
|