summaryrefslogtreecommitdiff
path: root/django/db/models
AgeCommit message (Collapse)Author
2020-07-28[3.1.x] Fixed #31829 -- Used JSONField __contains lookup on key transforms.sage
Backport of 2d8dcba03aae200aaa103ec1e69f0a0038ec2f85 from master
2020-07-28[3.1.x] Fixed #31836 -- Dropped support for JSONField __contains and ↵Mariusz Felisiak
__contained_by lookups on SQLite. The current implementation works only for basic examples without supporting nested structures and doesn't follow "the general principle that the contained object must match the containing object as to structure and data contents, possibly after discarding some non-matching array elements or object key/value pairs from the containing object". Backport of ba691933cee375195c9c50f333dd4b2a3abbb726 from master.
2020-07-28[3.1.x] Fixed #31835 -- Dropped support for JSONField __contains lookup on ↵Mariusz Felisiak
Oracle. The current implementation works only for basic examples without supporting nested structures and doesn't follow "the general principle that the contained object must match the containing object as to structure and data contents, possibly after discarding some non-matching array elements or object key/value pairs from the containing object". Backport of 02447fb133b53ec7d0ff068cc08f06fdf8817ef7 from master
2020-07-09[3.1.x] Fixed #31773 -- Fixed preserving output_field in ExpressionWrapper ↵Mariusz Felisiak
for combined expressions. Thanks Thodoris Sotiropoulos for the report and Simon Charette for the implementation idea. Regression in df32fd42b84cc6dbba173201f244491b0d154a63. Backport of 8a6df55f2dd5131282084a4edfd48f63fbf8c69a from master
2020-06-26[3.1.x] Fixed #31742 -- Fixed makemigrations crash on ForeignKey to an app ↵Mariusz Felisiak
with mixed case label. Regression in 9e1b6b8a66af4c2197e5b1b41eb9dbb36e4f6502. Thanks Ignacio Santolin for the report. Backport of 62d85a283500e9abb0e1c9ec53c59be468f056a0 from master
2020-06-12[3.1.x] Fixed #31659 -- Made ExpressionWrapper preserve output_field for ↵Mariusz Felisiak
combined expressions. Regression in df32fd42b84cc6dbba173201f244491b0d154a63. Thanks Simon Charette for the review. Backport of aeb8996a6706cad3e96d8221760c1cb408ee7ed9 from master
2020-06-10[3.1.x] Fixed #31657 -- Fixed ordering by attnames of self-referential ↵Hasan Ramezani
ForeignKeys. Backport of 037a624120b676858be4b93c4d0adda45916fd2a from master
2020-06-08[3.1.x] Fixed #31664 -- Reallowed using non-expressions having filterable ↵Nicolas Baccelli
attribute as rhs in queryset filters. Regression in 4edad1ddf6203326e0be4bdb105beecb0fe454c4. Backport of b38d44229ff185ad156bcb443d6db0db7ae3eb98 from master
2020-06-08[3.1.x] Fixed #31660 -- Fixed queryset crash when grouping by m2o relation.Mariusz Felisiak
Regression in 3a941230c85b2702a5e1cd97e17251ce21057efa. Thanks Tomasz Szymański for the report. Backport of 78ad4b4b0201003792bfdbf1a7781cbc9ee03539 from master
2020-06-05[3.1.x] Fixed #31663 -- Made DecimalField.to_python() handle non-numeric ↵Sasha Pachev
invalid values. Backport of 38a21f2d9ed4f556af934498ec6a242f6a20418a from master
2020-06-03[3.1.x] Fixed #31651 -- Made ExpressionWrapper use grouping columns from ↵Thodoris Sotiropoulos
wrapped expression. Backport of df32fd42b84cc6dbba173201f244491b0d154a63 from master
2020-05-29[3.1.x] Refs #21171 -- Made Collector.delete() rollback in the correct database.Simon Charette
Regression in c7dd8490b882b2cefdc7faf431dc64c532b79c9. Backport of f8ef5f2c86683bef3b200fd864efc14f1fbbc23b from master
2020-05-26[3.1.x] Fixed #31614 -- Fixed aliases ordering by OrderBy() expressions of ↵Laurent Tramoy
combined queryset. Backport of 2aac176e86204785f0f2ec4838049d8fed70870e from master
2020-05-25[3.1.x] Fixed #31624 -- Avoided subquery usage on QuerySet.all().delete().Simon Charette
Thanks Adam Johnson for the report. Regression in 7acef095d73322f45dcceb99afa1a4e50b520479. Backport of 972000420e08703dd4981466ff67adcd5a61ad4b from master
2020-05-19[3.1.x] Fixed #31607 -- Fixed evaluated Subquery equality.Mariusz Felisiak
Regression in 691def10a0197d83d2d108bd9043b0916d0f09b4. Backport of a125da6a7c79b1d4c55677d0bed6f9b1d7d77353 from master
2020-05-14[3.1.x] Fixed #31584 -- Fixed crash when chaining values()/values_list() ↵Mariusz Felisiak
after Exists() annotation and aggregation on Oracle. Oracle requires the EXISTS expression to be wrapped in a CASE WHEN in the GROUP BY clause. Regression in efa1908f662c19038a944129c81462485c4a9fe8. Backport of 3a941230c85b2702a5e1cd97e17251ce21057efa from master
2020-05-14[3.1.x] Fixed #31568 -- Fixed alias reference when aggregating over multiple ↵Simon Charette
subqueries. 691def10a0197d83d2d108bd9043b0916d0f09b4 made all Subquery() instances equal to each other which broke aggregation subquery pushdown which relied on object equality to determine which alias it should select. Subquery.__eq__() will be fixed in an another commit but Query.rewrite_cols() should haved used object identity from the start. Refs #30727, #30188. Thanks Makina Corpus for the report. Backport of adfbf653dc1c1d0e0dacc4ed46602d22ba28b004 from master
2020-05-14[3.1.x] Fixed #31566 -- Fixed aliases crash when chaining ↵Simon Charette
values()/values_list() after annotate() with aggregations and subqueries. Subquery annotation references must be resolved if they are excluded from the GROUP BY clause by a following .values() call. Regression in fb3f034f1c63160c0ff13c609acd01c18be12f80. Thanks Makina Corpus for the report. Backport of 42c08ee46539ef44f8658ebb1cbefb408e0d03fe from master
2020-05-11Refs #30116 -- Simplified regex match group access with Match.__getitem__().Jon Dufresne
The method has been available since Python 3.6. The shorter syntax is also marginally faster.
2020-05-11Optimized Model and QuerySet pickling version comparison.Adam Johnson
2020-05-08Fixed #12990, Refs #27694 -- Added JSONField model field.sage
Thanks to Adam Johnson, Carlton Gibson, Mariusz Felisiak, and Raphael Michel for mentoring this Google Summer of Code 2019 project and everyone else who helped with the patch. Special thanks to Mads Jensen, Nick Pope, and Simon Charette for extensive reviews. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-05-05Fixed #31538 -- Fixed Meta.ordering validation lookups that are not transforms.Mariusz Felisiak
Regression in 440505cb2cadbe1a5b9fba246bcde6c04f51d07e. Thanks Simon Meers for the report.
2020-04-30Fixed #20581 -- Added support for deferrable unique constraints.Ian Foote
2020-04-27Removed unnecessary tuple wrapping of single format string argument.François Freitag
2020-04-24Refs #31369 -- Deprecated models.NullBooleanField in favor of ↵Tim Schilling
BooleanField(null=True).
2020-04-23Fixed #31500 -- Fixed detecting of unique fields in QuerySet.in_bulk() when ↵Hannes Ljungberg
using Meta.constraints. Detection of unique fields now takes into account non-partial unique constraints.
2020-04-22Avoided unnecessary recompilation of ordering clause regex in SQLCompiler.Adam Johnson
2020-04-20Fixed #31474 -- Made QuerySet.delete() not return the number of deleted ↵Hasan Ramezani
objects if it's zero.
2020-04-15Fixed #31223 -- Added __class_getitem__() to Manager and QuerySet.sobolevn
2020-04-10Fixed #31351 -- Added system checks for partial indexes and unique ↵Ichlasul Affan
constraints support.
2020-04-08Fixed #28184 -- Allowed using a callable for FileField and ImageField storage.miigotu
2020-04-07Refs #27666 -- Ensured relationship consistency on delayed reloads.Simon Charette
Delayed reloads of state models broke identity based relationships between direct and non-direct ancestors. Basing models.Options related objects map of model labels instead of their identity ensured relationship consistency is maintained. Refs #30966. Co-authored-by: Hasan Ramezani <hasan.r67@gmail.com>
2020-04-06Fixed #31426 -- Added proper field validation to QuerySet.order_by().Simon Charette
Resolve the field reference instead of using fragile regex based string reference validation.
2020-04-06Refs #7098 -- Deprecated passing raw column aliases to order_by().Simon Charette
Now that order_by() has expression support passing RawSQL() can achieve the same result. This was also already supported through QuerySet.extra(order_by) for years but this API is more or less deprecated at this point.
2020-04-06Fixed #31420 -- Fixed crash when filtering subquery annotation against a ↵Hasan Ramezani
SimpleLazyObject. Thanks Simon Charette for the solution and analysis.
2020-04-04Fixed #31415 -- Fixed crash when nested OuterRef is used with operators or ↵Hasan Ramezani
in database functions.
2020-04-01Refs #12990 -- Moved PostgresSimpleLookup to the ↵Mariusz Felisiak
django.db.models.lookups.PostgresOperatorLookup.
2020-03-31Refs #31403 -- Made SQLInsertCompiler.execute_sql() always return an ↵Adam Johnson
iterable of rows. List of tuples.
2020-03-25Fixed #23916 -- Allowed makemigrations to handle related model name case ↵Adam Johnson
changes. Made autodetector ignore related model name case changes so unnecessary migrations are not created.
2020-03-25Fixed #31396 -- Added binary XOR operator to F expressions.Hannes Ljungberg
2020-03-25Fixed #31377 -- Disabled grouping by aliases on ↵Hasan Ramezani
QuerySet.values()/values_list() when they collide with field names. Regression in fb3f034f1c63160c0ff13c609acd01c18be12f80. Thanks Holovashchenko Vadym for the report.
2020-03-20Refs #29724 -- Added is_dst parameter to QuerySet.datetimes().Hasan Ramezani
Thanks Simon Charette for the review and Mariusz Felisiak for tests.
2020-03-19Fixed #31285 -- Fixed inherited Meta.ordering of "-pk".Jon Dufresne
2020-03-18Refs #31055 -- Made long column names checks support databases aware.Mariusz Felisiak
2020-03-18Fixed #31376 -- Optimized nulls ordering when possible on SQLite and MySQL.Simon Charette
Both backends order NULLs first on ascending ordering and last on descending ordering which makes ORDER BY IS (NOT)? NULL wasteful when asc(nulls_first) and desc(nulls_last) are used since it prevents indice usage.
2020-03-05Fixed #29129 -- Skipped UPDATE when adding a model instance with inherited ↵Abhijeet Viswa
primary key that has a default.
2020-03-05Fixed #31327 -- Deprecated providing_args argument for Signal.Jon Dufresne
2020-03-03Fixed #31150 -- Included subqueries that reference related fields in GROUP ↵Mariusz Felisiak
BY clauses. Thanks Johannes Hoppe for the report. Regression in fb3f034f1c63160c0ff13c609acd01c18be12f80. Co-authored-by: Simon Charette <charette.s@gmail.com>
2020-02-28Fixed #31310 -- Fixed hints in checks for using intermediate model with ↵Matheus Cunha Motta
ambiguous foreign key. symmetrical=False is not required since 87b1ad6e7351464c60e751b483d9dfce3a2d3382.
2020-02-27Fixed #31251 -- Disabled grouping by OuterRef() annotation.Rohit