Will Koster
9899347641
Fixed #26638 -- Allowed callable arguments for QuerySet.get_or_create()/update_or_create() defaults.
2016-06-03 10:00:53 -04:00
Alex Hill
08014fe75b
Fixed #26686 -- Fixed crash when registering model signals with abstract senders.
2016-06-02 14:34:01 -04:00
Simon Charette
53a5fb3cc0
Fixed #26676 -- Prevented prefetching to_attr from caching its result in through attr.
...
Thanks Ursidours for the report.
2016-05-31 14:32:58 -04:00
Vytis Banaitis
f1e408ff40
Fixed #25044 -- Fixed migrations for renaming ManyToManyField's through model.
2016-05-30 10:17:45 -04:00
Tim Graham
a4c20ae85b
Refs #24227 -- Fixed crash of ManyToManyField.value_from_object() on unsaved model instances.
...
This behavior was removed in 67d984413c
but is needed to prevent a crash in formtools.
2016-05-28 15:41:47 -04:00
Alex Hill
ff6c6feae1
Fixed #26642 -- Made ModelSignal.disconnect() work with lazy references.
2016-05-27 17:45:08 -04:00
Simon Charette
36d36818a3
Fixed #26647 -- Included the state of all applied migrations when migrating forward.
...
Thanks Jasper Maes for the detailed report.
2016-05-26 13:30:10 -04:00
Alex Hill
779bb82f51
Fixed #26421 -- Refactored ModelSignal to use Apps.lazy_model_operation()
2016-05-19 21:33:36 -04:00
Alex Hill
2ff7ef15b0
Refs #26421 -- Refactored Apps.lazy_model_operation() for better checks and tests
2016-05-19 21:33:36 -04:00
Tim Graham
546649f2d6
Fixed some newlines in imports per isort.
2016-05-19 11:05:44 -04:00
darius BERNARD
a7ad473ad2
Fixed #26515 -- Fixed Query.trim_joins() for nested ForeignObjects.
2016-05-19 09:56:24 -04:00
Marti Raudsepp
b9ae662c97
Fixed #26620 -- Made Model.refresh_from_db() fail when passed unknown kwargs.
2016-05-18 09:27:23 -04:00
Barthelemy Dagenais
a5c8072ab1
Fixed #26627 -- Fixed on_commit callbacks execution order when callbacks make transactions.
2016-05-18 09:09:48 -04:00
Josh Smeaton
2a4af0ea43
Fixed #25774 -- Refactor datetime expressions into public API
2016-05-18 20:14:58 +10:00
Josh Smeaton
77b73e79a4
Refs #25774 -- Made Oracle truncate microseconds if USE_TZ=False.
...
The tests for this change are in the fix for #25774 .
2016-05-18 20:14:58 +10:00
Philip Liberato
3630b49b55
Fixed #26613 -- Made sqlite3 optional in SchemaEditor.quote_value().
2016-05-17 21:43:37 -04:00
boaz85@gmail.com
5f23f904af
Fixed #14415 -- Used the test database name in BaseDatabaseCreation.test_db_signature().
2016-05-17 21:35:36 -04:00
Loïc Bistuer
ed0ff913c6
Fixed #10506 , #13793 , #14891 , #25201 -- Introduced new APIs to specify models' default and base managers.
...
This deprecates use_for_related_fields.
Old API:
class CustomManager(models.Model):
use_for_related_fields = True
class Model(models.Model):
custom_manager = CustomManager()
New API:
class Model(models.Model):
custom_manager = CustomManager()
class Meta:
base_manager_name = 'custom_manager'
Refs #20932 , #25897 .
Thanks Carl Meyer for the guidance throughout this work.
Thanks Tim Graham for writing the docs.
2016-05-17 12:07:22 +07:00
Loïc Bistuer
3a47d42fa3
Fixed #20932 , #25897 -- Streamlined manager inheritance.
2016-05-17 02:29:22 +07:00
Aron Podrigal
85ef98dc6e
Fixed #24305 -- Allowed overriding fields on abstract models.
...
Fields inherited from abstract base classes may be overridden like
any other Python attribute. Inheriting from multiple models/classes
with the same attribute name will follow the MRO.
2016-05-16 07:32:21 -04:00
Simon Charette
f937c9ec97
Fixed #24100 -- Made the migration signals dispatch its plan and apps.
...
Thanks Markus for your contribution and Tim for your review.
2016-05-15 19:51:15 -04:00
Tim Graham
cb4be0262a
Removed unused code in AlterField.database_forwards().
...
This code added in 107c9f5453
isn't
used after 4ce7a6bc84
.
2016-05-14 06:43:40 -04:00
Tim Graham
3642835bde
Removed redundant code in QuerySet._batched_insert().
2016-05-14 06:42:50 -04:00
Simon Charette
c0118ff80b
Refs #24201 -- Ignored order_with_respect_to private fields in migrations.
...
Thanks Tim for the review.
2016-05-13 15:43:23 -04:00
Tim Graham
67d984413c
Refs #24227 -- Removed ManyToManyField special casing in model_to_dict().
2016-05-11 10:12:59 -04:00
Raphael Gaschignard
8f6a1a1551
Fixed #26429 -- Added a timestamp to merge migration names.
...
This reduces the possibility of a naming conflict, especially after
squashing migrations.
2016-05-11 08:19:19 -04:00
Iacopo Spalletti
49c57f8565
Fixed #25005 -- Made date and time fields with auto_now/auto_now_add use effective default.
...
Thanks to Andriy Sokolovskiy for initial patch.
2016-05-09 07:48:40 -04:00
Ville Skyttä
413f3bb5c8
Replaced `six.callable` with `callable`.
2016-05-08 18:07:15 -04:00
Jarek Glowacki
509379a161
Fixed #25945 , #26292 -- Refactored MigrationLoader.build_graph()
2016-05-08 13:53:26 +02:00
Markus Holtermann
deeffde84a
Fixed #26593 -- Leveraged deferrable_sql() in SchemaEditor
2016-05-07 01:21:00 +02:00
Markus Holtermann
3b383085fb
Fixed #26555 -- Gave deconstructible objects a higher priority during serialization
2016-05-04 22:39:19 +02:00
Claude Paroz
388bb5bd9a
Fixed #22936 -- Obsoleted Field.get_prep_lookup()/get_db_prep_lookup()
...
Thanks Tim Graham for completing the initial patch.
2016-05-04 20:02:01 +02:00
Ville Skyttä
575a9a791e
Normalized "an SQL" spelling.
2016-05-03 19:30:48 -04:00
Simon Charette
7ec330eeb9
Refs #26565 -- Errored nicely when using Prefetch with a values() queryset.
...
Thanks Maxime Lorant for the report and Anssi for the suggestion.
2016-05-03 09:28:31 -04:00
Michal Petrucha
8a47ba679d
Refs #16508 -- Made Model.__init__() aware of virtual fields.
...
It's no longer necessary for GenericForeignKey (and any other virtual fields)
to intercept the field's values using the pre_init signal.
2016-05-03 09:06:26 -04:00
Tim Graham
eab5df12b6
Refs #22936 -- Moved more of Field.get_db_prep_lookup() to lookups.
2016-05-02 07:58:24 -04:00
Cristiano
914c72be2a
Fixed #26058 -- Delegated os.path bits of FileField's filename generation to the Storage.
2016-04-30 17:22:40 -04:00
Anssi Kääriäinen
7f51876f99
Fixed #26207 -- Replaced dynamic classes with non-data descriptors for deferred instance loading.
2016-04-29 13:06:32 -04:00
Joshua Phillips
4681d65048
Fixed #26557 -- Converted empty strings to None when saving GenericIPAddressField.
2016-04-29 10:11:49 -04:00
Simon Charette
f951bb78cb
Refs #26521 -- Adjusted CreateModel bases validation to account for mixins.
...
Thanks Collin for the report.
2016-04-28 18:20:48 -04:00
Simon Charette
a877a2f83d
Refs #26521 -- Added the duplicated value to CreateModel validation messages.
...
Thanks Tim for the suggestion.
2016-04-27 16:17:22 -04:00
James Robert
417e083e55
Fixed #26521 -- Validated CreateModel bases, fields and managers for duplicates.
2016-04-27 12:43:56 -04:00
Tim Graham
1ba0b22a7a
Refs #22936 -- Removed unused code in Field.get_db_prep_lookup().
2016-04-25 08:31:32 -04:00
Tim Graham
b454e2cbc9
Removed unused Q.clone().
...
Unused since afe0bb7b13
.
2016-04-25 08:31:32 -04:00
Tim Graham
901dc90db0
Removed unused/untested Field.get_choices_default()/value_to_string() methods.
2016-04-25 08:05:27 -04:00
Tim Graham
a755e0657e
Removed unused BaseExpression.refs_aggregate().
...
Unused since afe0bb7b13
.
2016-04-22 13:04:13 -04:00
Tim Graham
87338198e9
Fixed #26320 -- Deprecated implicit OneToOnField parent_link.
2016-04-22 12:59:41 -04:00
Tim Graham
6b0a25d9e2
Removed unused ForeignObject.attnames/get_defaults().
2016-04-22 10:00:50 -04:00
Tim Graham
2da7f5afcf
Removed unused ForeignObjectRel.get_choices() limit_to_currently_related argument.
...
Unused since its introduction in dc334a2ba8
.
2016-04-22 08:45:41 -04:00
Marc Tamlyn
2d877da855
Refs #3254 -- Added full text search to contrib.postgres.
...
Adds a reasonably feature complete implementation of full text search
using the built in PostgreSQL engine. It uses public APIs from
Expression and Lookup.
With thanks to Tim Graham, Simon Charettes, Josh Smeaton, Mikey Ariel
and many others for their advice and review. Particular thanks also go
to the supporters of the contrib.postgres kickstarter.
2016-04-22 10:44:37 +01:00
Loïc Bistuer
a885bca1df
Fixed #26528 -- Allowed any iterable (e.g. tuple) as validators kwarg for form/model fields.
2016-04-22 09:38:47 +07:00
Matthew Schinckel
5402f3ab09
Fixed #26475 -- Added functools.partial() support to migrations autodetector.
2016-04-19 10:17:11 -04:00
Lukasz Wiecek
d3c87a2425
Fixed #26498 -- Fixed TimeField microseconds round-tripping on MySQL and SQLite.
...
Thanks adamchainz for the report and review.
2016-04-18 09:39:46 -04:00
Tim Graham
0456a8b9e6
Fixed #26486 -- Fixed a select_related() + defer() MTI edge case.
2016-04-13 10:32:17 -04:00
Michal Petrucha
c339a5a6f7
Refs #16508 -- Renamed the current "virtual" fields to "private".
...
The only reason why GenericForeignKey and GenericRelation are stored
separately inside _meta is that they need to be cloned for every model
subclass, but that's not true for any other virtual field. Actually,
it's only true for GenericRelation.
2016-04-13 10:10:53 -04:00
Tim Graham
1c30a6473d
Refs #22936 -- Moved IntegerField.get_prep_lookup() logic to lookups.
2016-04-12 10:14:41 -04:00
Claude Paroz
f9a2a7db17
Fixed #26351 -- Added MySQL check to warn about strict mode option
...
Thanks Adam Chainz for the initial implementation in django-mysql.
Thanks Adam Chainz, Tim Graham, and Shai Berger for the reviews.
2016-04-08 20:34:16 +02:00
Claude Paroz
0d3c616fbb
Refs #26351 -- Added check hook to support database-related checks
...
Thanks Tim Graham and Shai Berger for the reviews.
2016-04-08 20:28:00 +02:00
Tim Graham
df8d8d4292
Fixed E128 flake8 warnings in django/.
2016-04-08 09:51:06 -04:00
Simon Charette
a6074e8908
Fixed #26458 -- Based Avg's default output_field resolution on its source field type.
...
Thanks Tim for the review and Josh for the input.
2016-04-05 23:48:08 -04:00
Attila Tovt
02ae5fd31a
Fixed #25850 -- Made migrate/makemigrations error on inconsistent history.
2016-04-05 08:52:08 -04:00
Tim Graham
6448873197
Fixed E402 flake8 warnings.
2016-04-04 17:14:27 -04:00
Tim Graham
2cd2d18851
Fixed W503 flake8 warnings.
2016-04-04 17:14:26 -04:00
Susan Tan
b0803d64c4
Fixed #26075 -- Added clearer wording for one-off values in makemigrations
2016-04-03 17:12:55 +02:00
Markus Holtermann
103d4e1d65
Fixed #26441 -- Added model Field.db_check() method
...
Thanks Common Code for financing the work on this commit.
2016-04-03 09:56:59 +02:00
Iacopo Spalletti
394755b8d9
Fixed #26443 -- Corrected timezone.now in MigrationQuestioner prompt
2016-04-03 01:33:06 +02:00
Akshesh
49f95cc0a0
Fixed #11560 -- Allowed proxy model multiple-inheritance from the same concrete base model.
2016-03-30 13:06:27 -04:00
Alex Hill
4b2cf1cd27
Fixed #26384 -- Fixed renaming the PK on a model with a self-referential FK on SQLite.
2016-03-29 13:25:09 -04:00
Claude Paroz
03b6947728
Fixed #24932 -- Added Cast database function.
...
Thanks Ian Foote for the initial patch.
2016-03-29 08:14:33 -04:00
Kai Feldhoff
5336158990
Fixed #25759 -- Added keyword arguments to customize Expressions' as_sql().
2016-03-29 08:09:58 -04:00
Simon Charette
67cf5efa31
Fixed #26413 -- Fixed a regression with abstract model inheritance and explicit parent links.
...
Thanks Trac alias trkjgrdg for the report and Tim for investigation and review.
2016-03-28 21:11:37 -04:00
Tim Graham
1c8c0837c6
Sorted single letter imports per the latest version of isort.
2016-03-28 11:45:31 -04:00
Claude Paroz
fc01c84bad
Avoided need to import model fields in models/functions.py.
2016-03-28 10:59:30 -04:00
Tim Graham
fb84e877ce
Normalized Func.as_sqlite() signature.
2016-03-28 10:59:12 -04:00
Alexey Kotlyarov
a52a531a8b
Fixed #26398 -- Made FieldFile.open() respect its mode argument.
2016-03-23 10:05:26 -04:00
Berker Peksag
157d7f1f1d
Fixed #25388 -- Added an option to allow disabling of migrations during test database creation
2016-03-23 08:21:30 +08:00
Kai Feldhoff
baa8b0ec39
Refs #25759 -- Fixed some Funcs to work if different database backends are used.
2016-03-21 20:20:29 -04:00
Jason Parrott
4c1c93032f
Fixed #26373 -- Fixed reverse lookup crash with a ForeignKey to_field in a subquery.
2016-03-19 17:54:29 -04:00
Claude Paroz
983c158da7
Refs #24227 -- Replaced M2M isinstance checks by field.many_to_many
...
Thanks Markus Holtermann, Collin Anderson and Tim Graham for the reviews.
2016-03-19 09:24:27 +01:00
Andrew Godwin
2b3a941457
Merge pull request #6310 from apollo13/informix
...
Pass type to sql_alter_column*.
2016-03-18 19:47:15 -03:00
Florian Apolloner
37cde8667e
Pass type to sql_alter_column*.
...
This helps databases which need the database type when changing the default
(Just like MySQL needs it for changing null…)
2016-03-18 23:11:02 +01:00
Tim Graham
f15f4b8bb6
Refs #26367 -- Removed obsolete _size cache on FieldField.
...
The _size attribute is used in File.size but FieldFile overrides it.
2016-03-17 10:25:17 -04:00
Markus Holtermann
1cb65b8a77
Fixed #26157 #25321 -- Added sql/params to extra context of schema logger
...
Thanks Akshesh Doshi for the initial patch and Tim Graham for the review
2016-03-15 17:45:58 +11:00
Claude Paroz
204e00c0c5
Fixed #26140 -- Suppressed MySQL warning when inserting binary content
...
Thanks Tim Graham for the review.
2016-03-14 18:08:13 +01:00
Noenglish Professorbut
f8d20da047
Fixed a few docstring typos.
2016-03-12 08:45:06 -05:00
Tim Graham
4f0cd0fd16
Fixed #26324 -- Fixed DurationField with fractional seconds on SQLite.
2016-03-10 12:18:29 -05:00
Jarek Glowacki
34c56687ae
Fixed #26342 -- Prevented unpacking when repr a NodeNotFoundError
2016-03-10 17:27:35 +11:00
Tim Graham
359be4460e
Refs #19527 -- Fixed SQL compiler regression causing Oracle failure.
2016-03-05 14:02:35 -05:00
Akshesh
b886f166b3
Fixed #26316 -- Factored duplicated code in model/field migration operations.
2016-03-03 18:24:36 -05:00
Simon Charette
c92123cc1d
Fixed #26226 -- Made related managers honor the queryset used for prefetching their results.
...
Thanks Loïc for the suggested improvements and Tim for the review.
2016-03-02 16:10:18 -05:00
Marc Tamlyn
8ddc79a799
Fixed #26285 -- Deprecated the MySQL-specific __search lookup.
2016-03-02 14:41:56 -05:00
acrefoot
04240b2365
Refs #19527 -- Allowed QuerySet.bulk_create() to set the primary key of its objects.
...
PostgreSQL support only.
Thanks Vladislav Manchev and alesasnouski for working on the patch.
2016-03-02 14:29:09 -05:00
Matthew Schinckel
60633ef3de
Fixed #26304 -- Ignored unmanaged through model in table introspection.
2016-03-02 13:54:27 -05:00
Simon Charette
0223e213dd
Fixed #26186 -- Documented how app relative relationships of abstract models behave.
...
This partially reverts commit bc7d201bdb
.
Thanks Tim for the review.
Refs #25858 .
2016-02-29 22:07:05 -05:00
Adam Chainz
6a383f773a
Removed unused 'Between' lookup.
...
It was added in 20bab2cf9d
and stopped being
used for `Range` in 00aa562884
when
`bilateral` was added to `Transform`.
2016-02-29 08:00:04 -05:00
chenesan
b84f5ab4ec
Fixed #26230 -- Made default_related_name affect related_query_name.
2016-02-27 08:48:32 -05:00
Attila Tovt
5e2c4d7afb
Fixed #26264 -- Fixed prefetch_related() crashes with values_list(flat=True)
2016-02-26 19:26:15 -05:00
Adam Chainz
ef33bc2d4d
Fixed #25279 -- Made prefetch_related_objects() public.
2016-02-26 14:55:01 -05:00
Simon Charette
766afc22a1
Fixed #24793 -- Unified temporal difference support.
2016-02-26 12:25:12 -05:00
zshimanchik
65aa94200b
Fixed #24653 -- Fixed MySQL database introspection when using read_default_file.
2016-02-26 12:02:13 -05:00
Edwar Baron
eb44172760
Fixed #25811 -- Added a helpful error when making _in queries across different databases.
2016-02-26 07:31:56 -05:00
Yoong Kang Lim
4b1529e2cb
Fixed #26151 -- Refactored MigrationWriter.serialize()
...
Thanks Markus Holtermann for review.
2016-02-25 14:01:06 -05:00
Scott Sexton
fc584f0685
Fixed #26117 -- Consulted database routers in initial migration detection.
...
Thanks Simon Charette for help.
2016-02-25 09:56:00 -05:00
Tim Graham
70d3f81ca4
Fixed #26233 -- Fixed invalid reSt in models.Q docstring.
2016-02-18 08:45:55 -05:00
Akshesh
fdccc02576
Fixed #26219 -- Fixed crash when filtering by Decimal in RawQuery.
2016-02-17 13:56:42 -05:00
Tim Graham
004ba0f99e
Removed unneeded hint=None/obj=None in system check messages.
2016-02-12 13:01:25 -05:00
Markus Holtermann
18afd50a2b
Updated allow_migrate() signature in check framework tests
2016-02-12 14:31:27 +11:00
Anssi Kääriäinen
46ecfb9b3a
Fixed #26196 -- Made sure __in lookups use to_field as default.
...
Thanks Simon Charette for the test.
2016-02-11 11:09:08 -05:00
ZachLiuGIS
04e13c8913
Fixed #26179 -- Removed null assignment check for non-nullable foreign key fields.
2016-02-11 10:07:39 -05:00
Anssi Kääriäinen
353aecbf8c
Fixed #26153 -- Reallowed Q-objects in ForeignObject.get_extra_descriptor_filter().
2016-02-11 08:59:43 -05:00
Brobin
dca8b916ff
Fixed #26154 -- Deprecated CommaSeparatedIntegerField
2016-02-10 17:57:43 -05:00
Simon Charette
a325fb1f9b
Fixed #26162 -- Checked query name clashes of hidden relationships.
...
Although reverse accessor clashes should be skipped query name can't be hidden.
Thanks to Ian Foote and Tim Graham for the review.
2016-02-08 09:59:27 -05:00
Tim Graham
10a162809f
Refs #24007 -- Removed an apps.populate() call in model unpickling that can cause deadlocks.
2016-02-08 08:28:48 -05:00
Tim Graham
db9f21f0ad
Fixed typo in django/db/migrations/state.py.
2016-02-08 07:41:25 -05:00
Tim Graham
97eb3356b2
Fixed #26177 -- Fixed a PostgreSQL crash with TIME_ZONE=None and USE_TZ=False.
2016-02-08 07:21:54 -05:00
Pankrat
f91a04621e
Fixed #25833 -- Added support for non-atomic migrations.
...
Added the Migration.atomic attribute which can be set to False
for non-atomic migrations.
2016-02-05 09:09:05 -05:00
James Pulec
f05722a08a
Fixed #25354 -- Added class/app_label interpolation for related_query_name.
2016-01-28 11:10:47 -05:00
François Freitag
bdbe50a491
Fixed #25546 -- Prevented duplicate queries with nested prefetch_related().
2016-01-26 07:20:13 -05:00
Simon Charette
4dcaa5871b
Fixed #26135 -- Adjusted the migration questioner's handling of disabled apps.
...
This was causing an issue when calling the `migrate` command in a test case with
the `available_apps` attribute pointing to an application with migrations
disabled using the `MIGRATION_MODULES` setting.
Thanks to Tim Graham for the review.
Refs #24919
2016-01-25 21:38:36 -05:00
userimack
60586dd737
Fixed #26125 -- Fixed E731 flake warnings.
2016-01-25 14:23:43 -05:00
Simon Charette
729e0b086d
Fixed #24109 -- Allowed RunSQL and RunPython operations to be elided.
...
Thanks to Markus Holtermann and Tim Graham for their review.
2016-01-23 14:19:03 -05:00
Simon Charette
49f4c9f4c6
Fixed #26064 -- Moved operation reduction logic to their own class.
...
Thanks to Markus Holtermann and Tim Graham for their review.
2016-01-23 14:19:02 -05:00
seungkwon
5925e20c37
Fixed typo in django/db/backends/sqlite3/operations.py.
2016-01-23 07:05:47 -05:00
Joshua Phillips
16baec5c8a
Fixed #25910 -- Rejected read-only property names in model constructors.
2016-01-22 13:27:11 -05:00
Tim Graham
4dc74371e3
Removed unused attributes of MySQL SchemaEditor.
2016-01-22 12:46:27 -05:00
Aymeric Augustin
f91b5a7e4b
Fixed #26063 -- Crash when passing > 2000 params.
...
If SQLITE_MAX_VARIABLE_NUMBER (default = 999) is changed at compile time
to be greater than SQLITE_MAX_COLUMN (default = 2000), which Debian does
by setting the former to 250000, Django raised an exception on queries
containing more than 2000 parameters when DEBUG = True.
2016-01-21 10:47:15 +01:00
Anssi Kääriäinen
ee596888e1
Fixed #26092 -- Fixed QuerySet.order_by() regression with an M2M through model.
2016-01-20 19:13:05 -05:00
pp
b34ff66e5b
Added missing period to "etc.".
2016-01-11 18:05:15 -05:00
Simon Charette
bc7d201bdb
Fixed #25858 -- Bound abstract model application relative relationships.
...
Thanks to Karl Hobley for the report and Markus, Shai, Aymeric for their input
and Tim for the review.
2016-01-11 12:23:23 -05:00
Curtis Maloney
3792e291e6
Removed use of locals for print formatting in Oracle backend.
2016-01-11 07:13:24 -05:00
Tim Graham
56aaae58a7
Fixed #26034 -- Fixed incorrect index handling on PostgreSQL on Char/TextField with unique=True and db_index=True.
...
Thanks Simon Charette for review.
2016-01-08 12:47:05 -05:00
Anderson Resende
b5f8c81ce1
Fixed #26026 -- Fixed isinstance crash comparing EmptyQuerySet to non-QuerySet.
2016-01-07 10:57:05 -05:00
Amos Onn
bd3c2900fc
Fixed #25892 -- Optimized SeparateDatabaseAndState.database_backwards().
...
Now intermediate states in the database_backwards are cached, similar to
the executor's migrate() (or _migrate_all_backwards()). This makes the
migration run much faster (O(n) instead of O(n^2) over number of
database_operations).
2016-01-07 08:13:56 -05:00
Simon Charette
7bb373e309
Refs #25746 -- Added a test utility to isolate inlined model registration.
...
Thanks to Tim for the review.
2016-01-06 20:00:07 -05:00
varunnaganathan
3eba9638ee
Fixed #25316 -- Fixed a crash with order_by() and values() after annotate().
2016-01-02 07:06:54 -05:00
Marten Kenbeek
16411b8400
Fixed #26013 -- Moved django.core.urlresolvers to django.urls.
...
Thanks to Tim Graham for the review.
2015-12-31 14:21:29 -05:00
Ville Skyttä
e6ca15c13f
Passed logging message parameters as arguments instead of interpolating them.
2015-12-26 18:35:42 -05:00
Bryan Marty
62ca2dea04
Fixed #8065 -- Made id_list an optional argument for QuerySet.in_bulk().
2015-12-26 17:57:19 -05:00
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -05:00
Varun Sharma
692d055890
Fixed #25984 -- Corrected RuntimeError message in ModelBase.__new__().
2015-12-24 16:44:58 -05:00
Chris Lamb
77b8d8cb6d
Discouraged use of /tmp with predictable names.
...
The use of predictable filenames in /tmp often leads to symlink attacks
so remove the most obvious use of them in the docs.
2015-12-24 09:54:33 -05:00
Luis San Pablo
a856555df2
Fixed #25981 -- Added need to update migrations to on_delete deprecation warning.
2015-12-24 08:08:22 -05:00
Tomo Otsuka
8b6974a685
Fixed #25972 -- Restored support for the isnull lookup with ForeignObject.
2015-12-24 07:33:55 -05:00
Tim Graham
fa9ce4e9a6
Fixed #25922 -- Fixed migrate --fake-initial detection of many-to-many tables.
2015-12-19 13:37:24 -05:00
Ian Foote
86eccdc8b6
Fixed #25544 -- Removed duplicate ids in prefetch_related() queries.
2015-12-17 19:08:30 -05:00
Sergey Fedoseev
ed1bcf0515
Refs #25894 -- Fixed evaluation of zero-length slices of QuerySet.values() on Oracle.
2015-12-17 17:07:10 -05:00
Simon Charette
c4e372aaf4
Fixed #25852 -- Made sure AlterModelManager forces a reload of its model state.
...
Thanks to Geoffrey Sechter and the Django NYC group for the report and Markus
for the review.
2015-12-15 12:22:59 -05:00
Stewart Park
b7fdd60d85
Fixed #24675 -- Skipped SQL_AUTO_IS_NULL query on MySQL if not needed.
2015-12-15 10:30:57 -05:00
Sergey Fedoseev
69b69f6d60
Fixed #25894 -- Fixed evaluation of zero-length slices of QuerySet.values().
2015-12-15 07:29:35 -05:00
Ed Bartosh
423b3afce4
Fixed #25939 -- Removed redundant transaction in QuerySet.update_or_create().
...
There is no need to wrap the save() call in transaction.atomic() as
it's already done down the call stack in Model.save_base().
2015-12-14 19:41:11 -05:00
Simon Charette
8035cee922
Fixed #25882 -- Prevented fast deletes matching no rows from crashing on MySQL.
...
Thanks to Trac aliases gerricom for the report, raphaelmerx for the
attempts to reproduce and Sergey Fedoseev and Tim for the review.
Refs #16891
2015-12-14 13:12:36 -05:00
Federico Frenguelli
3a36c80795
Fixed #25412 -- Fixed missing PostgreSQL index on Char/TextField when using AlterField.
...
Thanks to Emanuele Palazzetti for the help.
2015-12-10 16:12:51 -05:00
Amos Onn
542b7f6c50
Fixed #25896 -- Fixed state bug in SeparateDatabaseAndState.database_backwards().
2015-12-09 11:06:57 -05:00
Attila Tovt
6f229048dd
Fixed #25547 -- Made Model.refresh_from_db() update FileField's instance.
2015-12-05 17:23:13 -05:00
Alexander Sosnovskiy
b61eab18f7
Fixed #13774 -- Added models.Field.rel_db_type().
2015-12-04 07:55:41 -05:00
Raphaël Hertzog
9f4e031bd3
Fixed #25761 -- Added __cause__.__traceback__ to reraised exceptions.
...
When Django reraises an exception, it sets the __cause__ attribute even
in Python 2, mimicking Python's 3 behavior for "raise Foo from Bar".
However, Python 3 also ensures that all exceptions have a __traceback__
attribute and thus the "traceback2" Python 2 module (backport of Python
3's "traceback" module) relies on the fact that whenever you have a
__cause__ attribute, the recorded exception also has a __traceback__
attribute.
This is breaking testtools which is using traceback2 (see
https://github.com/testing-cabal/testtools/issues/162 ).
This commit fixes this inconsistency by ensuring that Django sets
the __traceback__ attribute on any exception stored in a __cause__
attribute of a reraised exception.
2015-12-03 16:31:50 -05:00
Josh Soref
93452a70e8
Fixed many spelling mistakes in code, comments, and docs.
2015-12-03 12:48:24 -05:00
Simon Charette
cc2ca9c550
Fixed #25807 -- Instructed the migration writer about lazy objects.
...
Thanks to Trac alias mrgaolei for the report, Baptiste for the confirmation
and Tim for the review.
2015-11-26 11:14:47 -05:00
George Marshall
710e11d076
Fixed #25767 -- Fixed data truncation possibility with Positive(Small)IntegerField on MySQL.
2015-11-24 11:09:15 -05:00
Claude Paroz
68554d1676
Fixed #13427 -- Made auto-m2m verbose names translatable
2015-11-21 18:09:57 +01:00
Tim Graham
54e2e688e1
Fixed #25715 -- Fixed Model.refresh_from_db() with ForeignKey w/on_delete=SET_NULL.
2015-11-21 10:34:01 -05:00
Ana Vojnovic
73a6ab6382
Fixed #25551 -- Fixed migration operations ordering when adding fields and a unique_together constraint.
2015-11-20 12:20:41 -05:00
Andrei Fokau
998894e1b9
Fixed #25764 -- Added support for serialization of enum.Enum in migrations.
...
Thanks Tim Graham for the review.
2015-11-19 17:21:12 -05:00
Dmitry Dygalo
92eced62cd
Simplified lists creation in three places.
2015-11-17 07:58:49 -05:00
Patryk Zawadzki
7628f87e2b
Fixed #25750 -- Made Options._expire_cache() faster
...
Avoided unnecessary list operations and delattr() calls that result
in an exception being raised as it causes call frame reconstruction
which is very costly, especially so in a function that is called
millions of times.
2015-11-14 16:43:46 -05:00
Tim Graham
abcdb237bb
Refs #25196 -- Fixed incorrect argument order in test database creation.
2015-11-13 11:29:35 -05:00
Simon Charette
c550beb0cc
Fixed #25723 -- Made related field checks lookup against their local apps.
2015-11-11 19:33:54 -05:00
Razzi Abuissa
c819780d3f
Removed gendered pronoun in a code comment.
2015-11-11 17:07:13 -05:00
Simon Charette
4a9c32f5ee
Refs #25693 -- Avoided redundant calls to get_fields() in `to_attr` validation.
2015-11-11 12:25:10 -05:00
Simon Charette
4cd5d846d4
Fixed #25730 -- Made Model.__str__() always return str instances.
...
Thanks to Kevin Turner for the report and Tim for the review.
2015-11-11 12:18:52 -05:00
Ian Foote
4608573788
Fixed #25693 -- Prevented data loss with Prefetch and ManyToManyField.
...
Thanks to Jamie Matthews for finding and explaining the bug.
2015-11-10 12:12:07 -05:00
Laura Feier
7862cbda86
Fixed #24576 -- Made deletion of related objects deterministic.
2015-11-09 15:04:48 -05:00
Dmitry Dygalo
917100eed7
Simplified dict initialization in two places.
2015-11-07 21:46:46 +01:00
Sergey Fedoseev
0a26121797
Refs #25629 -- Added `arity` class attribute to `Func` expressions
2015-11-02 20:09:21 +01:00
Tim Graham
c4af8eb366
Refs #25618 -- Removed detection of south migrations in loader.
...
It doesn't seem relevant for anyone upgrading to Django 1.10
and beyond.
2015-10-28 09:16:22 -04:00
Ian Foote
32ef48aa56
Fixed #25609 -- Fixed regression in related field nested lookup error.
2015-10-27 13:49:00 -04:00
Simon Charette
976bd519a8
Revert "Fixed #25417 -- Added a field check for invalid default values."
...
This reverts commit 71ebcb85b9
.
2015-10-27 11:02:35 -04:00
Tim Graham
9c5e272860
Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set.
2015-10-27 07:57:15 -04:00
Tim Graham
0b5d32faca
Fixed #25611 -- Standardized descriptor signatures.
2015-10-26 11:31:16 -04:00
Mariusz Felisiak
0f6d51e6a0
Fixed #25470 -- Avoided unnecessary, expensive DATETIME typecast on MySQL.
2015-10-21 19:24:19 -04:00
Simon Charette
2ee67f0373
Moved an inner function in db.migrations.state to avoid redefinition.
2015-10-19 20:15:13 -04:00
Simon Charette
63f0e2df2a
Refs #18012 -- Accounted for reverse proxy relations in migrations.
...
Thanks to Markus for the suggestion and Tim for the review.
2015-10-19 20:15:13 -04:00
Simon Charette
3db3ab71e9
Fixed #25563 -- Cached deferred models in their proxied model's _meta.apps.
...
Thanks to Andriy Sokolovskiy for the report and Tim Graham for the review.
2015-10-19 20:11:32 -04:00
Josh Smeaton
6c95b134e9
Fixed #25517 -- Made Concat function idempotent on SQLite.
2015-10-17 15:51:04 -04:00
Simon Charette
c1b6a8a98b
Fixed #25560 -- Made empty string related_name invalid.
...
Thanks to Ali Lotfi for the initial report and patch
and Tim Graham for the review.
2015-10-16 14:22:15 -04:00
Antoine Catton
b971c1cd78
Fixed #25506 -- Allowed filtering over a RawSQL annotation.
...
Co-Authored-By: Gavin Wahl <gwahl@fusionbox.com>
2015-10-14 11:13:58 -07:00
Tim Graham
c7aff31397
Refs #25535 -- Minor edits to ForeignObject check changes.
2015-10-14 05:21:08 -07:00
Antoine Catton
80dac8c33e
Fixed #25535 -- Made ForeignObject checks less strict.
...
Check that the foreign object `from_fields` are a subset of any unique
constraints on the foreign model.
2015-10-12 18:00:59 -04:00
Simon Charette
a82e21b0f9
Refs #18012 -- Removed the now unused proxied_children model option.
...
Thanks to Tim for the review.
2015-10-12 12:14:27 -04:00
Simon Charette
5b980897f2
Refs #18012 -- Made proxy and concrete model reverse fields consistent.
...
Prior to this change proxy models reverse fields didn't include the
reverse fields pointing to their concrete model.
2015-10-12 12:14:27 -04:00
Simon Charette
211486f3ab
Fixed #23076 , #25505 -- Fixed deletion of intermediate proxy models.
...
Thanks to James Murty for his work on an alternate patch.
2015-10-12 12:14:26 -04:00
Simon Charette
8bdfabed65
Refs #18012 -- Removed special casing for proxy models deletion.
...
This isn't required anymore now that reverse foreign keys
from proxy models are propagated to their concrete model.
2015-10-12 12:14:26 -04:00
Simon Charette
6c9f37ea9e
Fixed #18012 -- Propagated reverse foreign keys from proxy to concrete models.
...
Thanks to Anssi for the review.
2015-10-12 12:14:26 -04:00
Tim Graham
67732a9b18
Fixed #24687 -- Added select_related() validation for nested non-relational fields.
...
The removed test was added in the original select_related() validation
patch (45d4e43d2d
), but there doesn't
seem to be any reason for it.
Thanks Claude Paroz for help and review.
2015-10-10 09:48:50 -04:00
Tim Graham
7a5b7e35bf
Fixed #22705 -- Fixed QuerySet.bulk_create() on models without any fields on Oracle.
...
Fixed on other backends by 134ca4d438
.
Thanks Mariusz Felisiak for the solution.
2015-10-09 14:16:06 -04:00
Tim Graham
384ddbec1b
Fixed #14368 -- Allowed setting a reverse OneToOne relation to None.
2015-10-09 10:20:53 -04:00
Mariusz Felisiak
914167abf1
Fixed #25503 -- Fixed system check crash on ForeignKey to abstract model.
2015-10-06 19:22:37 -04:00
Tim Graham
e0837f2cb1
Fixed #25508 -- Modified QuerySet.__repr__() to disambiguate it from a list.
2015-10-06 12:38:34 -04:00
Riccardo Magliocchetti
3543fec3b7
Refs #12118 -- Allowed "mode=memory" in SQLite test database names.
2015-10-06 12:32:05 -04:00
Tim Graham
ea8e7fd989
Removed obsolete (since Python 2.3) __safe_for_unpickling__ attribute.
2015-10-05 08:07:27 -04:00
Tim Graham
9f6b704769
Fixed #21042 -- Allowed accessing FileDescriptor on the model class.
...
This is consistent with ability to reference other descriptors
on the model class (5ef0c03ae9
).
2015-10-01 15:19:39 -04:00
Mariusz Felisiak
a3a6def867
Fixed #25421 -- Fixed test --keepdb option on Oracle.
2015-09-26 19:51:15 -04:00
Ville Skyttä
afe777639c
Fixed #25196 -- Normalized database representations in test database messages.
...
Left over Oracle mostly as-is since it's more complicated.
2015-09-25 10:21:55 -04:00
Tim Graham
1f84721fac
Removed unused Aggregate.input_field.
...
Obsolete since 4a66a69239
.
2015-09-24 09:15:56 -04:00
Tim Graham
a780505f3a
Refs #14030 -- Removed more backwards compatiblity for old-style aggregates.
...
Per deprecation timeline.
2015-09-24 09:15:55 -04:00
Tim Graham
96317ad8de
Refs #21414 -- Removed Field.related per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
fd6a299cd0
Refs #14030 -- Removed backwards compatiblity for old-style aggregates.
...
Per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
1bb6ecf6d3
Refs #9893 -- Removed shims for lack of max_length support in file storage per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
3f50dc2be5
Removed SQLCompiler.__call__() per deprecation timeline.
2015-09-23 19:31:09 -04:00
Tim Graham
c64dd646f5
Refs #12663 -- Removed deprecated Model._meta methods.
2015-09-23 19:31:09 -04:00
Tim Graham
08ab262649
Removed SubfieldBase per deprecation timeline.
2015-09-23 19:31:09 -04:00
Tim Graham
4fd264b6f1
Refs #24351 -- Removed support for the old allow_migrate() signature per deprecation timeline.
2015-09-23 19:31:09 -04:00
Benjamin Wohlwend
de31423130
Fixed #25453 -- Reworded makemigration's ask_not_null_alteration suggestion.
2015-09-23 13:33:41 -04:00
Alex Hill
134ca4d438
Fixed #24509 -- Added Expression support to SQLInsertCompiler
2015-09-22 23:35:24 +10:00
Aymeric Augustin
91e9f1c972
Fixed #24921 -- set_autocommit(False) + ORM queries.
...
This commits lifts the restriction that the outermost atomic block must
be declared with savepoint=False. This restriction was overly cautious.
The logic that makes it safe not to create savepoints for inner blocks
also applies to the outermost block when autocommit is disabled and a
transaction is already active.
This makes it possible to use the ORM after set_autocommit(False).
Previously it didn't work because ORM write operations are protected
with atomic(savepoint=False).
2015-09-21 22:21:53 +02:00
Aymeric Augustin
361254810e
Documented "rel objects".
...
Kept the docstring short because these objects aren't very well defined
and they're in the crosshairs of several refactorings.
2015-09-21 22:20:42 +02:00
Aymeric Augustin
e542e81b39
Renamed descriptor classes for related objects.
...
The old names were downright confusing. Some seemed to mean the opposite
of what the class actually did.
The new names follow a consistent nomenclature:
(Forward|Reverse)(ManyToOne|OneToOne|ManyToMany)Descriptor.
I mentioned combinations that do not exist in the docstring in order to
help people who would search for them in the code base.
2015-09-21 22:20:42 +02:00
Aymeric Augustin
2409a4241a
Added comments in related instances descriptors.
2015-09-21 22:06:04 +02:00
Aymeric Augustin
497d915299
Documented related models descriptors.
...
Changed the poll / choices example to a more obvious parent / children.
I think that reduces the cognitive load.
2015-09-21 22:06:03 +02:00
Aymeric Augustin
005c9fc45f
Fixed #22341 -- Split django.db.models.fields.related.
...
At 2800 lines it was the largest module in the django package. This
commit brings it down to a more manageable 1620 lines.
Very small changes were performed to uniformize import style.
2015-09-21 22:05:30 +02:00
Josh Smeaton
534aaf56f4
Fixed #24629 -- Unified Transform and Expression APIs
2015-09-21 19:56:24 +10:00
Raphael Merx
f5a33e4840
Fixed #25296 -- Prevented model related object cache pollution when create() fails due to an unsaved object.
2015-09-19 20:49:13 -04:00
Aymeric Augustin
c3904deb91
Fixed #25160 (again) -- Moved data loss check on reverse relations.
...
Moved data loss check when assigning to a reverse one-to-one relation on
an unsaved instance to Model.save(). This is exactly the same change as
e4b813c
but for reverse relations.
2015-09-19 20:27:53 +02:00
Markus Holtermann
5aa55038ca
Fixed #24743 , #24745 -- Optimized migration plan handling
...
The change partly goes back to the old behavior for forwards migrations
which should reduce the amount of memory consumption (#24745 ). However,
by the way the current state computation is done (there is no
`state_backwards` on a migration class) this change cannot be applied to
backwards migrations. Hence rolling back migrations still requires the
precomputation and storage of the intermediate migration states.
This improvement also implies that Django does not handle mixed
migration plans anymore. Mixed plans consist of a list of migrations
where some are being applied and others are being unapplied.
Thanks Andrew Godwin, Josh Smeaton and Tim Graham for the review as well
as everybody involved on the ticket that kept me looking into the issue.
2015-09-19 14:54:53 +10:00
Simon Charette
71ebcb85b9
Fixed #25417 -- Added a field check for invalid default values.
2015-09-18 14:31:36 -04:00
Iulia Chiriac
75ed590032
Fixed #24636 -- Added model field validation for decimal places and max digits.
2015-09-18 14:30:20 -04:00
Hynek Cernoch
4b9d063da0
Refs #17785 -- Made docstring for sqlite3's get_relations() consistent with other backends.
2015-09-18 09:32:36 -04:00
Aymeric Augustin
4f6a7663bc
Refs #14091 -- Fixed connection.queries on SQLite.
2015-09-17 23:01:33 +02:00
Simon Charette
4d886db078
Removed the unused JoinPromoter.outer_votes attribute.
2015-09-17 13:47:06 -04:00
Tim Graham
7506616f16
Refs #24215 -- Fixed Python 3.5 compatiblity for unhandled lazy ops error.
2015-09-17 10:06:52 -04:00
Adam Chainz
3fe3887a2e
Fixed #25377 -- Changed Count queries to execute COUNT(*) instead of COUNT('*').
2015-09-14 13:41:35 -04:00
Ville Skyttä
4d933ad418
Fixed #25393 -- Fixed MySQL crash when adding text/blob field with unhashable default.
2015-09-14 12:25:08 -04:00
Dražen Odobašić
b1e33ceced
Fixed #23395 -- Limited line lengths to 119 characters.
2015-09-12 11:40:50 -04:00
Markus Holtermann
f45ee19746
Refs #24919 -- Raised more helpful error message for disabled migrations
2015-09-12 10:38:15 +10:00
Markus Holtermann
a3c01b0dd8
Fixed #24919 -- Allowed disabling of migrations on a per app basis
2015-09-12 10:38:15 +10:00
Adam Chainz
b2f6e421a3
Fixed #25329 -- Prevented _nodb_connection from being left open
2015-09-11 08:40:43 +02:00
Aymeric Augustin
33c7c2a557
Enabled parallel testing by default in runtests.py.
2015-09-10 13:34:05 +02:00
Aymeric Augustin
05cea7fdbb
Changed database connection duplication technique.
...
This new technique is more straightforward and compatible with test
parallelization, where the effective database connection settings no
longer match settings.DATABASES.
2015-09-09 23:03:51 +02:00
Aymeric Augustin
0586c061f0
Cloned databases for running tests in parallel.
2015-09-09 23:01:15 +02:00
Alex Hill
25c157e4cc
Refs #24215 -- Improved error message for unhandled lazy model operations.
2015-09-07 20:31:58 -04:00
Nick Pope
1743efbe62
Fixed typos in django/db/models/query.py docstrings.
2015-09-07 15:47:02 -04:00
Aymeric Augustin
6d1110f2f0
Updated references to the TEST_* database settings.
...
They were removed in Django 1.9.
I could leave the reference to TEST_DEPENDENCIES in the 1.2.4 release
notes because the link points to the right location and the name was
accurate at the time.
2015-09-05 19:21:22 +02:00
Tim Graham
2dc9ec5616
Fixed #24525 -- Fixed AssertionError in some complex queries.
...
Thanks Anssi Kääriäinen for providing the solution.
2015-09-05 07:51:17 -04:00
Tim Graham
233b46f931
Fixed #19263 -- Fixed crash when filtering using __in and an empty QuerySet.
...
Thanks Marcin Biernat for the initial patch and tests.
2015-09-04 07:44:36 -04:00
sarthakmeh
40bf18e702
Fixed #25058 -- Added GenericRelations with related_query_name to the admin's delete confirmation page.
2015-09-03 10:08:51 -04:00
Gavin Wahl
627c7eb7bf
Fixed #25335 -- Fixed regression where QuerySet.iterator() didn't return an iterator.
2015-09-03 07:35:22 -04:00
Tim Graham
0e925de245
Removed obsolete TODO about moving CommaSeparatedIntegerField into contrib.
2015-09-01 09:13:20 -04:00
Tim Graham
064d4b1cb0
Fixed #25320 -- Reverted ManyToManyField.null to False for backwards compatibility.
...
Thanks Tom Christie for the report and review.
2015-09-01 07:59:39 -04:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Tyson Clugg
e34226fc37
Fixed #25259 -- Added comments to header of generated migration files
2015-08-31 22:14:21 +10:00