Simon Charette
3c71fb3909
Added PatternLookup.prepare_rhs to simplify subclasses.
2018-03-12 12:12:46 -04:00
Дилян Палаузов
45aaf6608d
Removed unused variable in BaseDatabaseSchemaEditor.effective_default().
2018-03-12 12:06:06 -04:00
Carlton Gibson
5b083a824e
Fixed #29180 -- Fixed a regression where migrations already in the plan were readded.
...
Regression in a38ae914d8
.
2018-03-09 08:59:57 +01:00
Carlton Gibson
4d420a53cf
Refs #29180 -- Added MigrationGraph._generate_plan() for testing.
2018-03-09 08:59:57 +01:00
Simon Charette
277ed07209
Fixed #29195 -- Fixed Exists.output_field resolution on single-valued queries.
...
The Subquery class which Exists inherits from defaulted to using single-valued
querie's field if no output_field was explicitly specified on initialization
which was bypassing the Exists.output_field defined at the class level.
Moving Subquery's dynamic output_field resolution to _resolve_output_field
should make sure the fallback logic is only performed if required.
Regression in 08654a99bb
.
Thanks Oli Warner for the detailed report.
2018-03-08 13:30:41 -05:00
Fabrizio Ettore Messina
10c0fe528a
Fixed #29178 -- Allowed Index.fields to accept a tuple.
2018-03-08 10:56:55 -05:00
Mariusz Felisiak
8b25d546b6
Simplified Contains, StartsWith, and EndsWith lookups.
2018-03-07 14:04:17 -05:00
Almad
3d8fadad0f
Added model name to AutoField error message.
2018-03-03 13:22:00 -05:00
Tomáš Ehrlich
fa352626c2
Fixed #29172 -- Fixed crash with Window expression in a subquery.
2018-03-01 10:24:14 -05:00
Sergey Fedoseev
ba4a986240
Refs #28459 -- Improved performance of time difference expressions on MySQL.
2018-03-01 14:42:21 +05:00
Mariusz Felisiak
54f80430be
Fixed #29166 -- Fixed crash in When() expression with a list argument.
...
Thanks Matthew Pava for the report and Tim Graham and Carlton Gibson for
reviews.
Regression in 19b2dfd1bf
.
2018-02-28 18:05:23 +01:00
Mariusz Felisiak
074a2f7f58
Refs #28909 -- Simplifed code using unpacking generalizations.
2018-02-26 18:23:31 +01:00
bobort
f82de6bfb1
Refs #28643 -- Added Ord, Chr, Left, and Right database functions.
2018-02-23 10:23:22 -05:00
Matthew Schinckel
c412926a2e
Fixed #29142 -- Fixed crash when OuterRef is used with an operator.
2018-02-23 09:38:16 -05:00
Oliver Sauder
6f0b8c1c9e
Fixed #28442 -- Fixed crash with nested OuterRefs that reference AutoField.
2018-02-20 21:58:43 -05:00
Tim Graham
9ba3df8240
Refs #29125 -- Made Q.deconstruct() omit 'query_utils' in the path and _connector='AND' since it's a default value.
2018-02-12 15:23:41 -05:00
Tim Graham
b95c49c954
Fixed #29125 -- Made Q.deconstruct() deterministic with multiple keyword arguments.
2018-02-12 14:52:32 -05:00
Matthew Wilkes
2162f0983d
Fixed #24747 -- Allowed transforms in QuerySet.order_by() and distinct(*fields).
2018-02-10 19:08:55 -05:00
Raphael Gaschignard
bf26f66029
Fixed #29118 -- Fixed crash with QuerySet.order_by(Exists(...)).
2018-02-10 18:35:57 -05:00
Simon Charette
d61fe24601
Fixed #29108 -- Fixed crash in aggregation of distinct+ordered+sliced querysets.
...
Regression in 4acae21846
.
Thanks Stephen Brooks for the report.
2018-02-08 09:59:25 -05:00
Mariusz Felisiak
34b52f8572
Renamed the allow_sliced_subqueries database feature to allow_sliced_subqueries_with_in.
...
After 0899d583bd
this database feature is
false only on MySQL which doesn't support sliced subqueries only with
IN/ALL/ANY/SOME.
2018-02-07 08:27:47 +01:00
Tim Graham
0f0a07ac27
Refs #28814 -- Fixed migrations crash with namespace packages on Python 3.7.
...
Due to https://bugs.python.org/issue32303 .
2018-02-05 13:29:32 -05:00
Raymond Hettinger
aba9763b51
Refs #28814 -- Imported from collections.abc to fix Python 3.7 deprecation warnings.
...
https://bugs.python.org/issue25988
2018-02-05 11:42:47 -05:00
Jon Dufresne
8b21878357
Refs #28723 -- Fixed stale prefetch_related cache after add/remove.
...
Regression in 514b2c989a
.
2018-02-05 11:02:57 -05:00
Tim Graham
d0a42a14c0
Fixed imports per isort 4.3.1.
...
Partially reverted 9bcf73d788
.
2018-02-02 14:44:07 -05:00
Mariusz Felisiak
9bcf73d788
Fixed imports per isort 4.3.0.
2018-02-01 09:29:46 +01:00
Mariusz Felisiak
f73f821143
Removed uneeded comment in DatabaseWrapper.check_constraints() on SQLite/MySQL backends.
2018-01-31 20:02:45 -05:00
priyanshsaxena
617d5f410f
Fixed #29066 -- Allowed negating query expressions.
2018-01-31 10:54:19 -05:00
Дилян Палаузов
f427ffcccb
Fixed #29093 -- Simplified a few lines in ModelBase.__new__().
2018-01-31 10:22:56 -05:00
Tim Graham
0a37ea56d0
Fixed #29091 -- Fixed makemigrations crash if migrations directory doesn't have __init__.py.
...
Regression in aadd3aeb2b
.
2018-01-31 09:36:36 -05:00
Jon Dufresne
136bf5c214
Fixed #29076 -- Made Model.refresh_from_db() clear cached relationships even if the related id doesn't change.
2018-01-30 10:43:53 -05:00
bquinn
c2b969e124
Fixed #29004 -- Added inspectdb --include-views option.
2018-01-27 18:51:40 -05:00
Sigurd Ljødal
a455e732a0
Fixed #28650 -- Added TruncWeek database function.
2018-01-27 09:59:13 -05:00
François Freitag
3aa9ab39cc
Refs #28748 -- Reallowed lazy values in model field choices.
...
Regression in f9844f4841
.
Thanks Matthias Kestenholz for the report and suggestions.
2018-01-27 09:19:56 -05:00
Jon Dufresne
3187c89d6f
Fixed #29067 -- Fixed regression in QuerySet.values_list(..., flat=True) followed by annotate().
2018-01-26 09:35:50 -05:00
shanghui
8dc675d90f
Fixed #28838 -- Fixed Model.save() crash if the base manager annotates with a related field.
2018-01-25 10:12:04 -05:00
François Freitag
f9844f4841
Fixed #28748 -- Made model field choices check more strict for named groups.
2018-01-24 10:34:24 -05:00
Mads Jensen
65728550bd
Refs #28643 -- Added Replace database function.
2018-01-17 20:46:15 -05:00
hayashi
27557a7a99
Fixed #28857 -- Fixed invalid SQL when using Cast with complex expressions on PostgreSQL.
2018-01-17 09:28:03 -05:00
Tim Martin
02365d3f38
Fixed #28542 -- Fixed deletion of primary key constraint if the new field is unique.
2018-01-13 20:11:55 -05:00
Étienne Loks
9a621edf62
Fixed #29016 -- Fixed incorrect foreign key nullification on related instance deletion.
2018-01-13 10:31:00 -05:00
Mariusz Felisiak
385e6fb352
Removed Query.split_exclude()'s unused prefix argument.
...
Unused since b4492a8ca4
.
2018-01-12 19:06:15 -05:00
Дилян Палаузов
a38ae914d8
Fixed #28996 -- Simplified some boolean constructs and removed trivial continue statements.
2018-01-12 12:44:50 -05:00
Tim Graham
d60e8b856b
Added DatabaseFeatures.is_postgresql_9_5 to avoid repetition.
2018-01-09 14:09:02 -05:00
Mariusz Felisiak
8f8a93a9ae
Fixed #28859 -- Made Oracle backend raise DatabaseError if "no data found" exception is hidden by the Oracle OCI library.
...
Thanks Tim Graham for the review and Jani Tiainen for the report.
2018-01-06 18:50:54 +01:00
Sergey Fedoseev
2115be616b
Refs #28459 -- Improved performance of duration expressions on SQLite.
2018-01-04 17:16:17 -05:00
Дилян Палаузов
d7b2aa24f7
Fixed #28982 -- Simplified code with and/or.
2018-01-03 20:12:23 -05:00
Tim Graham
acc8dd4142
Fixed #28984 -- Made assorted code simplifications.
2018-01-03 13:24:02 -05:00
Дилян Палаузов
d79cf1e9e2
Fixed #28985 -- Removed unneeded None checks before hasattr().
2018-01-03 11:37:06 -05:00
shanghui
cc6bcc6ff5
Fixed #28867 -- Added system check for a model property that clashes with a related field accessor.
2018-01-03 10:34:31 -05:00
Robin Ramael
fbf647287e
Fixed #28811 -- Fixed crash when combining regular and group by annotations.
2018-01-03 08:24:16 -05:00
Mariusz Felisiak
c86e9b5847
Removed DeferredAttribute.__init__()'s unused model argument.
...
Unused since a8a81aae20
.
2018-01-02 17:54:10 -05:00
Simon Charette
f5a989e603
Fixed #28974 -- Made refresh_from_db() hint routers about its instance.
2018-01-02 09:42:24 -05:00
Tim Graham
d065c92678
Fixed #28918 -- Fixed Model.refresh_from_db() for instances hidden by the default manager.
2017-12-30 18:00:36 -05:00
Simon Charette
dcdd219ee1
Fixed #25817 -- Made RenameField repoint to_field/to_fields references.
...
Also updated the autodetector to assume the RenameField operation will
perform the required repointing.
2017-12-30 14:59:22 -05:00
Simon Charette
2faeb21d2f
Moved _get_model_tuple() to the base Operation class.
...
This allows field and special operations to use this logic.
2017-12-30 14:50:43 -05:00
Mariusz Felisiak
51a00749e9
Used Decimal.scaleb() in backends.utils.format_number() and DecimalField.widget_attrs() to improve performance.
2017-12-30 18:05:15 +01:00
Sergey Fedoseev
98e78ac754
Bumped minimum supported mysqlclient version to 1.3.7.
...
Follow up to ad9390bba2
.
2017-12-29 11:55:29 -05:00
Sergey Fedoseev
51ae4e1f32
Refs #28459 -- Used default date converter on SQLite for better performance.
...
See https://docs.python.org/3/library/sqlite3.html#default-adapters-and-converters .
2017-12-29 14:37:00 +05:00
Sergey Fedoseev
ae6fa914aa
Fixed #28926 -- Fixed loss of precision of big DurationField values on SQLite and MySQL.
2017-12-28 17:35:41 -05:00
Mariusz Felisiak
83a36ac49a
Removed unnecessary trailing commas and spaces in various code.
2017-12-28 21:07:29 +01:00
Sergey Fedoseev
44908d4d93
Fixed #28967 -- Prevented Cast to FloatField from rounding to integer on MySQL.
2017-12-27 19:16:37 -05:00
hui shang
f1aa58479c
Fixed #28714 -- Added system checks for invalid model field names in Meta.indexes.
...
Thanks Gabriel for the report and Adam Johnson for the review.
2017-12-27 18:56:24 -05:00
Sergey Fedoseev
ae1baa7d1d
Refs #28459 -- Improved performance of loading DurationField on SQLite and MySQL.
2017-12-27 12:23:08 -05:00
Mads Jensen
ef6c680f60
Removed unused variable in QuerySet._earliest_or_latest().
2017-12-27 09:04:46 -05:00
Sergey Fedoseev
d0f569b350
Refs #28459 -- Improved performance of loading DecimalField on SQLite.
2017-12-26 18:12:37 -05:00
Дилян Палаузов
4c599ece57
Fixed #28930 -- Simplified code with any() and all().
2017-12-26 17:11:15 -05:00
Ran Benita
c21f158295
Fixed #28944 -- Fixed crash when chaining values()/values_list() after QuerySet.select_for_update(of=()).
2017-12-26 11:41:17 -05:00
Tim Martin
5778b5701d
Fixed #28731 -- Added an error message when using an empty Q() in a When expression.
...
Otherwise it generates invalid SQL.
2017-12-26 10:39:47 -05:00
Cameron Curry
622ead6aaf
Fixed #28937 -- Allowed BinaryField to be editable=True.
2017-12-22 16:31:46 -05:00
Simon Charette
9f7772e098
Fixed #28884 -- Fixed crash on SQLite when renaming a field in a model referenced by a ManyToManyField.
...
Introspected database constraints instead of relying on _meta.related_objects
to determine whether or not a table or a column is referenced on rename
operations.
This has the side effect of ignoring both db_constraint=False and virtual
fields such as GenericRelation which aren't backend by database level
constraints and thus shouldn't prevent the rename operations from being
performed in a transaction.
Regression in 095c1aaa89
.
Thanks Tim for the additional tests and edits, and Mariusz for the review.
2017-12-22 15:19:05 -05:00
Nick Pope
f3a98224e6
Refs #28909 -- Simplifed code using unpacking generalizations.
2017-12-21 21:05:23 -05:00
Sergey Fedoseev
ebc4ee3369
Refs #23941 -- Prevented incorrect rounding of DecimalField annotations on SQLite.
2017-12-21 19:50:56 -05:00
Sergey Fedoseev
c8a85e3e91
Fixed #28932 -- Prevented Oracle from truncating trailing zeros in the fractional part of DecimalField.
...
Fixes the test added in 6fd6d8383f
.
Regression in 7c1f3901bc
.
2017-12-20 11:55:51 -05:00
Mariusz Felisiak
fc9eec7bb7
Fixed #28934 -- Prevented Cast from truncating microseconds on Oracle.
2017-12-20 11:05:27 -05:00
Mariusz Felisiak
4420761ea9
Fixed #28727 -- Fixed Cast crash on SQLite when casting a Python date/datetime to Date/DateTimeField.
2017-12-19 19:54:58 +01:00
Sergey Fedoseev
9c9ef58352
Removed unused DatabaseOperations.date_interval_sql() on Oracle.
...
Unused since 5ca82e710e
.
2017-12-16 23:59:36 +05:00
Sergey Fedoseev
6fd6d8383f
Fixed #28915 -- Prevented SQLite from truncating trailing zeros in the fractional part of DecimalField.
...
This reverts commit a146b65628
and adds
a test for the regression.
2017-12-12 21:57:41 -10:00
Sergey Fedoseev
f9a0766f1c
Simplified SQLite converter for bool type.
2017-12-12 22:40:15 -05:00
Sergey Fedoseev
10bfa876be
Refs #27985 -- Reallowed using __exact=None as an alias for __isnull=True if a custom lookup class with lookup_name != None is registered as the exact lookup.
...
Regression in 58da81a5a3
and prerequisite
for refs #28896 .
2017-12-12 17:11:58 -10:00
Nick Pope
d13a9e44de
Fixed #28909 -- Simplified code using tuple/list/set/dict unpacking.
2017-12-11 07:08:45 -05:00
Simon Charette
b43acf22df
Refs #27849 -- Removed empty Q() hack in filtered Aggregate.as_sql().
...
This required allowing WhereNode to be provided as When(condition).
This was made possible by cf12257db2
.
2017-12-08 10:59:49 -05:00
Sergey Fedoseev
c5a2f48bed
Improved performance of loading DateTimeField on Oracle and MySQL.
2017-12-08 09:53:27 -05:00
Tim Graham
2b81faab25
Fixed #28906 -- Removed unnecessary bool() calls.
2017-12-07 17:13:07 -05:00
Tim Graham
02d9419fe3
Fixed #28907 -- Removed unnecessary if statements.
2017-12-07 17:12:00 -05:00
Tim Graham
a862af3839
Fixed #28893 -- Removed unnecessary dict.items() calls.
2017-12-06 17:17:59 -05:00
Sergey Fedoseev
183fb7b2b9
Fixed #28870 -- Added support for functools.partialmethod serialization in migrations.
2017-12-06 14:49:37 -05:00
Mariusz Felisiak
fc48047586
Refs #28876 -- Fixed incorrect foreign key constraint name for models with quoted db_table.
...
Thanks Simon Charette and Tim Graham for the review and Carlos E. C.
Leite for the report.
2017-12-05 21:11:20 +01:00
Mariusz Felisiak
f79d9a322c
Refs #28876 -- Fixed incorrect class-based model index name generation for models with quoted db_table.
...
Thanks Simon Charette and Tim Graham for the review and Carlos E. C.
Leite for the report.
2017-12-05 21:05:10 +01:00
Дилян Палаузов
87c76aa116
Fixed #28873 -- Used dict.setdefault() to set model and form field defaults.
2017-12-04 13:28:48 -05:00
Дилян Палаузов
d2afa5eb23
Fixed #28860 -- Removed unnecessary len() calls.
2017-12-04 10:35:23 -05:00
Simon Charette
095c1aaa89
Fixed #28849 -- Fixed referenced table and column rename on SQLite.
...
Thanks Ramiro for the input and Tim for the review.
2017-12-01 22:12:24 -05:00
Sergey Fedoseev
cf12257db2
Fixed #28863 -- Fixed filter on annotation that contains Q.
2017-12-01 21:48:49 -05:00
Tim Graham
c3e0adcad8
Fixed #28305 -- Fixed "Cannot change column 'x': used in a foreign key constraint" crash on MySQL with a sequence of AlterField or RenameField operations.
...
Regression in 45ded053b1
.
2017-12-01 19:07:46 -05:00
Simon Charette
e50add6ca1
Fixed #28856 -- Fixed a regression in caching of a GenericForeignKey pointing to a MTI model.
...
Regression in b9f8635f58
.
2017-11-30 09:28:44 -05:00
Mads Jensen
f0a68c2511
Fixed #28702 -- Made query lookups for CIText fields use citext.
2017-11-29 10:35:37 -05:00
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