Simon Charette
78c5e7b90e
Fixed #28834 -- Followed ancestor links on field cache lookup failure.
...
Thanks Tim for the review.
2017-11-29 01:28:39 -05:00
Nicolas Delaby
746caf3ef8
Fixed #28837 -- Fixed test client crash if an exception with more than one arg is raised.
...
Also removed usage of the problematic pattern elsewhere.
Regression in 6e55e1d88a
.
2017-11-28 18:55:23 -05:00
Jon Dufresne
7a6fbf36b1
Fixed #28853 -- Updated connection.cursor() uses to use a context manager.
2017-11-28 11:28:09 -05:00
Дилян Палаузов
3308085838
Fixed #28854 -- Replaced type(True) with bool in sqlite's SchemaEditor.
2017-11-28 10:44:02 -05:00
Raphael Michel
616f468760
Fixed #28848 -- Fixed SQLite/MySQL crash when ordering by a filtered subquery that uses nulls_first/nulls_last.
2017-11-27 11:35:44 -05:00
Mariusz Felisiak
ad5f33ee03
Refs #27954 -- Fixed typo in django/db/backends/postgresql/client.py comment.
2017-11-26 16:27:37 +01:00
Sergey Fedoseev
93cdd07e8f
Used bytes.hex() and bytes.fromhex() to simplify.
2017-11-23 08:52:23 -05:00
Yan Mitrofanov
54e5c4a00e
Fixed #28820 -- Eliminated an extra query with QuerySet.update() on proxy models.
2017-11-21 12:11:47 -05:00
Dražen Odobašić
d97f026a7a
Fixed #28817 -- Made QuerySet.iterator() use server-side cursors after values() and values_list().
2017-11-21 10:33:56 -05:00
Tim Graham
e3c852cbd6
Fixed #28804 -- Fixed "Unknown system variable 'transaction_isolation'" on MariaDB.
...
Regression in 967450a3bf
.
2017-11-20 10:08:34 -05:00
Krzysztof Nazarewski
244cc40155
Fixed #26184 -- Allowed using any lookups in ModelAdmin.search_fields.
...
Thanks Krzysztof Nazarewski for the initial patch.
2017-11-18 19:33:52 -05:00
Simon Charette
ee85ef8315
Fixed #28792 -- Fixed index name truncation of namespaced tables.
...
Refs #27458 , #27843 .
Thanks Tim and Mariusz for the review.
2017-11-14 21:36:25 -05:00
Sergey Fedoseev
967450a3bf
Fixed #28794 -- Fixed tx_isolation deprecation warning on MySQL 5.7.20+.
2017-11-14 15:40:44 -05:00
Дилян Палаузов
23bf4ad87f
Fixed #28795 -- Removed 'not in' checks and used dict.setdefault().
2017-11-14 10:52:52 -05:00
Sergey Fedoseev
a2ec1e6b2d
Used BaseSimpleSerializer for serializing str and bytes in migrations.
...
Follow up to c716fe8782
.
2017-11-13 14:12:46 -05:00
Mariusz Felisiak
2d3cc94284
Fixed #28781 -- Added QuerySet.values()/values_list() support for union(), difference(), and intersection().
...
Thanks Tim Graham for the review.
2017-11-12 14:28:11 +01:00
Sergey Fedoseev
bdb747a5f2
Simplified Field.get_choices().
2017-11-11 19:38:29 -05:00
Paulo
ee49306176
Fixed #27710 -- Made Model.save() invalidate cached, stale relations after a primary key assignment.
2017-11-09 11:40:34 -05:00
Дилян Палаузов
c69e4bc691
Fixed #28769 -- Replaced 'x if x else y' with 'x or y'.
2017-11-07 09:08:46 -05:00
Дилян Палаузов
6c0042430e
Fixed #28776 -- Fixed a/an/and typos in docs and comments.
2017-11-06 22:41:03 -05:00
Nick
3d22121a0b
Clarified error message for when sqlplarse isn't installed.
2017-11-03 10:09:46 -04:00
Mike Hansen
514b2c989a
Fixed #28723 -- Fixed RelatedManager's prefetch_related() cache name.
2017-11-02 10:06:00 -04:00
Charlie Denton
cbe334918a
Fixed #28750 -- Allowed models to define Meta.manager_inheritance_from_future for backwards compatibility.
...
Refs 631f4ab061
.
2017-10-31 13:22:27 -04:00
Paulo
fcfcf8aae4
Fixed #28742 -- Fixed AttributeError crash when assigning None to cached reverse relations.
2017-10-30 14:02:03 -04:00
Ran Benita
03049fb8d9
Refs #28010 -- Allowed reverse related fields in SELECT FOR UPDATE .. OF.
...
Thanks Adam Chidlow for polishing the patch.
2017-10-28 20:33:42 -04:00
Mariusz Felisiak
81e357a7e1
Fixed #28689 -- Fixed unquoted table names in Subquery SQL when using OuterRef.
...
Regression in f48bc7c3db
.
2017-10-25 21:52:38 +02:00
Tomer Chachamu
21a3a29dc9
Fixed #28722 -- Made QuerySet.reverse() affect nulls_first/nulls_last.
2017-10-21 20:55:45 -04:00
Simon Charette
d4fb742094
Refs #28575 -- Made RelatedObjectDoesNotExist classes pickable.
...
Thanks to Rachel Tobin for the initial __qualname__ work and tests.
2017-10-18 21:43:53 -04:00
Simon Charette
0a69479b6c
Fixed outdated comment in RelatedObjectDoesNotExist.
2017-10-18 20:31:47 -04:00
Tim Graham
1b73ccc4bf
Fixed #28497 -- Restored the ability to use sliced QuerySets with __exact.
...
Regression in ec50937bcb
.
Thanks Simon Charette for review.
2017-10-16 13:56:38 -04:00
k
399a8db33b
Fixed #28695 -- Allowed models to use __init_subclass__().
2017-10-13 21:29:12 -04:00
Simon Charette
9dd405973c
Corrected examples in related field descriptor docstrings.
...
Using lowercased model class names suggested that accessing the attribute
from instances of the class returned an instance of the descriptor, but
this is only the case when accessed from the model class.
2017-10-13 16:06:08 -04:00
Simon Charette
216eda103b
Refs #28575 -- Removed unnecessary code for model exception pickling.
...
Setting __qualname__ is sufficient for pickling of DoesNotExist and
and MultipleObjectsReturned to work correctly.
2017-10-13 15:45:12 -04:00
Mariusz Felisiak
4f27e475b3
Refs #28643 -- Reorganized database functions.
...
Thanks Tim Graham for the review.
2017-10-13 21:23:00 +02:00
Rachel Tobin
6c92f711ea
Refs #28575 -- Allowed pickling Model.DoesNotExist and MultipleObjectsReturned classes.
2017-10-13 09:16:09 -04:00
Paulo
a7b5ad8b19
Fixed #27846 -- Made Model.refresh_from_db() clear cached relations.
2017-10-12 17:04:10 -04:00
Mariusz Felisiak
0899d583bd
Fixed #28670 -- Added FETCH/OFFSET support on Oracle.
...
Thanks Tim Graham for the review.
2017-10-09 18:07:03 +02:00
Mariusz Felisiak
11ade8eefd
Refs #24254 -- Removed unnecessary SQL AS clause in SQLCompiler.as_sql().
...
Incorrect on Oracle.
2017-10-06 12:47:41 -04:00
Simon Charette
9d93dff333
Fixed #28665 -- Change some database exceptions to NotImplementedError per PEP 249.
2017-10-06 12:47:08 -04:00
Mariusz Felisiak
1b823b8f18
Fixed #28596 -- Fixed QuerySet.bulk_create() and cascade deletion crash on Oracle when using more than 65535 parameters.
...
Thanks Tim Graham for the review.
2017-10-05 18:52:37 +02:00
Mariusz Felisiak
03da070f5c
Refs #28670 -- Moved LIMIT/OFFSET SQL to DatabaseOperations.limit_offset_sql().
...
Thanks Tim Graham for the review.
2017-10-04 20:24:38 +02:00
Tim Graham
d0c761d3f8
Refs #28584 -- Removed unused DatabaseFeatures.can_share_in_memory_db.
2017-10-03 20:17:12 -04:00
Tim Graham
a2626cb3fe
Fixed #28674 -- Removed unused check in QuerySet._batched_insert().
2017-10-03 19:56:44 -04:00
Tim Graham
27193aea00
Fixed #28584 -- Dropped support for SQLite < 3.7.15.
2017-10-03 10:42:18 -04:00
Tim Graham
51d230e00b
Fixed #28675 -- Removed always True variable in SQLInsertCompiler.execute_sql() check.
...
Unused since 7deb25b8dd
.
2017-10-03 10:32:11 -04:00
Дилян Палаузов
5d9b736fd8
Fixed #28652 -- Fixed a few comments in django/db/models/*.
2017-10-02 11:15:26 -04:00
Mariusz Felisiak
d896809a3a
Refs #23919 -- Removed unneeded float()/int() calls.
2017-10-02 08:49:26 -04:00
Mads Jensen
6d1df84c00
Corrected typos in BaseDatabaseOperations exception messages.
2017-09-30 19:18:51 -04:00
Tim Graham
dd82f33271
Fixed #27979 -- Made MySQL raise IntegrityError rather than OperationalError when saving negative numbers in PositiveInteger fields.
2017-09-29 15:20:32 -04:00
Mads Jensen
8d40eb0e89
Used NotSupportedError for some unsupported database opreations per PEP 249.
2017-09-29 09:49:55 -04:00
Simon Charette
f1b713024e
Refs #28492 -- Defined aggregates' output_field at the class level.
...
Missed in 08654a99bb
.
2017-09-29 07:44:27 -04:00
Mariusz Felisiak
2b5a511bd9
Merged hash() calls.
...
Thanks Simon Charette for the review.
2017-09-28 12:12:47 -04:00
Mads Jensen
4508fafe16
Simplified various __eq__() methods.
2017-09-28 09:18:37 -04:00
Tim Graham
1d8cfa3608
Fixed #28626 -- Dropped support for PostgreSQL 9.3.
...
Thanks Simon Charette for the introspection changes.
2017-09-27 11:00:04 -04:00
Tim Graham
cfff2af02b
Fixed #27857 -- Dropped support for Python 3.4.
2017-09-25 17:11:03 -04:00
Tim Graham
a80903b711
Removed DatabaseFeatures.supports_microsecond_precision.
...
MySQL 5.5 (refs #28552 ) was the last database to use it.
2017-09-25 14:48:15 -04:00
Tim Graham
8a1768432b
Fixed #28552 -- Dropped support for MySQL 5.5.
2017-09-25 14:48:11 -04:00
Tim Graham
5bcca2a056
Refs #27532 -- Removed Model._meta.has_auto_field per deprecation timeline.
2017-09-22 12:51:18 -04:00
Tim Graham
4502489a46
Refs #18974 -- Removed @models.permalink() decorator per deprecation timeline.
2017-09-22 12:51:18 -04:00
Tim Graham
578711c310
Refs #27098 -- Removed DatabaseIntrospection.get_indexes() per deprecation timeline.
2017-09-22 12:51:18 -04:00
Nicolas Delaby
01d440fa1e
Fixed #27332 -- Added FilteredRelation API for conditional join (ON clause) support.
...
Thanks Anssi Kääriäinen for contributing to the patch.
2017-09-22 11:53:17 -04:00
Shai Berger
d612026c37
Refs #28595 -- Added a hook to add execute wrappers for database queries.
...
Thanks Adam Johnson, Carl Meyer, Anssi Kääriäinen, Mariusz Felisiak,
Michael Manfre, and Tim Graham for discussion and review.
2017-09-21 12:13:09 -04:00
Nicolas Delaby
a30ef353e2
Removed unused list in Query.resolve_lookup_value().
...
Unneeded since its introduction in 4f138fe5a4
.
2017-09-20 09:50:14 -04:00
Mariusz Felisiak
fb02ebe889
Fixed #28597 -- Fixed crash with the name of a model's autogenerated primary key in an Index's fields.
2017-09-18 14:06:00 -04:00
Mads Jensen
d549b88050
Fixed #26608 -- Added support for window expressions (OVER clause).
...
Thanks Josh Smeaton, Mariusz Felisiak, Sergey Fedoseev, Simon Charettes,
Adam Chainz/Johnson and Tim Graham for comments and reviews and Jamie
Cockburn for initial patch.
2017-09-18 09:42:29 -04:00
Mads Jensen
3939e2b4dc
Changed default value of DatabaseFeatures.has_bulk_insert to True.
2017-09-18 08:12:35 -04:00
Sergey Fedoseev
8f947730ca
Removed unneeded StdDev.convert_value() and Variance.convert_value().
...
Seems unneeded since its introduction in
f59fd15c49
.
2017-09-16 15:05:31 -04:00
Sergey Fedoseev
873858009c
Simplified Count.convert_value() and RegrCount.convert_value().
2017-09-16 14:31:51 +05:00
Tim Graham
cb362a6750
Removed unnecessary check in SQLCompiler.get_related_selections().
2017-09-15 08:37:46 -04:00
Mariusz Felisiak
c6a1faecc3
Refs #27090 -- Added real database sequence introspection.
...
Thanks Mariusz Felisiak for the Oracle part and Tim Graham for the
review.
2017-09-13 20:12:32 +02:00
Simon Charette
08654a99bb
Fixed #28492 -- Defined default output_field of expressions at the class level.
...
This wasn't possible when settings were accessed during Field initialization
time as our test suite setup script was triggering imports of expressions
before settings were configured.
2017-09-11 12:22:39 -04:00
Simon Charette
13be453080
Refs #28492 -- Stopped accessing settings at Field.db_tablespace initialization.
...
Deferring accesses to settings allows database fields to be initialized before
settings are loaded.
2017-09-11 12:21:49 -04:00
Jon Dufresne
99e65d6488
Fixed #28578 -- Renamed DatabaseCreation number arguments to suffix.
2017-09-11 11:32:40 -04:00
Mariusz Felisiak
a4092af3d3
Removed unnecessary parens in _get_app_label_and_model_name().
2017-09-10 21:26:06 +02:00
Tim Graham
6e4c6281db
Reverted "Fixed #27818 -- Replaced try/except/pass with contextlib.suppress()."
...
This reverts commit 550cb3a365
because try/except performs better.
2017-09-07 08:16:21 -04:00
Sergey Fedoseev
8b2515a450
Removed unneeded __init__() methods.
2017-09-07 08:10:49 -04:00
Sergey Fedoseev
f3c9562143
Fixed #15648 -- Allowed QuerySet.values_list() to return a namedtuple.
2017-09-06 15:32:32 -04:00
Sergey Fedoseev
5b1c389603
Refs #23919 -- Replaced usage of django.utils.functional.curry() with functools.partial()/partialmethod().
2017-09-06 13:11:18 -04:00
Sergey Fedoseev
34f27f910b
Replaced @cached_property with class attributes where possible.
2017-09-06 10:13:43 -04:00
Sergey Fedoseev
690fc30d44
Removed DatabaseWrapper.psycopg2_version.
...
Unused since 3adc5f1ee6
.
2017-09-06 09:51:56 -04:00
Sergey Fedoseev
379caf397e
Replaced deque() with list() in prefetch_related_objects().
...
deque() isn't needed since algorithm doesn't require FIFO.
2017-09-06 08:13:18 -04:00
François Freitag
ad4a8acdb5
Fixed #11557 -- Added support for a list of fields in Meta.get_latest_by and QuerySet.earliest()/latest().
2017-09-05 20:14:54 -04:00
Dima Kudosh
093fd479d6
Fixed #28335 -- Allowed query expressions in Meta.ordering.
2017-09-05 19:10:20 -04:00
Mads Jensen
15f2d87ceb
Removed unneeded __init__() in PostgreSQL DatabaseWrapper.
2017-09-05 16:22:36 -04:00
Boris Burkov
d67cce4da8
Fixed typo in django/db/models/query.py docstring.
2017-09-05 15:28:37 -04:00
Mariusz Felisiak
179b247e07
Removed useless condition from Oracle's NullBooleanField's check constraint.
...
NULL cannot be compare with standard operators on Oracle, it works only
with IS NULL and IS NOT NULL operators. Therefore 'OR ... IS NULL'
condition in NullBooleanField's check constraint is redundant.
Nullability is checked in a separate constraint.
2017-09-05 11:17:06 +02:00
Jeremy Satterfield
0891503fad
Fixed #28493 -- Made migrations autodetector find dependencies for model renaming.
2017-09-04 15:15:39 -04:00
Srinivas Reddy Thatiparthy
0d3f567a7a
Corrected YearComparisonLookup.get_bound() signature.
2017-09-04 10:17:51 -04:00
Mariusz Felisiak
fe0184b412
Updated EmpytResultSet import not to use the alias.
2017-09-03 11:06:06 -04:00
Mariusz Felisiak
2470756de0
Moved select_sql in SQLCompiler.get_extra_select() to improve performance.
2017-09-02 16:39:51 -04:00
Jeremy Kerr
84b7cb7df0
Fixed #28549 -- Fixed QuerySet.defer() with super and subclass fields.
...
Previously, deferring fields in different classes didn't omit the
superclass' deferred field.
Thanks Simon Charette for the suggested fix.
2017-08-31 09:35:05 -04:00
Tim Graham
e5bd585c6e
Fixed #28543 -- Prevented ManyToManyField.value_from_object() from being lazy.
...
Previously, it was a QuerySet which could reevaluate to a new value if the
model's data changes. This is inconsistent with other Field.value_from_object()
methods.
This allows reverting the fix in the admin for refs #27998 .
2017-08-31 09:34:44 -04:00
Sergey Fedoseev
ab3e3658cc
Simplified model's Options._get_fields() a bit.
2017-08-31 07:11:30 -04:00
Sergey Fedoseev
61da949ff6
Simplified migrations.state.ProjectState.__eq__().
2017-08-25 13:50:01 +05:00
Sergey Fedoseev
a8bb493556
Simplified migrations.graph.Node.iterative_dfs(), ancestors(), and descendants().
2017-08-23 18:10:00 -04:00
Sergey Fedoseev
f2b93b509c
Removed unneeded iter() calls.
...
A few of these were unnecessarily added in 2b281cc35e
.
2017-08-23 16:48:29 -04:00
Sergey Fedoseev
dca67bb2c2
Refs #28459 -- Improved performance of SQLCompiler.apply_converters().
2017-08-23 16:26:24 -04:00
Sergey Fedoseev
9ad6071aab
Simplified usage of sets in MigrationAutodetector.
2017-08-22 16:23:02 -04:00
Kevin Grinberg
c6a3546093
Fixed #28451 -- Restored pre-Django 1.11 Oracle sequence/trigger naming.
...
Regression in 69b7d4b116
.
2017-08-22 15:51:08 -04:00
Sergey Fedoseev
4dfd6b88d5
Refs #28459 -- Improved performance of FlatValuesListIterable.
2017-08-22 11:26:07 -04:00
Paulo
fea9cb46aa
Fixed #28375 -- Fixed KeyError crash on reverse prefetch of a model with OneToOneField primary key to a non-pk field.
2017-08-21 16:14:13 -04:00
Mariusz Felisiak
c47747d45a
Removed postgresql_psycopg2.version
...
Uneeded since 29ea9714ee
.
2017-08-21 09:13:07 +02:00
Mariusz Felisiak
6784383e93
Fixed #28498 -- Fixed test database creation with cx_Oracle 6.
2017-08-16 18:39:58 +02:00
Sergey Fedoseev
41640760df
Simplified generation of result in Query.get_aggregation().
2017-08-15 09:59:31 -04:00
Sergey Fedoseev
8a99a7d2d5
Simplified RelatedPopulator.populate().
2017-08-15 09:48:07 -04:00
Sergey Fedoseev
6542999c54
Removed redundant condition in QuerySet.resolve_expression().
2017-08-15 09:44:27 -04:00
Sergey Fedoseev
6141040813
Avoided creation of temporary set in Query.append_annotation_mask().
2017-08-15 09:43:47 -04:00
Tom
b78d100fa6
Fixed #27849 -- Added filtering support to aggregates.
2017-08-12 17:58:28 -04:00
Mariusz Felisiak
489421b015
Fixed #23546 -- Added kwargs support for CursorWrapper.callproc() on Oracle.
...
Thanks Shai Berger, Tim Graham and Aymeric Augustin for reviews and
Renbi Yu for the initial patch.
2017-08-12 21:06:49 +02:00
Sergey Fedoseev
47ccefeada
Refs #28459 -- Improved performance of BaseExpression.convert_value().
2017-08-11 18:34:50 -04:00
Sergey Fedoseev
5cc7462067
Refs #28459 -- Optimized ModelState instantiation.
2017-08-11 15:41:04 -04:00
Nerl~
97cb3bd16d
Fixed #28456 -- Allowed customizing Model pickling by overriding __getstate__().
2017-08-11 15:27:25 -04:00
Sergey Fedoseev
0ec134e340
Simplified calculation of used joins in Query.build_filter().
2017-08-11 10:46:11 -04:00
Sergey Fedoseev
9ecf280394
Removed obsolete DecimalComparisonLookup.
...
Unneeded since c3c6c92d76
.
2017-08-11 09:32:32 -04:00
Sergey Fedoseev
f3e350d631
Replaced typecast_decimal() with decimal.Decimal().
2017-08-11 09:22:40 -04:00
Sergey Fedoseev
7fa92daa99
Removed outdated comment in Query.build_filter().
2017-08-11 09:19:19 -04:00
Evan Grim
7937cc16f5
Fixed #28386 -- Made operations within non-atomic migrations honor the operation's atomic flag when migrating backwards.
2017-08-10 19:21:14 -04:00
Sergey Fedoseev
c3c6c92d76
Refs #18247 -- Fixed filtering on CombinedExpression(output_field=DecimalField()) annotation on SQLite.
2017-08-10 17:42:30 -04:00
Sergey Fedoseev
a146b65628
Refs #28459 -- Improved performance of loading DecimalField on SQLite.
2017-08-10 15:32:28 -04:00
Paulo
bfb746f983
Refs #16043 -- Refactored internal fields value cache.
...
* Removed all hardcoded logic for _{fieldname}_cache.
* Added an internal API for interacting with the field values cache.
Thanks carljm and MarkusH for support.
2017-08-10 12:06:02 -04:00
Sergey Fedoseev
22ff86ec52
Refs #28459 -- Made Oracle get_db_converters() return converter for empty strings only when it's needed.
2017-08-10 10:33:05 -04:00
Sergey Fedoseev
5244d7cf54
Simplified SQLite converter for bool type.
2017-08-09 18:10:34 -04:00
Sergey Fedoseev
bb91c0a4dc
Refs #4518 -- Removed handling of empty strings in typecast_decimal().
...
It's unclear if the original change was needed, but it seems unneeded now.
Reverted 6fc10f50b0
.
2017-08-09 18:02:16 -04:00
Mariusz Felisiak
3189a93ceb
Refs #23766 -- Added tests for CursorWrapper.callproc().
...
Thanks Tim Graham for the review.
2017-08-08 22:13:02 +02:00
Sergey Fedoseev
b8731c3fff
Refs #28459 -- Improved performance of sql.compiler.cursor_iter().
2017-08-08 14:07:03 -04:00
Claude Paroz
831358f23d
Fixed #28465 -- Unified index SQL creation in DatabaseSchemaEditor
...
Thanks Tim Graham for the review.
2017-08-08 17:37:43 +02:00
Sergey Fedoseev
fb0bdff981
Refs #28459 -- Improved performance of ValuesIterable.
2017-08-08 11:02:59 +05:00
Sergey Fedoseev
ba1d82df63
Refs #28459 -- Improved performance of select_related() when model is prefetched from its parent.
2017-08-07 18:55:13 -04:00
Sergey Fedoseev
ca46f4688c
Refs #28459 -- Improved performance of SQLCompiler.results_iter().
2017-08-07 17:06:15 -04:00
Srinivas Reddy Thatiparthy
6a793d1788
Removed unnecessary assignment in Oracle's FormatStylePlaceholderCursor._fix_for_params().
...
Obsolete since fae56427e1
.
2017-08-07 10:11:54 -04:00
Mariusz Felisiak
7724879b52
Removed unused _combine() node argument from various combinable classes.
...
Unused since f59fd15c49
(Combinable) and
since its introduction in 2d877da855
(SearchVectorCombinable/SearchQueryCombinable/SearchQuery).
2017-08-02 21:21:32 -04:00
Sergey Fedoseev
78f7f68021
Refs #28459 -- Improved performance of Model.from_db() when fields are deferred.
2017-08-02 09:16:36 -04:00
Sergey Fedoseev
7bd9639406
Simplified check that pk is fetched in RawQuerySet.__iter__().
2017-08-02 08:56:16 -04:00
Mariusz Felisiak
5d9034bc92
Removed unused DatabaseOperations.last_insert_id() on PostgreSQL.
...
Unused since 9eb2afddfa
.
2017-08-01 16:53:17 -04:00
Sergey Fedoseev
2d136ede8a
Fixed #28459 -- Improved performance of ValuesListIterable.
2017-08-01 14:44:02 -04:00
Matthew Wilkes
32d1bf2bdb
Fixed #28454 -- Simplifed use of Query.setup_joins() by returning a named tuple.
2017-08-01 14:25:54 -04:00
Sergey Fedoseev
62dee1483d
Refs #28370 -- Moved db converters deprecation warning to improve performance.
2017-08-01 08:05:32 -04:00
Sergey Fedoseev
58da81a5a3
Fixed #27985 -- Fixed query for __exact=value when get_prep_value() converts value to None.
...
Also fixed crash of .filter(field__transform=None).
2017-07-31 15:34:07 -04:00
Anssi Kääriäinen
6155bc4a51
Refs #20880 -- Removed non-cloning logic from Query.clone().
2017-07-31 15:31:29 -04:00
Anssi Kääriäinen
66933a6619
Refs #20880 -- Removed non-cloning logic from QuerySet._clone().
2017-07-31 13:57:45 -04:00
Sergey Fedoseev
0baea920c8
Fixed #28453 -- Made __exact=None lookup use transforms.
2017-07-31 13:31:04 -04:00
Sergey Fedoseev
aadd3aeb2b
Avoided creating temporary lists for obtaining the first item.
2017-07-31 11:02:23 -04:00
Sergey Fedoseev
0f905e4b44
Removed unneeded TruncBase.arity.
...
Uneeded since its introduction in 2a4af0ea43
.
2017-07-31 13:42:12 +05:00
Sergey Fedoseev
38988f289f
Avoided creation of temporary sets.
2017-07-29 10:16:43 -04:00
Sergey Fedoseev
99e7bba443
Prevented query_utils.refs_expression() from looking for empty string in annotations map.
2017-07-28 08:42:52 -04:00
Mariusz Felisiak
b61d5b1991
Fixed #28371 -- Fixed Cast() with CharField if the max_length argument isn't provided.
...
Thanks Tim Graham for the review.
2017-07-27 19:36:47 +02:00
Mariusz Felisiak
8e41373c81
Allowed database backends to specify data types for Cast().
...
A small refactor ahead of refs #28371 .
2017-07-26 20:26:58 -04:00
Sergey Fedoseev
d17eaa868c
Removed obsolete references to add_to_query().
...
Support for it was removed in d3f00bd570
.
2017-07-25 07:52:05 -04:00
Mariusz Felisiak
28a02259cb
Fixed DatabaseFeatures.has_case_insensitive_like on MySQL and Oracle.
...
Incorrect since its introduction in 20bab2cf9d
.
2017-07-24 21:51:29 +02:00
Mariusz Felisiak
fe9f383357
Refs #24996 -- Removed unused BaseDatabaseFeatures.supports_select_related.
...
Unused since 0c7633178f
.
2017-07-24 13:46:02 -04:00
Tom Carrick
3159ad4df6
Fixed #27970 -- Allowed QuerySet.in_bulk() to fetch on fields besides primary key.
2017-07-21 08:34:35 -04:00
Simon Charette
76236f0db2
Stopped setting BaseExpression.copied on copy().
...
Unused since its introduction in f59fd15c49
.
2017-07-21 00:23:21 -04:00
orf
7dfe03f86d
Sorted display of options in Func.__repr__().
2017-07-20 20:51:07 -04:00
Tim Graham
487362fa8f
Fixed #28370 -- Deprecated the context arg of Field.from_db_value() and Expression.convert_value().
...
Unused since a0d166306f
.
2017-07-20 16:30:08 -04:00
Sergey Fedoseev
37fbeb99f9
Removed unused models.DecimalField._format().
...
Unused since b3b71a0922
.
2017-07-20 09:00:18 -04:00
Mariusz Felisiak
e06cab2600
Fixed #28411 -- Used cx_Oracle.Cursor.outputtypehandler instead of _rowfactory() on Oracle.
...
Thanks Tim Graham for the review.
2017-07-19 08:42:52 +02:00
Sergey Fedoseev
33d453b2a7
Removed unneeded hasattr(self.rhs, 'get_compiler') checks in db/models/lookups.py.
...
Unneeded since 9ae4362bec
.
2017-07-18 08:24:01 -04:00
Mariusz Felisiak
776cee9749
Fixed #28391 -- Fixed Cast() with CharField and max_length on MySQL.
...
Thanks Tim Graham for the review.
2017-07-17 21:12:27 +02:00
Tim Graham
feeafdad02
Removed unused enter/exit methods of MySQL's CursorWrapper.
...
Unused since their introduction in e1d839237f
.
2017-07-17 13:16:29 -04:00
Mariusz Felisiak
e5835a7cb8
Allowed Func subclasses to add kwargs to __repr__().
...
Thanks Tim Graham for the review.
2017-07-17 10:07:19 -04:00
Florian Apolloner
adab280cef
Fixed #28399 -- Fixed QuerySet.count() for union(), difference(), and intersection() queries.
2017-07-15 08:20:12 -04:00
Sergey Fedoseev
504ce3914f
Fixed #28394 -- Allowed setting BaseExpression.output_field (renamed from _output_field).
2017-07-14 21:56:01 -04:00
Sergey Fedoseev
fc2dee6908
Removed unused branch in __getattr__() of Oracle and MySQL cursor wrappers.
2017-07-14 09:14:21 -04:00
Sergey Fedoseev
18db55bb31
Replaced Oracle CursorIterator with generator expression.
2017-07-14 14:15:00 +05:00
Claude Paroz
169c3b3e07
Fixed #14204 -- Enforced SQLite foreign key constraints.
...
Thanks Tim Graham for contributing to the patch and
Simon Charette for advice and review.
2017-07-11 09:07:31 -04:00
Sergey Fedoseev
29769a9942
Fixed #28382 -- Prevented BaseExpression._output_field from being set if _resolve_output_field() fails.
2017-07-11 08:29:08 -04:00
Mariusz Felisiak
ca74e56350
Fixed #28378 -- Fixed union() and difference() when combining with a queryset raising EmptyResultSet.
...
Thanks Jon Dufresne for the report. Thanks Tim Graham and Simon Charette
for the reviews.
2017-07-10 20:40:08 +02:00
Tim Graham
31a2af1c01
Removed useless hasattr in UpdateQuery._setup_query().
...
The if statement always evaluates to True.
2017-07-08 08:12:46 -04:00
Tim Graham
23c529a774
Removed unused Query.clone() memo kwarg.
...
Unused since 23ca3a0194
.
2017-07-07 09:29:58 -04:00
Tim Graham
686772c177
Removed unused OrderWrt.deconstruct().
2017-07-06 18:45:53 -04:00
Mariusz Felisiak
cf57ecb221
Fixed #28364 -- Removed redundant table joins in Oracle's DatabaseIntrospection.get_relations().
2017-07-06 07:39:01 -04:00
Mariusz Felisiak
df1106a40f
Fixed #28365 -- Unified DatabaseOperations.date_interval_sql() return value with similar methods.
2017-07-06 07:37:47 -04:00
Mariusz Felisiak
7d8fc65f36
Removed obsolete comment about IntegerField introspection on Oracle.
...
Obsolete since e9d12bae1e
.
2017-07-04 14:46:40 +02:00
Simon Charette
5cbcb36839
Fixed #28350 -- Fixed UnboundLocalError crash in RenameField with nonexistent field.
...
Thanks Tim for the review.
2017-06-30 12:50:37 -04:00
Ran Benita
b9f7dce84b
Fixed #28010 -- Added FOR UPDATE OF support to QuerySet.select_for_update().
2017-06-29 16:00:15 -04:00
Mariusz Felisiak
6e228d0b65
Fixed #28277 -- Added validation of QuerySet.annotate() and aggregate() args.
...
Thanks Tim Graham and Nick Pope for reviews.
2017-06-29 18:25:36 +02:00
Anssi Kääriäinen
f7f5edd50d
Removed obsolete Query.tables attribute.
...
Obsolete since Query.alias_map became an OrderedDict (refs #26522 ).
2017-06-29 11:09:11 -04:00
Mads Jensen
550cb3a365
Fixed #27818 -- Replaced try/except/pass with contextlib.suppress().
2017-06-28 14:07:55 -04:00
Daniel Hahler
43a4835edf
Fixed #27473 -- Added DurationField support to Extract.
2017-06-28 10:10:09 -04:00
Mariusz Felisiak
3297dede7f
Fixed #28046 -- Added the db_tablespace parameter to class-based indexes.
...
Thanks Markus Holtermann and Tim Graham for reviews.
2017-06-27 21:15:15 +02:00
Mariusz Felisiak
617505ca89
Fixed #28330 -- Prevented passing positional arguments to an Index.
...
Thanks Tim Graham for the review.
2017-06-27 13:39:37 -04:00
Paulo Alvarado
c432927160
Fixed #26362 -- Fixed update of the inherited id field of an object when its parent changes.
2017-06-26 12:11:20 -04:00
Josh Schneier
fba0eaa5d6
Fixed #28298 -- Prevented a primary key alteration from adding a foreign key constraint if db_constraint=False.
2017-06-22 21:31:56 -04:00
Mariusz Felisiak
0f91ba1adc
Fixed #28329 -- Fixed Cast() with Big/Small/Positive/PositiveSmallIntegerField on MySQL.
2017-06-21 10:16:53 -04:00
Simon Charette
b1cbbe9267
Refs #25530 -- Deleted deferred SQL references on delete operation.
2017-06-21 00:26:30 -04:00
Simon Charette
b50815ee41
Refs #25530 -- Renamed deferred SQL references on rename operation.
2017-06-21 00:26:30 -04:00
Simon Charette
3b429c9673
Refs #25530 -- Tracked references of deferred SQL statements.
2017-06-21 00:03:31 -04:00
Simon Charette
ea91ad4c13
Refs #25530 -- Changed _create_index_name to take a table as first parameter.
2017-06-20 22:59:22 -04:00
Mads Jensen
de42adf4ff
Fixed #27869 -- Added fastupdate and gin_pending_list_limit params to GinIndex.
...
Thanks Tim Graham and Markus Holtermann for review.
2017-06-20 10:54:39 -04:00
Paul Tiplady
335a8d7895
Fixed #28322 -- Added dbshell support for MySQL client TLS certs.
2017-06-19 18:11:25 -04:00
Mariusz Felisiak
24d7fe4933
Refs #27858 -- Fixed typo in MigrationRecorder.applied_migrations() comment.
2017-06-19 15:24:41 -04:00
Marti Raudsepp
fda55c71a8
Fixed #27858 -- Prevented read-only management commands from creating the django_migrations table.
...
MigrationRecorder now assumes that if the django_migrations table
doesn't exist, then no migrations are applied.
Reverted documentation change from refs #23808 .
2017-06-19 13:04:57 -04:00
Maciej Jaworski
dc63ad7ac0
Fixed #28319 -- Made TextField with choices use a Select widget.
2017-06-17 08:23:32 -04:00
chillaranand
451b585c2f
Refs #27914 -- Used __qualname__ in model operations' deconstruct().
2017-06-14 10:10:22 -04:00
chillaranand
fb0f987f7d
Fixed #27914 -- Added support for nested classes in Field.deconstruct()/__repr__().
2017-06-14 10:10:17 -04:00
Adam Bogdał
9f4e0fde0a
Moved common code to RelatedField.deconstruct().
2017-06-14 08:57:43 -04:00
Adam Bogdał
cd2fe829dd
Fixed #24195 -- Deconstructed the limit_choices_to option of related fields.
...
Migrations will now be created for changes to limit_choices_to.
2017-06-14 08:57:24 -04:00
Tim Graham
7acbe89cc2
Refs #23853 -- Updated sql.query.Query.join() docstring.
...
Follow up to ab89414f40
.
2017-06-13 14:16:52 -04:00
chillaranand
08bda82c23
Fixed #27830 -- Used distutils.version.LooseVersion for version parsing.
2017-06-13 10:53:39 -04:00
Mariusz Felisiak
82175ead72
Fixed #28293 -- Fixed union(), intersection(), and difference() when combining with an EmptyQuerySet.
...
Thanks Jon Dufresne for the report and Tim Graham for the review.
2017-06-13 08:16:16 +02:00
Tim Graham
3d0a0ecd2c
Refs #23919 -- Removed support for broken Model.__str__() in Model.__repr__().
...
Returning invalid bytestrings in __str__() is unlikely in Python 3.
2017-06-11 15:52:19 -04:00
Collin Anderson
1a49b89470
Fixed #27953 -- Added instance's pk to Model.__str__().
2017-06-09 13:42:53 -04:00
Mads Jensen
c7f6ffbdcf
Fixed #28103 -- Added quarter extract, truncation, and lookup.
...
Thanks Mariusz Felisiak, Tim Graham, and Adam Johnson for review.
2017-06-08 15:15:29 -04:00
Claude Paroz
af69f14e7b
Removed unused sql.Query.query_terms
...
Unused since 5008a4db44
.
2017-06-08 13:11:51 -04:00
Jon Dufresne
0c3c37a376
Fixed #28282 -- Fixed class-based indexes name for models that only inherit Model.
2017-06-08 09:36:12 -04:00
Florian Apolloner
823d73be3e
Fixed #28275 -- Added more hooks to SchemaEditor._alter_field().
2017-06-06 11:08:40 -04:00
Mariusz Felisiak
5e9f7f1e1c
Refs #20483 -- Removed unneeded column from _foreign_key_constraints() on Oracle.
2017-06-06 14:25:53 +02:00
Tim Graham
5a52d932ef
Replaced Model._get_pk_val() with pk property.
...
Model.pk was added after _get_pk_val() and many places weren't simplified.
2017-06-05 15:20:34 -04:00
Adam Johnson
ed244199c7
Fixed #28269 -- Fixed Model.__init__() crash on models with a field that has an instance only descriptor.
...
Regression in d2a26c1a90
.
2017-06-05 08:40:43 -04:00
Mariusz Felisiak
516b7664dc
Fixed #28260 -- Allowed customizing the test tablespace initial and autoextend size on Oracle.
...
Thanks Tim Graham for the review.
2017-06-02 18:35:56 +02:00
Mariusz Felisiak
8149bd00d8
Fixed #28258 -- Optimized Oracle introspection by using LISTAGG.
...
Thanks Tim Graham and Jani Tiainen for reviews.
2017-06-02 16:54:34 +02:00
Jon Dufresne
2c69824e5a
Refs #23968 -- Removed unnecessary lists, generators, and tuple calls.
2017-06-01 19:08:59 -04:00
François Freitag
edee5a8de6
Fixed #27639 -- Added chunk_size parameter to QuerySet.iterator().
2017-06-01 17:50:41 -04:00
Mariusz Felisiak
9af6c97504
Refs #26682 -- Added AutoField introspection on Oracle.
2017-06-01 19:33:48 +02:00
Mariusz Felisiak
924a89e135
Fixed #26682 -- Added support for Oracle identity columns.
...
Thanks Shai Berger and Tim Graham for reviews.
2017-06-01 19:33:48 +02:00
Manatsawin Hanmongkolchai
a0c07d77fc
Fixed #28242 -- Moved ImageField file extension validation to the form field.
2017-06-01 10:13:23 -04:00
Matthias Erll
eee34ef64c
Fixed #22550 -- Prohibited QuerySet.last()/reverse() after slicing.
2017-05-31 19:34:56 -04:00
Tim Graham
f04495521a
Fixed #28199 -- Fixed Subquery generating unnecessary/invalid CAST.
...
Thanks Simon Charette for the fix.
2017-05-30 06:40:41 -04:00
Jon Dufresne
21046e7773
Fixed #28249 -- Removed unnecessary dict.keys() calls.
...
iter(dict) is equivalent to iter(dict.keys()).
2017-05-27 19:08:46 -04:00
Tom
7afb476469
Fixed #28226 -- Replaced use of str.join() with concatenation.
2017-05-27 13:59:05 -04:00
Alex
37ab3c3f9d
Fixed #28222 -- Allowed settable properties in QuerySet.update_or_create()/get_or_create() defaults.
2017-05-27 12:41:38 -04:00
Tom
bb0b6e5263
Fixed #28211 -- Prevented ORing an empty Q() from reducing query join efficiency.
2017-05-25 09:06:25 -04:00
Mariusz Felisiak
91b2bc3e70
Fixed #27860 -- Dropped varchar_pattern_ops/text_pattern_ops index before altering char/text field in PostgreSQL.
...
Thanks Tim Graham for the review.
2017-05-24 07:25:59 +02:00
Mariusz Felisiak
538bf43458
Fixed #27859 -- Ignored db_index for TextField/BinaryField on Oracle and MySQL.
...
Thanks Zubair Alam for the initial patch and Tim Graham for the review.
2017-05-23 17:02:40 +02:00
Mariusz Felisiak
b3eb6eaf1a
Refs #27859 -- Added DatabaseWrapper.display_name.
...
Thanks Tim Graham for the review.
2017-05-23 09:09:35 -04:00
Tim Graham
59ab1b2683
Fixed #28210 -- Fixed Model._state.adding on MTI parent model after saving child model.
...
Regression in 38575b007a
.
2017-05-19 13:22:17 -04:00
Mariusz Felisiak
99df304c85
Fixed #28206 -- Fixed RawQuerySet crash on a model with a mixed case db_column pk on Oracle.
...
Thanks Tim Graham for the review.
2017-05-18 19:11:23 +02:00
Jon Dufresne
f599747fc8
Fixed #28152 -- Made migrations serialize sets as set literals rather than set().
2017-05-18 09:33:40 -04:00
Tim Schneider
3a5299c19c
Fixed #28197 -- Fixed introspection of index field ordering on PostgreSQL.
2017-05-15 08:33:31 -04:00
Mariusz Felisiak
5cff2cb4c0
Refs #27859 -- Refactored BaseDatabaseValidation to use check_field_type().
...
Thanks Tim Graham for the review.
2017-05-14 18:34:45 +02:00
Simon Charette
4acae21846
Fixed #24254 -- Fixed queries using the __in lookup with querysets using distinct() and order_by().
...
Thanks Tim for the review.
2017-05-11 21:50:07 -04:00
Tim Graham
a9874d48b1
Fixed #28188 -- Fixed crash when pickling model fields.
...
Regression in d2a26c1a90
.
Thanks Adam Alton for the report and test, and Adam Johnson for
suggesting the fix.
2017-05-11 21:04:52 -04:00
Simon Charette
daf2bd3efe
Fixed #28107 -- Disabled grouping of selected primary keys for unmanaged models.
...
The grouping caused an issue with database views as PostgreSQL's query planer
isn't smart enough to introspect primary keys through views. Django doesn't
support database views but documents that unmanaged models should be used to
query them.
Thanks powderflask for the detailed report and investigation.
2017-05-11 20:00:57 -04:00
Florian Apolloner
837259a63f
Pass type to sql_alter_column_* where it was missing.
...
This is a followup to 2b3a941457
2017-05-09 12:47:35 +02:00
Claude Paroz
a87189fc5e
Fixed #28164 -- Improved float conversions in DecimalField.to_python
...
Thanks Tim Graham and Adam Johnson for the reviews.
2017-05-09 08:40:08 +02:00
François Freitag
88336fdbb5
Fixed #28062 -- Added a setting to disable server-side cursors on PostgreSQL.
...
When a connection pooler is set up in transaction pooling mode, queries
relying on server-side cursors fail. The DISABLE_SERVER_SIDE_CURSORS
setting in DATABASES disables server-side cursors for this use case.
2017-05-06 06:59:04 -04:00
Tim Graham
d66378a8b2
Fixed #28175 -- Fixed __in lookups on a foreign key when using the foreign key's parent model as the lookup value.
...
Thanks Simon Charette for review.
2017-05-05 18:35:08 -04:00
François Freitag
c0a2b9508a
Fixed #27554 -- Fixed prefetch_related() crash when fetching relations in nested Prefetches.
2017-05-04 09:17:29 -04:00
Tim Graham
584e10c76e
Fixed #28166 -- Fixed Model._state.db on MTI parent model after saving child model.
...
Regression in 38575b007a
.
2017-05-03 12:14:15 -04:00
Tim Graham
05098fa449
Fixed typo in django/db/backends/base/schema.py comment.
2017-05-01 20:45:33 -04:00
Markus Holtermann
663e48947f
Fixed #28052 -- Prevented dropping Meta.indexes when changing db_index to False.
...
Thanks Marc Tamlyn for the report and Ian Foote/Tim Graham for review.
2017-05-01 11:31:48 -04:00
Ian Foote
63afe3a2bf
Fixed #28043 -- Prevented AddIndex and RemoveIndex from mutating model state.
2017-05-01 09:32:44 -04:00
Simon Charette
9ae4362bec
Refs #16187 -- Stopped compiling query compilers during lookup rhs processing.
...
Lookup right hand side processing was compiling query compilers which happened
to work by chance as SQLCompiler defines a as_sql() method with two optional
parameters albeit it doesn't expect the same type of arguments.
2017-05-01 00:41:21 -04:00
Mariusz Felisiak
946775227c
Fixed #28138 -- Used output type handler instead of numbersAsStrings on Oracle cursor.
...
Thanks Tim Graham for the review.
2017-04-28 16:27:21 +02:00
Simon Charette
eb4724a063
Reverted "Refs #20939 -- Moved subquery ordering clearing optimization to the __in lookup."
...
This reverts commit e62ea0bb9c
since it
broke multi-column __in lookups and _meta.order_wrt on Oracle.
2017-04-28 09:30:35 -04:00
Simon Charette
e62ea0bb9c
Refs #20939 -- Moved subquery ordering clearing optimization to the __in lookup.
...
Queries could potentially be resolved in cases where ordering matter.
2017-04-27 16:58:08 -04:00
Tim Graham
8095496a1c
Fixed force_text() import in Oracle backend.
2017-04-27 08:47:33 -04:00
Jon Dufresne
7be94e0335
Replaced set |= operator with update() to avoid temporary set.
2017-04-27 08:16:19 -04:00
Claude Paroz
301de774c2
Refs #27795 -- Replaced many force_text() with str()
...
Thanks Tim Graham for the review.
2017-04-27 09:10:02 +02:00
Simon Charette
c9159a082e
Refs #20939 -- Removed the Query._prepare_as_filter_value() hack.
2017-04-25 23:43:33 -04:00