| Age | Commit message (Collapse) | Author |
|
|
|
their input by default.
This may cause some backwards compatibility issues, but may also
resolve security issues in third party projects that fail to heed warnings
in our documentation.
Thanks Markus Holtermann for help with tests and docs.
Backport of fa350e2f303572ee8f9a8302dda45a12288d3d95 from master
|
|
expressions
The query used a construct of qs.annotate().values().aggregate() where
the first annotate used an F-object reference and the values() and
aggregate() calls referenced that F-object.
Also made sure the inner query's select clause is as simple as possible,
and made sure .values().distinct().aggreate() works correctly.
Backport of fb146193c49e4c683dc8da39d9b7c479375fdb57 from master
|
|
When altering from e.g. an IntegerField to a ForeignKey, Django didn't
add a constraint.
Backport of f4f0060feaee6bbd76a0d575487682bc541111e4 from master
|
|
Refs #22267.
Thanks Shai Berger for spotting the issue and Tim Graham for the
initial patch.
Backport of ec808e807 from master.
|
|
Backport of ceaf31adfff3801f1092a215f73704e15a70e90c from master
|
|
This speeds up the timesince function/filter substantially.
Backport of d6969ab from master.
|
|
show_full_result_count=False.
Backport of 36a17be9f3cf6081f7e6f83fcfeae3d09ce8a72b from master
|
|
Backport of fe42bfaaff93e6b4af34ab48892e20c9cdee0c1a from master
|
|
migrations when changing blank
Thanks Mark Tranchant for the report and Tim Graham for the test and
review.
Backport of a9e29fae105d1ddd4e0ac2059cbe62b0ee348bc8 from master
|
|
Since a4b8a4b632dbb6d9fed1a8654aed99a9c53560d4 the admin
URL returned by get_admin_url() is no longer relative to
the Django admin index page.
Backport of 85757d0e79f4237d7cf3ee1785946315aa6959eb from master
|
|
Thanks Tomasz Kontusz for the report, Baptiste Mispelon for
analysis and Tim Graham for the review.
Backport of 3cf1c02695 from master.
|
|
Thanks Johannes Lerch for the report, Tim Graham for the test case,
and Simon Charette for the review.
Backport of 5cf96b49e4 from master.
|
|
|
|
Backport of 47b35b1844b2adc167e64674824873991e9c4c2b from master
|
|
Backport of 65441bbdb02427655869c42791a0bc5a9c631292 from master
|
|
instance.
Backport of 4c2f546b55c029334d22e69bb29db97f9356faa3 from master
|
|
have defaults.
Backport of 1306cd1e8acfb13602ee8dc40993b2505cd7523b from master
|
|
Backport of dda2a3cf4cc29d01de180f66d19441f300732e52 from master
|
|
These cached properies were causing problems with pickling, and in
addition they were confusingly defined: field.rel.model._meta was
not the same as field.rel.opts.
Instead users should use field.rel.related_model._meta inplace of
field.rel.opts, and field.rel.to._meta in place of field.rel.to_opts.
Backport of f95122e541df5bebb9b5ebb6226b0013e5edc893 from master
|
|
graphs.
Switched from an adjancency list and uncached, iterative depth-first
search to a Node-based design with direct parent/child links and a
cached, recursive depth-first search. With this change, calculating
a migration plan for a large graph takes several seconds instead of
several hours.
Marked test `migrations.test_graph.GraphTests.test_dfs` as an expected
failure due to reaching the maximum recursion depth.
Backport of 78d43a5e1064b63db1c486516c4263ef1c4c975c from master
|
|
Backport of 7fa7dd48c4 from master
|
|
Refs #24389.
Backport of 556a748 from master
|
|
Thanks uranusjr for the report and analysis.
Backport of 88a5f17 from master
|
|
Backport of ea3168dc6ced391d848c511a14cfcecfeac9d401 from master
|
|
Backport of 99a1bbf9853e0b06385d7f221a90828e6c060132 from master
|
|
Backport of 1d1d5d1c315e0e58f02a7f2a07b56ed20b09c087 from master
|
|
Explicit is better than implicit.
Backport of 51b606f from master
|
|
Backport of bad5f262bf4a17f157808ec1aa225ba9c94c1eee from master
|
|
The new signature enables better support for routing RunPython and
RunSQL operations, especially w.r.t. reusable and third-party apps.
This commit also takes advantage of the deprecation cycle for the old
signature to remove the backward incompatibility introduced in #22583;
RunPython and RunSQL won't call allow_migrate() when when the router
has the old signature.
Thanks Aymeric Augustin and Tim Graham for helping shape up the patch.
Refs 22583.
Conflicts:
django/db/utils.py
Backport of bed504d70bede3431a213203c13a33905d6dbf77 from master
|
|
Thanks to DavidMuller for the report.
Backport of c490e410af from master
|
|
As suggested by Anssi. This has the slightly strange side effect of
passing the expression to Expression.convert_value has the expression
passed back to it, but it allows more complex patterns of expressions.
Backport of 32d4db66b9 from master
|
|
Joint effort between myself, Josh, Anssi and Shai.
Conflicts:
django/db/models/query.py
tests/model_fields/models.py
Backport of 4755f8fc25331c739a6f932cc8aba0cc9e62e352 from master.
|
|
Backport of e467919c6315be87abec72383ec1a81e2665ebec from master
|
|
This opens more possibilities, like accessing context.template.origin.
It also follows the chain of objects instead of following a shortcut.
Backport of 1bfcc95 from master
|
|
Workaround for http://bugs.python.org/issue20747.
In some corner cases, Python 2 inserts a newline in a header value
despite `maxlinelen` passed in Header constructor.
Thanks Tim Graham for the review.
Backport of efb1f99f94 from master.
|
|
Oracle
Thanks Joris Benschop for the report, and Tim Graham for the tests.
Backport of ceadc94f09 from master
|
|
swappable models
Swapped out models don't have a _default_manager unless they have
explicitly defined managers. ModelState.from_model() now accounts for
this case and uses an empty list for managers if no explicit managers
are defined and a model is swapped out.
Backport of 15dc8d1c9d3697170a2c59ecaa7a2b4ba58f5990 from master
|
|
Backport of e9282747a4ba99adc7e0f677b3a897830df51732 from master
|
|
If Django is installed in a path that contains non-ASCII characters,
the tag failed with UnicodeDecodeError.
Backport of 098fa12dd390e733c7568d824eea2c346550c75a from master
|
|
Backport of fa66ea75326e669cd3d51fb926a4364b8ba08959 from master
|
|
The message for the SuspiciousFileOperation exception needs to
be a unicode string.
Backport of bebc1e53a3ab059849e5c4e5a55b2f5e68b67169 from master
|
|
Python 2.
The function implemented most of upath(), but skipped the check for
strings that are already unicode.
Backport of bad6280c4e3f75f3ccd27f8fd85a4043bb296128 from master
|
|
If the project path contained a non-ASCII character, Python 2 crashed.
Backport of c9ece2e6b9365fa4be16bd0de25dd7b68c8dc97e from master
|
|
If 'name' contained non-ASCII characters, the comparison raised a
UnicodeEncodeError on Python 2.
Backport of 63c5c9870129f6b81358c1ed7ed2392bbc46f77d from master
|
|
a non-ASCII path.
Backport of 81a94cc616ab80decaa495cfa1c0c623527fc0e7 from master
|
|
Backport of 4a0aeac1b5cfb7b6229a01119a596afb38d8a2a0 from master
|
|
contrib.postgres).
Backport of 3adc5f1ee6618a615db07d4a868b366a15c39f82 from master
|
|
It was documented as not having any effect since Django 1.6.
Backport of a73c8540a888021feb640abefa936a76e21b6a1a from master
|
|
settings_dict['TIME_ZONE'] is set in ConnectionHandler.ensure_defaults.
Backport of 28e97a9bdc6c672a1304570aa75f6311fb1112e2 from master
|