Ian Foote
952f05a6db
Fixed #11964 -- Added support for database check constraints.
2018-07-10 15:32:33 -04:00
Sergey Fedoseev
6fbfb5cb96
Removed Oracle's fetchmany() and fetchall() wrappers.
...
Follow up to e06cab2600
.
2018-07-10 15:03:09 -04:00
Mads Jensen
8e4a75e5d5
Deleted unused variable in SQLCompiler.get_related_selections().
...
Unused since 01d440fa1e
.
2018-07-10 09:15:19 -04:00
Tom Forbes
45c035c823
Refs #29548 -- Fixed non-GIS test failures on MariaDB.
2018-07-09 14:59:42 -04:00
Michal Čihař
39e287d8bf
Fixed #29544 -- Fixed regex lookup on MariaDB.
...
Regression in 4249076844
.
2018-07-05 12:11:49 -04:00
Mads Jensen
f1fc7d6b78
Refs #26608 -- Removed unneeded name attribute in window functions.
2018-07-05 11:38:07 -04:00
Junyi Jiao
a0b19a0f5b
Refs #28643 -- Added math database functions.
...
Thanks Nick Pope for much review.
2018-07-05 11:02:12 -04:00
Mariusz Felisiak
d7d32964ef
Fixed #29541 -- Fixed Cursor.execute() crash when setinputsizes() is called without arguments wit cx_Oracle 6.4.
2018-07-04 12:57:29 -04:00
Tim Graham
4009e1f2ab
Removed unused code in django.db.backends.utils.format_number().
2018-07-02 16:10:35 -04:00
Mariusz Felisiak
0e64e046a4
Fixed #29530 -- Fixed aliases ordering when chaining annotate() and filter().
2018-07-02 21:09:29 +02:00
Sergey Fedoseev
b49b59b029
Simplified SQLite's Decimal adapter.
2018-07-02 13:36:40 -04:00
Ian Foote
38cada7c94
Fixed #28077 -- Added support for PostgreSQL opclasses in Index.
...
Thanks Vinay Karanam for the initial patch.
2018-06-29 17:00:28 -04:00
Thomas Grainger
4fba321a45
Fixed #29480 -- Made MySQL backend retrieve constraint columns in their defined order.
2018-06-29 10:43:53 -04:00
Tim Graham
2ec151e35d
Fixed #29514 -- Reverted "Used datetime.timezone.utc instead of pytz.utc for better performance."
...
This reverts commit 27ca5ce19f
due to a
regression.
2018-06-28 11:14:26 -04:00
Tim Graham
b9cf764be6
Fixed #29517 -- Added support for SQLite column check constraints on positive integer fields.
2018-06-25 14:01:04 -04:00
Alexandr Tatarinov
7410618528
Fixed #29447 -- Made RelatedManager.set() pass bulk argument to clear().
2018-06-25 13:04:46 -04:00
Tim Graham
e7185a6514
Refs #29516 -- Reverted inadvertent change in Model.__init__().
2018-06-25 09:39:16 -04:00
Federico Bond
4c36414323
Fixed #29517 -- Rephrased error message when passing incorrect kwarg to model constructor
2018-06-25 09:30:58 +02:00
Tom
4249076844
Refs #29451 -- Fixed regex/iregex lookups on MySQL 8.
2018-06-20 10:57:28 -04:00
Nick Pope
b0fbfae093
Fixed #29503 -- Made __in lookup keep order of values in query.
...
Regression in 86eccdc8b6
.
2018-06-20 09:29:06 -04:00
Mariusz Felisiak
6dd4edb1b4
Fixed #29496 -- Fixed crash on Oracle when converting a non-unique field to primary key.
...
Thanks Tim Graham for the review.
2018-06-17 08:51:02 +02:00
Jeff
fcc4e251db
Fixed #29000 -- Fixed RenameModel's renaming of a M2M column when run after RenameField.
...
Regression in 45ded053b1
.
2018-06-15 11:51:09 -04:00
Tim Graham
c03e41712b
Refs #28748 -- Reallowed lazy model field choices.
...
Regression in 3aa9ab39cc
.
2018-05-29 21:43:38 -04:00
Paulo
6104875a2c
Fixed #29230 -- Fixed nested prefetches that clash with descriptors.
2018-05-27 21:45:51 -04:00
Mariusz Felisiak
4ab1f559e8
Fixed #29416 -- Removed unnecesary subquery from GROUP BY clause on MySQL when using a RawSQL annotation.
...
Regression in 1d070d027c
.
2018-05-27 18:25:19 -04:00
Markus Holtermann
e01fa015c0
Refs #27098 -- Removed unused introspection queries.
...
Unused since 578711c310
.
Thanks Ian Foote for finding this.
2018-05-26 16:29:02 +02:00
bakabiko
a7bc1aea03
Fixed #29380 -- Added support for QuerySet.select_for_update()'s nowait and skip_locked options on MySQL 8+.
2018-05-18 19:37:36 -04:00
olivierdalang
825f0beda8
Fixed #8936 -- Added a view permission and a read-only admin.
...
Co-authored-by: Petr Dlouhy <petr.dlouhy@email.cz>
Co-authored-by: Olivier Dalang <olivier.dalang@gmail.com>
2018-05-16 06:44:55 -04:00
Paulo
265506bbc3
Refs #28834 -- Moved ancestor field cached value fallback to related fields descriptor.
2018-05-14 21:17:02 -04:00
Stefan R. Filipek
a5a2ceeb45
Fixed #27629 -- Added router.allow_relation() calls for assignments between unsaved model instances.
2018-05-10 20:42:44 -04:00
Tim Graham
7ac3008fe4
Refs #29350 -- Fixed 'invalid escape sequence' warning in SQLite introspection.
2018-05-08 10:42:24 -04:00
Sanket Saurav
079f324357
Fixed #28913 -- Fixed error handling when MIGRATIONS_MODULES specifies a nonexistent top-level package.
2018-05-05 18:26:33 -04:00
Carlton Gibson
21fd8041c1
Refs #29358 -- Corrected wording in primary key check message.
2018-05-03 15:28:37 +02:00
Hasan Ramezani
816b8d9518
Fixed #29358 -- Added a system check to prohibit models with more than one primary_key field.
2018-05-03 09:08:29 +02:00
Mariusz Felisiak
483cc1c430
Refs #28859 -- Fixed "no data found" exception handling with cx_Oracle 6.3+.
2018-04-28 19:39:45 +02:00
Zackary Troop
30f8642f2e
Fixed #29350 -- Fix get_primary_key_column() method in sqlite3 backend
...
Thanks Tim Graham and Mariusz Felisiak for the reviews.
2018-04-28 12:01:45 +02:00
priyanshsaxena
6b3d292043
Fixed #29015 -- Added an exception if the PostgreSQL database name is too long.
2018-04-27 21:37:42 -04:00
Oscar Esgalha
6d1f576945
Fixed #29367 -- Fixed model state on objects with a primary key created with QuerySet.bulk_create().
2018-04-27 17:57:38 -04:00
orlnub123
21420096c4
Fixed #29247 -- Allowed blank model field choice to be defined in nested choices.
2018-04-20 11:06:14 -04:00
Tom
11b8c30b9e
Ref #23919 -- Replaced some os.path usage with pathlib.Path.
2018-04-19 21:30:00 -04:00
Adnan Umer
534d8d875e
Fixed #28600 -- Added prefetch_related() support to RawQuerySet.
2018-04-19 13:48:27 -04:00
Adnan Umer
f2026ca5e2
Fixed #29337 -- Added __len__() & __bool__() to RawQuerySet.
2018-04-19 12:46:31 -04:00
Adnan Umer
ec0319ff82
Fixed #29339 -- Added result caching to RawQuerySet.
2018-04-19 11:35:49 -04:00
Tom
c1c163b427
Fixed #28574 -- Added QuerySet.explain().
2018-04-19 10:52:19 -04:00
Brett Cannon
64b74804c5
Fixed #29334 -- Updated pypi.python.org URLs to pypi.org.
2018-04-17 20:24:27 -04:00
Mariusz Felisiak
e0a3cfaca0
Simplified Oracle's DatabaseOperations.cache_key_culling_sql() with LIMIT/OFFSET.
2018-04-17 12:50:43 -04:00
Daniel Miller
60156750f6
Fixed #29330 -- Fixed crash when pickling BaseExpression.
...
Regression in cfff2af02b
.
2018-04-16 10:15:13 -04:00
Mariusz Felisiak
0b66c3b442
Fixed #29286 -- Fixed column mismatch crash with QuerySet.values() or values_list() after combining an annotated and unannotated queryset with union(), difference(), or intersection().
...
Regression in a0c03c62a8
.
Thanks Tim Graham and Carlton Gibson for reviews.
2018-04-13 12:15:52 +02:00
Flávio Juvenal
e1f13f1551
Fixed #29320 -- Added an exception when an annotation alias matches a ForeignKey attname.
2018-04-12 21:15:40 -04:00
Jeremy Bowman
ee17bb8a67
Fixed #29193 -- Prevented unnecessary foreign key drops when altering a unique field.
...
Stopped dropping and recreating foreign key constraints on other fields
in the same table as the one which is actually being altered in an
AlterField operation.
Regression in c3e0adcad8
.
2018-04-11 23:17:11 -04:00
Dmitry Dygalo
c979c0a2b8
Fixed #25718 -- Made a JSONField lookup value of None match keys that have a null value.
2018-04-04 10:53:46 -04:00
Mariusz Felisiak
816b386d41
Refs #24791 -- Made PostgreSQL's nodb connection use first PostgresSQL db when 'postgres' db isn't available.
...
Thanks Tim Graham and Claude Paroz for reviews.
2018-04-03 22:21:47 +02:00
Mariusz Felisiak
55cc26941a
Refs #28643 -- Added Repeat database function.
...
Thanks Tim Graham and Nick Pope for reviews.
2018-04-03 19:36:12 +02:00
Mariusz Felisiak
6141c752fe
Fixed #29251 -- Added bytes to str conversion in LPad/RPad database functions on MySQL.
...
Thanks Tim Graham for the review.
2018-04-03 18:24:04 +02:00
Simon Charette
2156565b5b
Fixed #29245 -- Made autodetector treat field renames + db_column addition as RenameField.
2018-03-28 12:43:43 -04:00
Dan Watson
29150d5da8
Fixed #23406 -- Allowed migrations to be loaded from .pyc files.
2018-03-23 13:20:38 -04:00
Sergey Fedoseev
27ca5ce19f
Used datetime.timezone.utc instead of pytz.utc for better performance.
2018-03-20 15:24:16 -04:00
Nick Pope
281c0223b3
Refs #29227 -- Simplified NullBooleanField by making it subclass BooleanField.
2018-03-20 12:10:10 -04:00
Tim Graham
6421bd702f
Refs #29227 -- Made inspectdb generate BooleanField(null=True) rather than NullBooleanField.
2018-03-20 12:10:10 -04:00
Tim Graham
5fa4f40f45
Fixed #29227 -- Allowed BooleanField to be null=True.
...
Thanks Lynn Cyrin for contributing to the patch, and Nick Pope for review.
2018-03-20 12:10:10 -04:00
Astral
a0c03c62a8
Fixed #29229 -- Fixed column mismatch crash when combining two annotated values_list() querysets with union(), difference(), or intersection().
...
Regression in 7316720603821ebb64dfe8fa592ba6edcef5f3e.
2018-03-19 21:05:43 -04:00
Mariusz Felisiak
cede5111bb
Refs #28643 -- Added LPad and RPad database functions.
...
Thanks Tim Graham for the review.
2018-03-19 17:35:16 +01:00
Claude Paroz
3c4ff21763
Fixed #29103 -- Removed bad 'b'-prefix added by MySQL's SchemaEditor.quote_value().
2018-03-17 16:36:54 -04:00
Mads Jensen
77609f922e
Removed unused args in Index.clone().
2018-03-17 15:42:09 -04:00
Tim Graham
f8b98f0edc
Removed DatabaseFeatures.can_introspect_null.
...
The only known usage is in the unmaintained django-pymssql project.
2018-03-16 11:43:41 -04:00
Mariusz Felisiak
362813d628
Fixed hanging indentation in various code.
2018-03-16 10:54:34 +01:00
Mariusz Felisiak
9421aee35e
Refs #28643 -- Added LTrim, RTrim, and Trim database functions.
...
Thanks Tim Graham and Mads Jensen for reviews.
2018-03-15 20:57:23 +01:00
Mariusz Felisiak
feb683c4c2
Fixed #29155 -- Fixed crash when database functions are used with pattern lookups.
...
Thanks Tim Graham and Sergey Fedoseev for reviews.
2018-03-14 10:00:07 +01:00
Mariusz Felisiak
acfc650f2a
Fixed #29199 -- Fixed crash when database user password contains @ sign on Oracle.
...
Thanks Shane Allgeier for the report and Tim Graham for the review.
2018-03-13 19:06:40 +01:00
robwa
4ab027b944
Fixed #28988 -- Fixed queries when a GenericRelation is used with multi-table inheritance.
2018-03-12 22:42:48 -04:00
Sergey Fedoseev
d696fccae6
Fixed #29209 -- Fixed Cast() with TextField on MySQL and Oracle.
2018-03-12 21:57:14 -04:00
Tomer Chachamu
c12745f682
Fixed typo in django/db/backends/base/schema.py.
2018-03-12 13:49:36 -04:00
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
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
Simon Charette
ec50937bcb
Refs #20939 -- Removed the Query._forced_pk hack.
2017-04-25 23:43:33 -04:00
Mariusz Felisiak
84dcd16247
Refs #23919 -- Used "raise from" instead of __cause__ in reraising backend-specific database exceptions.
...
Thanks Tim Graham for the review.
2017-04-25 08:29:54 +02:00
Mariusz Felisiak
e776dd2db6
Fixed #28116 -- Used error code filtering in PostgreSQL test database creation.
...
Thanks Claude Paroz and Tim Graham for reviews.
2017-04-25 06:01:25 +02:00
Carles Pina Estany
9f2e8b5bb7
Fixed #28120 -- Checked that CharField.max_length is not a boolean.
2017-04-24 18:49:31 -04:00
Simon Charette
8ef35468b6
Fixed #28101 -- Fixed a regression with nested __in subquery lookups and to_field.
...
Thanks Kristian Klette for the report and Tim for the help.
2017-04-23 00:21:27 -04:00
Mariusz Felisiak
87f9a3c5b2
Updated Oracle docs links to Oracle 12c.
2017-04-21 16:02:31 +02:00
Claude Paroz
43b4a1618e
Fixed #28096 -- Allowed prefetch calls with ModelIterable subclasses
...
Regression in 7ec330eeb9
.
Thanks Tim Graham for the review.
2017-04-19 19:32:46 +02:00
Huang Zhiqiang
cd7afcdcac
Fix a typo in django/db/transaction.py
2017-04-19 16:36:06 +02:00
Mariusz Felisiak
63b36d6419
Removed unused DatabaseIntrospection._name_to_index() from Oracle backend.
...
Unused since its introduction in cac7675f24
.
2017-04-18 14:17:08 +02:00
Mariusz Felisiak
e5dce7b0fb
Refs #27795 -- Removed unneeded force_text calls from the Oracle backend.
2017-04-17 14:22:00 +02:00
Mariusz Felisiak
e1253bc26f
Refs #25406 -- Removed exception hiding in MySQL test database creation during --keepdb.
...
Thanks Adam Johnson, Simon Charette and Tim Graham for reviews.
2017-04-13 20:20:01 +02:00
Sergey Fedoseev
e7afef13f5
Fixed #26788 -- Fixed QuerySet.update() crash when updating a geometry to another one.
2017-04-10 13:26:26 -04:00
Mariusz Felisiak
64264c9a19
Fixed #25406 -- Removed exception hiding in PostgreSQL test database creation during --keepdb.
...
Thanks Markus Holtermann and Tim Graham for reviews.
2017-04-10 13:04:00 -04:00
Mariusz Felisiak
054a44d6f0
Used NotSupportedError instead of DatabaseError in SQLCompiler.as_sql().
2017-04-10 12:49:27 -04:00
Tim Graham
fce7827101
Fixed #28047 -- Fixed QuerySet.filter() crash when it uses the name of a OneToOneField pk.
...
Regression in 1bc249c2a6
.
2017-04-10 09:51:51 -04:00
Simon Charette
a354c69055
Fixed #28038 -- Restored casting to text of builtin lookups on PostgreSQL.
...
Reverted 658f1e8
which broke code using __icontains's implicit cast to ::text
on ArrayField.
Thanks Peter J. Farrell for the report.
2017-04-07 16:47:52 -04:00
Markus Holtermann
d3cf75ec6f
Fixed #28051 -- Made migrations respect Index's name argument.
...
Thanks Marc Tamlyn for the report and Tim Graham for the review.
2017-04-07 11:47:53 -04:00
Ingo Klöcker
c4536c4a54
Fixed #27777 -- Made File.open() work with the with statement ( #8310 )
...
Fixed #27777 -- Made File.open() work with the with statement
2017-04-07 14:21:06 +02:00
Mariusz Felisiak
695d4dd790
Fixed #23147 -- Disabled a limit/offset on a query with select_for_update on Oracle.
...
Thanks Shai Berger and Tim Graham for the reviews.
2017-04-07 14:08:07 +02:00
Adam Johnson
7f8a924b45
Refs #27834 -- Removed Value wrapping from StrIndex's substring param.
2017-04-03 08:39:57 -04:00
Simon Charette
35c0025151
Fixed #27928 -- Avoided SET/DROP DEFAULT unless a field changes from null to non-null.
...
Thanks Christophe Pettus, Matteo Pietro Russo for reports and Tim for review.
2017-04-02 16:34:03 -04:00
Chris Sinchok
66150f7cf6
Fixed #27954 -- Allowed keyboard interrupt to abort queries in PostgreSQL dbshell.
...
Thanks Tim Martin for review.
2017-04-01 21:01:08 -04:00
Sergey Fedoseev
bde86ce9ae
Fixed #25605 -- Made GIS DB functions accept geometric expressions, not only values, in all positions.
2017-04-01 09:47:49 -04:00
Sergey Fedoseev
068d75688f
Refs #18247 -- Fixed SQLite QuerySet filtering on decimal result of Least and Greatest.
2017-03-29 13:29:53 -04:00
Mariusz Felisiak
1d070d027c
Fixed #25414 -- Fixed QuerySet.annotate() with pk in values() on MySQL.
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-03-29 06:47:07 +02:00
Tim Graham
b59c0d722d
Refs #18974 -- Added stacklevel for permalink() deprecation.
2017-03-28 17:58:10 -04:00
Tim Graham
eca6f91be2
Updated cx_Oracle arraysize comment.
2017-03-28 09:41:45 -04:00
Mads Jensen
ed0cbc8d8b
Refs #23919 -- Removed some Python 2 compatibility code and comments.
2017-03-27 13:12:27 -04:00
Mariusz Felisiak
1b6f05e91f
Fixed #21160 -- Fixed QuerySet.in_bulk() crash on SQLite when requesting more than 999 ids.
...
Thanks Andrei Picus and Anssi Kääriäinen for the initial patch
and Tim Graham for the review.
2017-03-27 18:43:40 +02:00
Mariusz Felisiak
f42c7cc87b
Refs #21160 -- Replaced DatabaseFeatures.supports_1000_query_parameters by a DatabaseFeatures.max_query_params.
2017-03-24 18:37:03 +01:00
Kapil Garg
7e09fa7f51
Fixed #27969 -- Fixed models.Field.formfield() setting 'disabled' for fields with choices.
2017-03-23 13:22:04 -04:00
Sergey Fedoseev
40ffabe8dc
Removed unneeded Value wraps in Substr.
...
Unneeded since e2d6e14662
.
2017-03-23 10:50:56 -04:00
Mariusz Felisiak
43380e9110
Fixed #27966 -- Bumped required psycopg2 version to 2.5.4.
...
Thanks Tim Graham for the review.
2017-03-21 17:23:17 +01:00
Tim Graham
3d19d1428a
Fixed #27915 -- Allowed Meta.indexes to be defined in abstract models.
...
Thanks Markus Holtermann for review.
2017-03-21 10:53:21 -04:00
Mads Jensen
19b8ca5824
Removed unused connector parameter of Query.build_filter().
...
Unused since 6fe2b001db
.
2017-03-18 09:04:56 -04:00
Mads Jensen
e45633086c
Removed unused rest_of_lookups parameter of Query.try_transform().
...
Unused since 534aaf56f4
.
2017-03-18 09:00:59 -04:00
Mads Jensen
82bb4e684f
Fixed #27935 -- Fixed crash with BrinIndex name > 30 characters.
2017-03-18 08:12:10 -04:00
Brad Melin
b625907a79
Fixed #27834 -- Added StrIndex database function.
2017-03-14 19:58:56 -04:00
Mads Jensen
e7033e00f8
Used constant instead of hard-coded value for max index name length
...
Refs #26709
2017-03-14 15:50:37 +01:00
Adam Chainz
a452dddb25
Fixed #27904 -- Added a system check that Field.validators are callable.
2017-03-11 12:27:29 -05:00
Mariusz Felisiak
75503a823f
Fixed #27924 -- Added support for cx_Oracle 5.3.
...
- Fixed Oracle backend due to cx_Oracle 5.3 change in the
Cursor.description behavior i.e. "Use None instead of 0 for items in
the Cursor.description attribute that do not have any validity.".
- Used cx_Oracle.Object.size() instead of len().
Thanks Tim Graham for the review.
2017-03-10 23:02:44 +01:00
Mariusz Felisiak
94d8bea212
Fixed #24365 -- Made inspectdb translate MySQL unsigned integer columns to positive integer fields.
2017-03-08 10:56:00 -05:00
Adam Johnson
af121b08e8
Refs #27624 -- Made many attributes of Query immutable.
2017-03-08 09:25:44 -05:00
Bo Marchman
9bbb6e2d25
Fixed #26522 -- Fixed a nondeterministic AssertionError in QuerySet combining.
...
Thanks Andrew Brown for the test case.
2017-03-06 13:40:17 -05:00
Claude Paroz
8346680e1c
Refs #27795 -- Removed unneeded force_text calls
...
Thanks Tim Graham for the review.
2017-03-04 18:18:21 +01:00
Mariusz Felisiak
6b47431aaf
Refs #27860 -- Simplified deleting indexes on PostgreSQL using "IF EXISTS".
2017-03-03 10:50:34 -05:00
Tim Graham
29ea9714ee
Removed PostgreSQL version detection for psycopg2 < 2.0.12.
2017-03-01 13:17:34 -05:00
Matthew Schinckel
f48bc7c3db
Fixed #27862 -- Fixed incorrectly quoted table aliases in Subquery SQL.
...
Add aliases from resolved querysets to the parent query's external
aliases to prevent those aliases from being quoted.
Thanks to Vasily Stepanov for the report and Tim Graham for the review.
2017-03-01 07:56:37 -05:00
Anton Samarchyan
60e52a047e
Refs #27656 -- Updated django.db docstring verbs according to PEP 257.
2017-02-28 09:17:27 -05:00
Tim Graham
d6e26e5b7c
Removed obsolete references to form_for_instance().
2017-02-28 07:37:25 -05:00
Tim Graham
6b00af5014
Refs #27802 -- Corrected BaseDatabaseOperations.datetime_extract/trunc_sql() docstrings.
2017-02-27 10:07:24 -05:00
Tim Graham
82026d61a3
Refs #27843 -- Fixed 'invalid escape sequence' warning in truncate_name().
2017-02-27 09:28:02 -05:00
Ian Foote
508b5debfb
Refs #11964 -- Made Q objects deconstructible.
2017-02-23 20:47:48 -05:00
Ian Foote
19b2dfd1bf
Refs #11964 , #26167 -- Made Expressions deconstructible.
2017-02-23 20:44:06 -05:00
Vytis Banaitis
3dcc351691
Refs #23919 -- Used yield from.
2017-02-23 20:06:01 -05:00
Tim Graham
0a0c24581e
Refs #26285 -- Removed postgresql's unused DatabaseOperations.fulltext_search_sql().
...
Should have been removed in 5139832398
.
2017-02-21 13:10:24 -05:00
Vytis Banaitis
4045fd56cb
Fixed #27856 -- Improved accuracy of date subtraction on PostgreSQL.
...
Accuracy was incorrect when dates differ by a month or more.
2017-02-21 12:06:16 -05:00
Alexey Rogachev
c743af82cf
Fixed typo in DurationField's docstring.
2017-02-20 08:44:05 -05:00
Mariusz Felisiak
b935190572
Fixed #27843 -- Fixed truncate_name() when the name contains a username.
2017-02-17 09:24:55 -05:00
Vytis Banaitis
d5088f838d
Fixed #27828 -- Fixed a crash when subtracting Integer/DurationField from DateField on Oracle/PostgreSQL.
2017-02-16 11:46:32 -05:00
Tim Graham
b008f7cc56
Fixed #27135 -- Made index introspection return Index.suffix.
2017-02-15 20:15:02 -05:00
Tim Graham
0595bca221
Fixed #27742 -- Reverted "Fixed #24607 -- Serialized natural keys in multi-table inheritance models."
...
This reverts commit 74a575eb72
as it causes
unexpected migrations and doesn't seem to be the best solution.
2017-02-11 06:34:59 -05:00
ClairePhila
d26413113c
Refs #27148 -- Fixed UUIDField.to_python(None) crash.
...
Regression in 2f9861d823
.
2017-02-10 13:54:52 -05:00
ClairePhila
edad02af06
Allow UUIDField to be None when deserializing
2017-02-10 17:26:02 +01:00
Mikhail Nacharov
c4e2fc5d98
Fixed #22669 -- Fixed QuerySet.bulk_create() with empty model fields on Oracle.
2017-02-09 18:47:08 -05:00
Mariusz Felisiak
965f678a39
Fixed #25898 -- Made test database/user creation on Oracle reraise unexpected errors.
...
Thanks Shai Berger and Tim Graham for review.
2017-02-09 17:55:07 -05:00
François Freitag
e124d2da94
Fixed #26551 -- Fixed negated Q() queries that span relations.
...
Prevented queries from reusing trimmed joins.
2017-02-09 11:20:33 -05:00
Tim Graham
500532c95d
Refs #23919 -- Removed default 'utf-8' argument for str.encode()/decode().
2017-02-09 09:03:47 -05:00
Mariusz Felisiak
1b96dbdad0
Fixed #27822 -- Replaced deprecated cx_Oracle types in DatabaseIntrospection.data_types_reverse.
2017-02-09 08:57:34 -05:00
Claude Paroz
c651331b34
Converted usage of ugettext* functions to their gettext* aliases
...
Thanks Tim Graham for the review.
2017-02-07 09:04:04 +01:00
Mariusz Felisiak
15c14f6f16
Fixed #27802 -- Unified return value of db backend datetime SQL methods.
2017-02-06 09:19:13 -05:00
Mads Jensen
86ae1d51ed
Refs #27546 -- Removed hardcoded class names in __repr__() methods.
2017-02-04 11:42:45 -05:00
Tim Graham
29f607927f
Fixed spelling of "nonexistent".
2017-02-03 08:01:45 -05:00
Tim Graham
924af638e4
Fixed #27683 -- Made MySQL default to the read committed isolation level.
...
Thanks Shai Berger for test help and Adam Johnson for review.
2017-02-01 15:34:17 -05:00
Vytis Banaitis
8838d4dd49
Refs #23919 -- Replaced kwargs.pop() with keyword-only arguments.
2017-02-01 11:41:56 -05:00
Lex Berezhny
ac5f886c56
Fixed #27800 -- Fixed QuerySet.annotate(Length(...)).distinct() crash.
2017-01-31 18:45:55 -05:00
Claude Paroz
52138b1fd0
Refs #23919 -- Removed usage of obsolete SafeBytes class
...
The class will be removed as part of #27753 .
Thanks Tim Graham for the review.
2017-01-30 15:04:45 +01:00
Mariusz Felisiak
89501d9298
Fixed #27789 -- Simplified query for sequence value on Oracle.
2017-01-30 08:03:42 -05:00
Tim Graham
0de0699d94
Fixed #27788 -- Dropped support for Oracle < 12.1.
2017-01-28 08:19:47 -05:00
Vytis Banaitis
d1bab24e01
Refs #23919 , #27778 -- Removed obsolete mentions of unicode.
2017-01-26 08:19:27 -05:00
Tim Graham
1c466994d9
Refs #23919 -- Removed misc Python 2/3 references.
2017-01-25 13:59:25 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Tim Graham
2d96c027f5
Refs #23919 -- Removed obsolete MySQLdb references.
2017-01-25 10:16:10 -05:00
Tim Graham
3f0c4fe18f
Refs #25175 -- Deprecated db.backends.postgresql_psycopg2 module.
2017-01-25 09:23:04 -05:00
Mads Jensen
ebf34c3cdc
Removed unused variables that are overwritten.
2017-01-25 09:14:05 -05:00
Tim Graham
5b95d421f7
Refs #23919 -- Removed a MySQLdb workaround (refs #6052 ) for Python 2.
2017-01-24 08:35:06 -05:00
Tim Graham
a87d6b69a7
Tidied djang.db.utils.load_backend().
...
Removed an unneeded EnvironmentError catching and used
"raise from exc" syntax.
2017-01-24 08:33:26 -05:00
Tim Graham
435e4bf38e
Refs #23919 -- Removed __traceback__ setting needed for Python 2.
...
Partially reverted refs #25761 and refs #16245 .
2017-01-24 08:31:58 -05:00
Tim Graham
248d54569e
Removed MySQL decimal casting.
...
Added in Django 1.0: 92c35a0617
Unknown when it became obsolete.
2017-01-23 10:44:02 -05:00
Claude Paroz
8377a98ca5
Removed obsolete force_text_recursive
2017-01-22 21:13:00 +01:00
Claude Paroz
6e55e1d88a
Refs #23919 -- Replaced six.reraise by raise
2017-01-22 20:08:04 +01:00
Tim Graham
d170c63351
Refs #23919 -- Removed misc references to Python 2.
2017-01-21 20:02:00 -05:00
Mariusz Felisiak
c22212220a
Refs #23919 -- Removed re.U and re.UNICODE (default on Python 3).
2017-01-21 14:28:16 -05:00
Tim Graham
1b06d5e6f6
Refs #23919 -- Removed pysqlite support (it's Python 2 only).
2017-01-20 18:21:15 -05:00
Claude Paroz
042b7350a0
Refs #23919 -- Removed unneeded str() calls
2017-01-20 14:13:55 +01:00
Tim Graham
4e729feaa6
Refs #23919 -- Removed django.utils._os.upath()/npath()/abspathu() usage.
...
These functions do nothing on Python 3.
2017-01-20 08:01:02 -05:00
Claude Paroz
dc8834cad4
Refs #23919 -- Removed unneeded force_str calls
2017-01-20 08:44:31 +01:00
Mariusz Felisiak
bf1c957027
Refs #23919 -- Removed Python 2 workaround for hashing Oracle params (refs #27632 ).
2017-01-19 22:20:14 -05:00
Tim Graham
9ee47ce7b4
Refs #23919 -- Removed enum ImportError handling for Python 2.
2017-01-19 13:55:20 -05:00
Simon Charette
9695b14982
Refs #23919 -- Removed str() conversion of type and method __name__.
2017-01-19 11:31:07 -05:00
Chillar Anand
41e0033caf
Refs #23919 -- Removed usage of django.utils.decorators.ContextDecorator.
2017-01-19 11:28:30 -05:00
Simon Charette
4c5ed3e683
Refs #23919 -- Removed __nonzero__() methods (for Python 2).
...
Thanks Tim for the review.
2017-01-19 11:26:26 -05:00
james mike dupont
7d20094996
Fixed spelling mistakes in code and comments.
2017-01-19 07:52:41 -05:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Aymeric Augustin
eb422e476f
Refs #23919 -- Removed obsolete __ne__() methods.
...
__ne__() defaults to the opposite of __eq__() on Python 3
when it doesn't return NotImplemented.
2017-01-18 21:44:00 -05:00
Aymeric Augustin
3cc5f01d9b
Refs #23919 -- Stopped using django.utils.lru_cache().
2017-01-18 21:42:40 -05:00
Claude Paroz
2b281cc35e
Refs #23919 -- Removed most of remaining six usage
...
Thanks Tim Graham for the review.
2017-01-18 21:33:28 +01:00
Claude Paroz
7b2f2e74ad
Refs #23919 -- Removed six.<various>_types usage
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-01-18 20:18:46 +01:00
Claude Paroz
c716fe8782
Refs #23919 -- Removed six.PY2/PY3 usage
...
Thanks Tim Graham for the review.
2017-01-18 16:21:28 +01:00
Claude Paroz
f3c43ad1fd
Refs #23919 -- Removed python_2_unicode_compatible decorator usage
2017-01-18 13:44:34 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Tim Graham
631f4ab061
Removed Manager.use_for_related_fields and Meta.manager_inheritance_from_future.
...
Per deprecation timeline. Refs ed0ff913c6
.
2017-01-17 20:52:04 -05:00
Tim Graham
0dfc5479a8
Refs #26058 -- Removed deprecated FileField.get_directory_name()/get_filename().
2017-01-17 20:52:04 -05:00
Tim Graham
9d0e8c1e7f
Refs #26320 -- Removed implicit OneToOnField parent_link per deprecation timeline.
2017-01-17 20:52:04 -05:00
Tim Graham
933dc62742
Refs #16508 -- Removed virtual aliases of "private fields".
...
Per deprecation timeline.
2017-01-17 20:52:03 -05:00
Tim Graham
b70094f040
Refs #26226 -- Removed support for related manager classes without a _apply_rel_filters() method.
...
Per deprecation timeline.
2017-01-17 20:52:03 -05:00
Tim Graham
5139832398
Refs #26285 -- Removed MySQL __search lookup per deprecation timeline.
2017-01-17 20:52:03 -05:00
Tim Graham
bfe0d54514
Refs #26230 -- Removed support for model name query lookups when using Meta.default_related_name.
...
Per deprecation timeline.
2017-01-17 20:52:03 -05:00
Tim Graham
bcf3532ede
Refs #26154 -- Removed deprecated CommaSeparatedIntegerField.
2017-01-17 20:52:02 -05:00
Tim Graham
ed251246cc
Refs #25550 -- Removed support for direct assignment to the reverse side of a related set.
2017-01-17 20:52:01 -05:00
Tim Graham
733c7c7030
Refs #24716 -- Removed Field._get_val_from_obj() per deprecation timeline.
2017-01-17 20:52:00 -05:00
Tim Graham
e707e4c709
Refs #19738 -- Removed timezone conversion in SQL queries executed outside of the ORM.
...
Per deprecation timeline.
2017-01-17 14:09:29 -05:00
Tim Graham
b2ffbb00a5
Refs #24215 -- Removed add_lazy_relation() per deprecation timeline.
2017-01-17 14:09:29 -05:00
Tim Graham
ddd3268975
Refs #21127 -- Required on_delete for ForeignKey/OneToOneField.
...
Per deprecation timeline.
2017-01-17 14:09:28 -05:00
Tim Graham
625e9da9ca
Removed Field.rel and Field.remote_field.to per deprecation timeline.
2017-01-17 14:09:28 -05:00
Tim Graham
a3bd8672d8
Refs #24154 -- Removed deprecated BaseDatabaseOperations.check_aggregate_support().
2017-01-17 14:09:28 -05:00
Tim Graham
03087f80d1
Refs #24205 -- Removed Signal.disconnect()'s weak argument.
...
Per deprecation timeline.
2017-01-17 14:09:28 -05:00
Tim Graham
f01ad1cb6a
Refs #27683 -- Allowed setting isolation level in DATABASES ['OPTIONS'] on MySQL.
2017-01-17 11:16:15 -05:00
Markus Holtermann
46e0335583
Refs #27666 -- Added ProjectState.reload_models().
2017-01-17 08:12:53 -05:00
Markus Holtermann
45ded053b1
Fixed #27666 -- Delayed rendering of recursivly related models in migration operations.
2017-01-17 08:12:52 -05:00
Mariusz Felisiak
7d2db2a7b8
Refs #27690 -- Removed sleep before drop test db on Oracle.
2017-01-16 19:20:28 -05:00
Mads Jensen
65e321b781
Refs #25809 -- Made a few late review comments for BrinIndex.
2017-01-16 13:23:20 -05:00
Tim Graham
b5511dddd6
Moved unneeded ImproperlyConfigured inner imports.
2017-01-16 12:48:41 -05:00
Josh Smeaton
1df89a60c5
Fixed #25307 -- Fixed QuerySet.annotate() crash with conditional expressions.
...
Thanks Travis Newport for the tests and Josh Smeaton for contributing
to the patch.
2017-01-16 10:03:15 -05:00
Mads Jensen
0bc59978ab
Fixed #27736 -- Used decorators for lookup registration.
2017-01-16 09:22:26 -05:00
François Freitag
05bdf4f44d
Refs #16614 -- Called _prepare_cursor() on every created cursor.
2017-01-16 09:12:23 -05:00
Mads Jensen
e585c43be9
Fixed #25809 -- Added BrinIndex support in django.contrib.postgres.
...
Thanks Tim Graham and Markus Holtermann for review.
2017-01-15 13:37:18 +01:00
Matthew Schinckel
236ebe94bf
Fixed #27149 -- Added Subquery and Exists database expressions.
...
Thanks Josh Smeaton for Oracle fixes.
2017-01-14 09:12:24 -05:00
Florian Apolloner
84c1826ded
Fixed #27718 -- Added QuerySet.union(), intersection(), difference().
...
Thanks Mariusz Felisiak for review and Oracle assistance.
Thanks Tim Graham for review and writing docs.
2017-01-14 08:32:07 -05:00
François Freitag
6b6be692fc
Refs #16614 -- Prevented database errors from being masked by cursor close.
...
When an error occurred during the cursor.execute statement, the cursor
is closed. This operation did not fail with client-side cursors. Now,
with server-side cursors, the close operation might fail (example
below). The original error should be raised, not the one raised by
cursor.close(), this is only clean-up code.
For example, one can attempt to create a named cursor for an invalid
query. psycopg will raise an error about the invalid query and the
server-side cursor will not be created on PostgreSQL. When the code
attempts to cursor.close(), it asks psycopg to close a cursor that was
not created. pyscopg raises a new error: psycopg2.OperationalError:
cursor "_django_curs_140365867840512_20" does not exist.
2017-01-14 07:13:00 -05:00
Simon Charette
973cfd2ef5
Refs #20483 -- Implemented cascaded flush on Oracle.
...
The initial implementation added support for PostgreSQL but it is also required
on Oracle (13b7f299de
).
Thanks Mariusz Felisiak for the foreign key retreival queries.
2017-01-13 08:50:03 -05:00
François Freitag
f3b7c05936
Refs #16614 -- Made QuerySet.iterator() use server-side cursors on PostgreSQL.
...
Thanks to Josh Smeaton for the idea of implementing server-side cursors
in PostgreSQL from the iterator method, and Anssi Kääriäinen and Kevin
Turner for their previous work. Also Simon Charette and Tim Graham for
review.
2017-01-11 09:25:37 -05:00
Ed Morley
7156a6c9c4
Fixed #27717 -- Allowed migration optimization across AlterModelOptions.
2017-01-10 18:38:48 -05:00
David Szotten
7a6863c338
Fixed #27690 -- Removed time.sleep(1) before dropping the test database.
...
Uncertain if this is needed, but no failures have appeared so far.
2017-01-06 15:28:22 -05:00
anabelensc
1c12df4aa6
Fixed #25912 -- Added binary left/right shift operators to F expressions.
...
Thanks Mariusz Felisiak for review and MySQL advice.
2017-01-03 14:15:46 -05:00
Mariusz Felisiak
fd2f7e4767
Fixed #27681 -- Fixed binary &/| operators for negative values on MySQL.
2017-01-03 12:41:44 -05:00
Josh Smeaton
26c9f529c9
Refs #27632 -- Simplified params dict creation for Oracle ( #7772 )
2017-01-01 12:39:03 +11:00
Andrew Nester
69b7d4b116
Fixed #27458 -- Fixed invalid sequence/index names when using "USER"."TABLE" db_table on Oracle.
2016-12-30 17:11:12 -05:00
Mariusz Felisiak
7d14889aa3
Fixed #27615 -- Used timedeltas as arguments to Oracle database driver.
...
Removed unused DatabaseFeatures.driver_supports_timedeltas workaround.
2016-12-29 15:49:18 -05:00
Tim Graham
fae56427e1
Fixed #27649 -- Bumped required cx_Oracle to 5.2.
...
Removed obsolete workarounds from 1aa4889808
and dcf3be7a62
.
2016-12-29 12:45:25 -05:00
Adam Chainz
391c450fba
Refs #25415 -- Made MySQL backend skip field validation of unsupported models.
2016-12-29 12:01:48 -05:00
Florian Apolloner
00c7bfadf4
Removed unused enumerate.
2016-12-29 14:55:17 +01:00
Simon Charette
813805833a
Fixed #27631 -- Prevented execution of transactional DDL statements when unsupported.
...
Executing a DDL statement during a transaction on backends that don't support
it silently commits, leaving atomic() in an incoherent state.
While schema_editor.execute() could technically be used to execute DML
statements such usage should be uncommon as these are usually performed through
the ORM. In other cases schema_editor.connection.execute() can be used to
circumvent this check.
Thanks Adam and Tim for the review.
2016-12-28 19:43:32 -05:00
Mariusz Felisiak
4579c3f6b8
Refs #27632 -- Unified query parameters by their types and values on Oracle.
...
Fixed Python 2 regression in 6dbe56ed78
.
Thanks Simon Charette for the implementation idea.
2016-12-28 17:20:42 -05:00
Tim Graham
e3e80da7a5
Fixed #27651 -- Allowed M2M to concrete and proxy through model.
2016-12-28 12:48:17 -05:00
Mariusz Felisiak
6dbe56ed78
Fixed #27632 -- Unified query parameters by their values on Oracle.
2016-12-28 08:14:14 -05:00
Simon Charette
cd7efa2033
Fixed #25492 -- Checked deferred foreign key constraints before dropping them.
...
This allows running foreign key data and schema altering operations in the
same migration on PostgreSQL.
Thanks Tim for review.
2016-12-24 13:53:11 -05:00
Peter Inglesby
a4cac17200
Fixed #27498 -- Fixed filtering on annotated DecimalField on SQLite.
2016-12-24 10:38:48 -05:00
Adam Chainz
8d94d575f8
Used @cached_property in RawQuerySet.
2016-12-23 10:12:48 -05:00
Adam Chainz
6ebf8f9057
Refs #27624 -- Made QuerySet._prefetch_related_lookups immutable.
2016-12-23 09:58:22 -05:00
Andrey Kuzminov
b8741c0058
Refs #18823 -- Corrected field name in an m2m manager error message.
2016-12-23 09:31:26 -05:00
Tim Graham
09a7f121b5
Removed unneeded values in NullBooleanField.formfield().
...
These values are duplicated in the super().
2016-12-20 07:54:54 -05:00
Mariusz Felisiak
cc0bb07013
Refs #19884 -- Removed DatabaseFeatures.can_introspect_max_length.
...
Unused (always True) after 3e43d24ad3
.
2016-12-19 16:16:11 -05:00
Mariusz Felisiak
3e43d24ad3
Refs #19884 -- Added CharField max_length introspection on Oracle.
2016-12-19 08:29:42 -05:00
Adam Chainz
d2a26c1a90
Optimized Model instantiation a bit.
...
* Avoid some unnecessary attribute lookups, e.g. access signals directly rather than from module
* Alias some repeat accesses inside the method to use the slightly faster local lookups
* Use tuple to iterate remaining kwargs as it's faster to construct
* Cache Field.get_default() to avoid running through all the logic on every call
* Use a cached list of the properties on the model class to avoid repeat isinstance() calls
2016-12-15 13:42:44 -05:00
Morgan Aubert
ef889d5b10
Fixed #27599 -- Fixed Field.__str__() crash for fields not attached to models.
2016-12-14 14:04:26 -05:00
Daniel Hillier
7da37699e8
Fixed #27594 -- Fixed select_related() with reverse self-referential OneToOneField.
...
Fixed definition of `klass_info['from_parent']` so that two models aren't
considered from a parent class if the model classes are the same.
2016-12-14 07:46:27 -05:00
Simon Charette
ecd625e830
Fixed #27310 -- Stopped rendering apps in RenameModel.state_forwards.
...
Thanks Tim for the review.
2016-12-10 10:19:06 -05:00
Yohann Gabory
47ef8f31f3
Fixed #13312 -- Allowed specifying the order of null fields in queries.
...
Thanks Mariusz Felisiak for finishing the patch.
2016-12-08 09:54:07 -05:00
InvalidInterrupt
98359109eb
Fixed #17002 -- Allowed using a ManyToManyField through model that inherits another.
2016-12-07 17:50:51 -05:00
Sergey Fedoseev
f909fa84be
Fixed #25708 -- Fixed annotations with geometry values.
2016-12-07 14:16:29 -05:00
Tim Graham
dd99e69fa8
Refs #27025 -- Fixed Python 3.6 deprecation warning for empty model super() calls.
...
https://bugs.python.org/issue23722
Thanks Nick Coghlan for advice and review.
2016-12-05 19:37:23 -05:00
Mariusz Felisiak
2d259e6bad
Refs #27324 -- Optimized DatabaseIntrospection.get_constraints() for foreign keys on Oracle.
2016-12-05 19:12:37 -05:00
Mariusz Felisiak
b059ddf066
Fixed #27561 -- Added Oracle support for binary "or" operator.
...
Removed DatabaseFeatures.supports_bitwise_or feature (unused, always True).
2016-12-02 16:59:39 -05:00
Keda87
48826aa541
Fixed #27546 -- Removed hardcoded class names in __repr__() methods.
2016-12-01 08:11:09 -05:00
Mariusz Felisiak
e17f40f4b5
Refs #24245 -- Added introspection for database defaults on Oracle.
2016-11-30 11:21:57 -05:00
Lex Berezhny
1a9bd75bfa
Refs #27358 -- Fixed system check crash with an empty FileField.upload_to.
2016-11-30 10:07:42 -05:00
Henry Dang
7cddd8a02e
Fixed #27358 -- Added a system check to prevent FileField's upload_to from starting with a slash.
...
Thanks Frank Bijlsma for the initial patch.
2016-11-29 16:12:24 -05:00
Andrew Nester
ade52ef71f
Fixed #27544 -- Fixed QuerySet.update(dt=F('dt') + timedelta) crash on SQLite.
2016-11-29 12:23:44 -05:00
Adam Chainz
95238a7de8
Fixed #27321 -- Added detection for table case name sensitivity on MySQL.
2016-11-28 13:29:21 -05:00
Mads Jensen
aa2cb4c622
Refs #26327 -- Renamed JsonAgg to JSONBAgg.
...
Thanks to Christian von Roques for the report.
2016-11-28 06:57:01 -05:00
Adam Chainz
6252fd6314
Fixed #27532 -- Deprecated Model._meta.has_auto_field
2016-11-25 13:24:11 -05:00
Daniel Hahler
eb42d8d5d9
Fixed grammar in sqlite's DatabaseOperations.bulk_batch_size()'s docstring.
2016-11-25 07:50:59 -05:00
Adam Chainz
92bbef8b9e
Improved the way Model.save() skips the auto_field.
...
Identity comparison is quicker than isinstance(), and it avoids coupling
between Model and AutoField.
2016-11-24 06:01:36 -05:00
Adam Chainz
e044026dce
Fixed #27499 -- Made Prefetches pickle without evaluating their QuerySet.
2016-11-23 11:23:14 -05:00
Tim Graham
2e5fbe889f
Cleaned up some __getstate__() docstrings.
2016-11-23 09:45:21 -05:00
Mariusz Felisiak
b63d0c54b0
Fixed #24959 -- Fixed queries using negative timedeltas on MySQL and Oracle.
2016-11-23 09:10:47 -05:00
Mark Young
2742901ac2
Fixed #27504 -- Allowed using the ORM after an error and rollback when autocommit is off.
2016-11-23 08:42:19 -05:00
Quentin Fulsher
f62abfc03d
Fixed #27295 -- Added a system check to prohibit model names that start or end with an underscore or contain double underscores.
2016-11-22 10:14:10 -05:00
Adam Chainz
74742aa956
Fixed #27512 -- Removed unused code in Model.__init__().
2016-11-20 19:39:32 -05:00
Adam Chainz
9d4246419c
Refs #26207 -- Removed obsolete comments about deferred model classes.
2016-11-20 18:22:13 -05:00
Adam Chainz
cc1f6f26b6
Fixed #27514 -- Tested Model.__init__ excessive number of fields.
2016-11-20 13:21:59 -05:00
Simon Charette
31a56e30cf
Fixed #27407 -- Made Model.delete(keep_parents=True) preserve parent reverse relationships.
...
Thanks Tim for the review.
2016-11-15 20:16:06 -05:00
Ramin Farajpour Cami
0a63ef3f61
Fixed #27463 -- Fixed E741 flake8 warnings.
2016-11-14 17:40:28 -05:00
Sergey Fedoseev
c7bfcd2f37
Fixed #27481 -- Made SQLite return annotated boolean values as boolean, not integer.
...
Thanks Simon Charette for review.
2016-11-14 14:47:20 -05:00
Ramin Farajpour Cami
967be82443
Fixed E305 flake8 warnings.
2016-11-14 12:30:46 -05:00
Mads Jensen
1446902be4
Fixed #25240 -- Added ExtractWeek and exposed it through the __week lookup.
...
Thanks to Mariusz Felisiak and Tim Graham for review.
2016-11-11 08:01:40 -05:00
Tim Graham
ac0cf97cb4
Removed redundant DateTimeField.register_lookup()s.
...
DateTimeField inherits these lookups from DateField.
2016-11-10 10:15:56 -05:00
Mariusz Felisiak
dacef9137f
Refs #27420 -- Removed exception hiding in Oracle test user creation during --keepdb.
...
If the test user creation fails here, _create_test_db() would return without
switching to the test user which caused the tests to run using the main
connection instead of the test user.
2016-11-08 16:53:52 -05:00
Mariusz Felisiak
c4b04e1598
Fixed #27420 -- Quoted the Oracle test user password in queries.
2016-11-08 16:30:22 -05:00
Maxime Lorant
cb3fb34b86
Fixed #27378 -- Added support for serialization of uuid.UUID in migrations.
...
Thanks Yuriy Korobko for the initial patch and Tobias McNulty for review.
2016-11-06 13:53:00 +01:00
Saulius Žemaitaitis
f28d29e8b7
Fixed #27372 -- Fixed introspection of SQLite foreign keys with spaces in DDL.
...
Thanks samuller for the report and initial patch.
2016-11-06 10:13:32 +01:00
Adam Chainz
c7dddc01d6
Fixed #27441 -- Improved SQL for 'DROP COLUMN' on MySQL
...
'CASCADE' is an undocumented no-op in MySQL, so to avoid confusion Django no longer outputs it.
2016-11-05 22:23:57 +01:00
Marti Raudsepp
da7910d483
Fixed CVE-2016-9013 -- Generated a random database user password when running tests on Oracle.
...
This is a security fix.
2016-11-01 09:30:57 -04:00
Tim Graham
2f9861d823
Fixed #27148 -- Fixed ModelMultipleChoiceField crash with invalid UUID.
2016-10-31 15:21:05 -04:00
Michael Scott
ec9ed07488
Fixed #27188 -- Allowed using unique=True with FileField.
...
Thanks Tim Graham for the initial patch.
2016-10-28 20:11:03 -04:00
Aymeric Augustin
fd748c42a9
Simplified AppConfig.import_models().
...
Since AppConfig now has a reference to its parent Apps registry,
it can look up the models there instead of receiving them in argument.
2016-10-28 18:43:45 -04:00
Aymeric Augustin
efcb7e1ebf
Modified readiness check in AppConfig.get_model(s).
...
It was inconsistent with the equivalent check in Apps.get_model(s)
because I made incorrect assumptions when I wrote that code and
needlessly complicated readiness checks.
This is a backwards-incompatible change.
2016-10-28 18:42:29 -04:00
Tim Graham
1bc249c2a6
Fixed #20939 -- Simplified query generation by converting QuerySet to Query.
...
Thanks Anssi Kääriäinen for the initial patch and Anssi, Simon Charette,
and Josh Smeaton for review.
2016-10-28 11:20:23 -04:00
Tim Graham
414ad25b09
Fixed #27327 -- Simplified time zone handling by requiring pytz.
2016-10-27 08:53:20 -04:00
Adam Chidlow
f734e2d4b2
Fixed #27334 -- Allowed FileField to move rather than copy a file.
...
When a FileField is set to an instance of File that is not also an
instance of FieldFile, pre_save() passes that object as the contents to
Storage.save(). This allows the file to be moved rather than copied
to the upload destination.
2016-10-26 12:25:30 -04:00
David Barragán Merino
b3bd3aa07c
Fixed #27385 -- Fixed QuerySet.bulk_create() on PostgreSQL when the number of objects is a multiple plus one of batch_size.
2016-10-25 19:21:08 -04:00
Marti Raudsepp
51fbe2a60d
Updated postgresql.org links to https and made them canonical.
2016-10-25 11:43:32 -04:00
Tim Graham
19f1321fa4
Removed unused loop in Query.change_aliases().
...
Unknown if it was ever used.
2016-10-24 11:27:41 -04:00
François Freitag
86bb9a0502
Refs #20888 -- Fixed index ordering introspection on PostgreSQL 9.6.
2016-10-17 07:16:13 -04:00
Tim Graham
50864b402b
Removed unused branch in ModelIterable.__iter__().
...
Unknown if it was ever used.
2016-10-15 10:19:47 -04:00
Tim Graham
5d1941adcf
Removed unused 'field' argument to DeleteQuery.delete_batch().
...
Unused since a170c3f755
.
2016-10-15 10:19:02 -04:00
Tim Graham
274b227796
Removed DatabaseFeatures.can_combine_inserts_with_and_without_auto_increment_pk.
...
Unused (always False) after 29132ebdef
.
2016-10-14 17:18:28 -04:00
Tim Graham
8997750c43
Removed unused QuerySet.value_annotation attribute.
...
Unused since 5008a4db44
.
2016-10-14 16:46:37 -04:00
Mariusz Felisiak
5a772a0b7b
Fixed #27324 -- Simplified DatabaseIntrospection.get_constraints() on Oracle.
2016-10-14 13:59:13 -04:00
Tim Graham
b679a3cdb1
Tested QuerySet compatibility check.
...
cdfdcf4b70
missed this test.
2016-10-14 08:51:04 -04:00
Tim Graham
f2dc6b3a99
Removed unused InsertQuery.clone().
...
Unknown if it was ever needed.
2016-10-13 16:58:43 -04:00
Tim Graham
3b2db6ec12
Removed unneeded try/except in Query.names_to_path().
2016-10-13 16:56:54 -04:00
Tim Graham
df1796b13f
Removed unused branch in SQLUpdateCompiler.as_sql().
...
Unknown if it was ever needed.
2016-10-13 16:56:26 -04:00
Tim Graham
419de7b00d
Removed unused branch in Query.change_aliases().
...
Unused since 0c7633178f
.
2016-10-13 14:35:10 -04:00
Tim Graham
816eae3508
Removed unused EmptyResultSets in SQLCompilers.
...
Unused since ed1bcf0515
.
2016-10-13 12:12:58 -04:00
João Sampaio
74a575eb72
Fixed #24607 -- Serialized natural keys in multi-table inheritance models.
2016-10-12 20:04:57 -04:00
Mariusz Felisiak
794f866cec
Fixed #27323 -- Optimized Oracle introspection by using USER_SEQUENCES instead of USER_CATALOG.
2016-10-12 18:58:33 -04:00
Tim Graham
a3a10f8abe
Removed unused SubqueryConstraint.relabel_aliases() and clone() methods.
...
Unused since b68212f539
.
2016-10-12 08:18:56 -04:00
Nick Pope
f1664a2734
Replaced '__' with LOOKUP_SEP constant.
2016-10-11 11:14:06 -04:00
Tim Graham
46a3d7604e
Fixed gis_tests.geoapp when run in isolation.
...
"from django.db.models import *" in contrib/gis/db/models/__init__.py could
obscure gis's functions.py resulting in exceptions like:
"module 'django.db.models.functions' has no attribute 'Union'".
2016-10-10 10:13:01 -04:00
Claude Paroz
979ea95608
Fixed #27300 -- Made makemigrations --dry-run output a string (no bytes)
...
Thanks Markus Holtermann for the report and the review.
2016-10-06 11:41:35 +02:00