Commit Graph

3506 Commits

Author SHA1 Message Date
Tim Graham 8a13cddc26 [1.11.x] Fixed #28047 -- Fixed QuerySet.filter() crash when it uses the name of a OneToOneField pk.
Regression in 1bc249c2a6.

Backport of fce7827101 from master
2017-04-10 11:52:10 -04:00
Simon Charette 5d35e8eb06 [1.11.x] 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.

Backport of a354c69055 from master
2017-04-07 16:51:07 -04:00
Markus Holtermann f9d2a20d7b [1.11.x] Fixed #28051 -- Made migrations respect Index's name argument.
Thanks Marc Tamlyn for the report and Tim Graham for the review.

Backport of d3cf75ec6f from master
2017-04-07 11:48:25 -04:00
Sergey Fedoseev 8484cf4cd0 [1.11.x] Refs #18247 -- Fixed SQLite QuerySet filtering on decimal result of Least and Greatest.
Backport of 068d75688f from master
2017-03-30 08:47:16 -04:00
Tim Graham d476fa96ac [1.11.x] Refs #18974 -- Added stacklevel for permalink() deprecation.
Backport of b59c0d722d from master
2017-03-28 18:01:21 -04:00
Kapil Garg a8c540accc [1.11.x] Fixed #27969 -- Fixed models.Field.formfield() setting 'disabled' for fields with choices.
Backport of 7e09fa7f51 from master
2017-03-23 13:56:45 -04:00
Mariusz Felisiak b06855facd [1.11.x] Fixed #27966 -- Bumped required psycopg2 version to 2.5.4.
Thanks Tim Graham for the review.

Backport of 43380e9110 from master
2017-03-21 17:40:04 +01:00
Tim Graham e5880516f9 [1.11.x] Fixed #27915 -- Allowed Meta.indexes to be defined in abstract models.
Thanks Markus Holtermann for review.

Backport of 3d19d1428a from master
2017-03-21 11:32:43 -04:00
Mads Jensen 0b93a992e5 [1.11.x] Fixed #27935 -- Fixed crash with BrinIndex name > 30 characters.
Backport of 82bb4e684f from master
2017-03-18 08:48:17 -04:00
Mariusz Felisiak 1ed4dab20f [1.11.x] Fixed #27822 -- Replaced deprecated cx_Oracle types in DatabaseIntrospection.data_types_reverse.
Backport of 1b96dbdad0 from master
2017-03-15 09:05:53 -04:00
Mads Jensen c654ead898
[1.11.x] Used constant instead of hard-coded value for max index name length
Refs #26709

Backport of e7033e00f8 from master
2017-03-14 15:55:07 +01:00
Mariusz Felisiak 9924c8a8b0 [1.11.x] 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.

Backport of 75503a823f from master
2017-03-10 23:07:50 +01:00
Matthew Schinckel 2864bb3ba6 [1.11.x] 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.

Backport of f48bc7c3db from master
2017-03-01 08:21:12 -05:00
Tim Graham 3a3145bfcd [1.11.x] Refs #27843 -- Fixed 'invalid escape sequence' warning in truncate_name().
Backport of 82026d61a3 from master
2017-02-27 09:31:06 -05:00
Vytis Banaitis d03153e3b0 [1.11.x] Fixed #27856 -- Improved accuracy of date subtraction on PostgreSQL.
Accuracy was incorrect when dates differ by a month or more.

Backport of 4045fd56cb from master
2017-02-21 12:49:31 -05:00
Alexey Rogachev 447c6802f0 [1.11.x] Fixed typo in DurationField's docstring.
Backport of c743af82cf from master
2017-02-20 08:45:01 -05:00
Mariusz Felisiak 87775b64cd [1.11.x] Fixed #27843 -- Fixed truncate_name() when the name contains a username.
Backport of b935190572 from master
2017-02-17 09:44:36 -05:00
Vytis Banaitis eedf276ed1 [1.11.x] Fixed #27828 -- Fixed a crash when subtracting Integer/DurationField from DateField on Oracle/PostgreSQL.
Backport of d5088f838d from master
2017-02-16 12:35:40 -05:00
Tim Graham 2f6cdc09c4 [1.11.x] Fixed #27135 -- Made index introspection return Index.suffix.
Backport of b008f7cc56 from master
2017-02-15 21:07:53 -05:00
Tim Graham eeb28f4751 [1.11.x] 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.

Backport of 0595bca221 from master
2017-02-11 06:40:30 -05:00
ClairePhila 4101b57b19 [1.11.x] Refs #27148 -- Fixed UUIDField.to_python(None) crash.
Regression in 2f9861d823.

Backport of d26413113c from master
2017-02-10 14:34:14 -05:00
Lex Berezhny d43f847847 [1.11.x] Fixed #27800 -- Fixed QuerySet.annotate(Length(...)).distinct() crash.
Backport of ac5f886c56 from master
2017-01-31 18:46:07 -05:00
Tim Graham e2b19e70c7 [1.11.x] Fixed typo in django/db/migrations/operations/special.py. 2017-01-31 08:05:15 -05:00
Shai Berger 437e0ba533 [1.11.x] Fixed #25192 -- Fixed squashmigrations crash with RunPython.noop on Python 2.
Thanks Adam Johnson for review.
2017-01-31 08:02:18 -05:00
Tim Graham ec0af19f4c [1.11.x] Bumped MySQLdb version requirement to 1.2.3.
Older versions don't support Python 2.7.

Partial backport of 2d96c027f5 from master
2017-01-25 10:31:24 -05:00
Mads Jensen c94cb4f865 [1.11.x] Removed unused variables that are overwritten.
Backport of ebf34c3cdc from master
2017-01-25 09:15:36 -05:00
james mike dupont b7621bbe80 [1.11.x] Fixed spelling mistakes in code and comments.
Backport of 7d20094996 from master
2017-01-19 08:20:15 -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