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
Tim Graham
0083a4c8e9
Refs #18974 -- Deprecated @models.permalink() decorator.
2016-10-04 14:39:49 -04:00
François Freitag
8ac115c730
Fixed #27193 -- Preserved ordering in select_for_update subqueries.
2016-10-04 10:46:29 -04:00
François Freitag
1db1f74617
Refs #27118 -- Reallowed using pk in QuerySet.get/update_or_create().
2016-10-04 10:10:39 -04:00
Simon Charette
040bd7c938
Fixed #27279 -- Fixed a migration performance regression related to RenameModel operations.
...
Thanks Trac alias mtomiyoshi for the report, Marten Kenbeek for the initial
patch and Tim for the review.
2016-10-04 08:35:15 -04:00
Mariusz Felisiak
6e4e0f4ce4
Fixed #26541 -- Allowed MySQL transaction detection to work without table creation.
2016-10-01 10:01:44 -04:00
Tim Graham
9819676676
Updated links to the current version of MySQL docs.
2016-09-30 09:14:17 -04:00
Tim Graham
a44fc008c4
Fixed #27217 -- Fixed crash in CreateModel optimization with models that use mixins.
...
Thanks Simon Charette for review.
2016-09-28 10:04:52 -04:00
Zapelini
62543260dd
Fixed #27282 -- Allowed using an integer DATABASES['PORT'] for Oracle.
2016-09-27 15:01:30 -04:00
Mariusz Felisiak
14986a0b9d
Fixed #27268 -- Restored an invalid related field lookup error message in QuerySet filtering.
2016-09-27 15:00:36 -04:00
Tim Graham
419b6ec7d0
Removed unused branch in SQLCompiler.as_subquery_condition().
...
Unused since dcdc579d16
.
2016-09-27 09:58:53 -04:00
Adam Chainz
b29c6c96c7
Removed missing name in django.db __all__.
...
'backend' hasn't existed since 051c666aca
.
2016-09-26 19:04:18 -04:00
Tim Graham
c47f8a9d4d
Removed obsolete lines in DeferredAttribute.__get__().
...
Obsolete as of c21e86ab9e
.
2016-09-26 18:47:07 -04:00
Adam Chainz
85f2bba7eb
Removed DatabaseError and IntegrityError declarations from database backends.
...
Unused since 11ee9746a0
.
2016-09-26 18:31:41 -04:00
François Freitag
a5e13a0b92
Fixed #27118 -- Made QuerySet.get_or_create()/update_or_create() error for a non-field in their arguments.
2016-09-24 20:16:16 -04:00
Tim Graham
5d55a26019
Removed unused FieldGetDbPrepValueMixin.get_prep_lookup_value().
...
Unused since its introduction in 4f138fe5a4
.
2016-09-24 17:30:43 -04:00
Tim Graham
f4bde7d9a1
Removed unused Prefetch.get_current_prefetch_through().
...
Unused since its introduction in f51c1f5900
.
2016-09-23 17:11:15 -04:00
Simon Charette
658f1e81a7
Removed unnecessary casting when using builtin lookups on PostgreSQL.
2016-09-22 22:19:37 -04:00
Jani Tiainen
7a2c27112d
Fixed #27159 -- Prevented pickling a query with an __in=inner_qs lookup from evaluating inner_qs.
2016-09-22 19:59:11 -04:00
Dmitry Medvinsky
1a9f6db5ff
Fixed #27219 -- Changed cx_Oracle client encoding to AL32UTF8 to allow 4-byte characters.
2016-09-19 20:19:57 -04:00
akki
358c6f21f8
Fixed #27165 -- Removed unnecessary CreateModel(... 'indexes': []) in migrations.
2016-09-19 10:17:16 -04:00
Tim Graham
8119b679eb
Refs #27025 -- Fixed "invalid escape sequence" warnings in Python 3.6.
...
http://bugs.python.org/issue27364
2016-09-17 15:44:06 -04:00
François Freitag
631ef6b272
Made FieldError/FieldDoesNotExist messages uniform across Python versions.
...
Removed possible u'' prefixes on Python 2.
2016-09-17 09:29:14 -04:00
Chris Lamb
9027e6c8a3
Fixed #27235 -- Removed some usage of mutable default arguments.
2016-09-16 15:48:08 -04:00