Markus Holtermann
2218f7617e
[1.8.x] Refs #24554 -- Prevented rendering of unused migrations
...
Thanks Claude Paroz and Tim Graham for the review
Backport of 3e7d9d05ac
from master
2015-04-01 11:14:55 +02:00
Markus Holtermann
0c7e2833d9
[1.8.x] Fixed #24554 -- Sped up migrations by rendering initial apps when they are first needed
...
Calling Migration.mutate_state() now also allows to do in_place
mutations in case an intermediate state is thrown away later.
Thanks Anssi Kääriäinen for the idea, Ryan Hall for parts of the patch,
and Claude Paroz and Tim Graham for the review
Backport of 57dc8dd3fa
from master
2015-04-01 11:14:55 +02:00
Andriy Sokolovskiy
121c5f7d5b
[1.8.x] Removed duplicate attribute in MySQL DatabaseSchemaEditor.
...
Backport of 29b4a3f513
from master
2015-03-30 19:24:06 -04:00
Tim Graham
b81ce2ed67
[1.8.x] Fixed #24532 -- Restored fallback support for allow_syncdb.
2015-03-24 10:33:50 -04:00
Josh Smeaton
e654123f7f
Fixed #24485 -- Allowed combined expressions to set output_field
2015-03-22 17:41:12 +11:00
Josh Smeaton
3a1886d111
[1.8.x] Fixed #24508 -- Made annotations commutative
...
Backport of 127b3873d0
from master
2015-03-22 17:35:22 +11:00
Karl Hobley
a8c53041f9
[1.8.x] Fixed #24495 -- Allowed unsaved model instance assignment check to be bypassed.
...
Backport of 81e1a35c36
from master
2015-03-18 19:12:46 -04:00
Josh Smeaton
a0cebe82b5
[1.8.x] Refs #24485 -- Renamed some expression types
...
Backport of 88d798d71a
from master
2015-03-17 08:40:45 -04:00
Josh Smeaton
34e09e532d
[1.8.x] Fixed #24486 -- Fixed error with datetime and DurationField arithmetic
...
Backport of ff2aa40192
from master
2015-03-17 08:36:15 -04:00
Anssi Kääriäinen
3a0fe942dd
[1.8.x] Fixed #24171 -- Fixed failure with complex aggregate query and expressions
...
The query used a construct of qs.annotate().values().aggregate() where
the first annotate used an F-object reference and the values() and
aggregate() calls referenced that F-object.
Also made sure the inner query's select clause is as simple as possible,
and made sure .values().distinct().aggreate() works correctly.
Backport of fb146193c4
from master
2015-03-09 07:51:05 -04:00
Jean-Louis Fuchs
1ae2df6bfc
[1.8.x] Fixed #24447 -- Made migrations add FK constraints for existing columns
...
When altering from e.g. an IntegerField to a ForeignKey, Django didn't
add a constraint.
Backport of f4f0060fea
from master
2015-03-07 14:15:27 +01:00
Josh Smeaton
823f8cdbc9
[1.8.x] Fixed #24420 -- Allowed ordering by case expressions
...
Backport of ceaf31adff
from master
2015-03-06 13:31:43 +11:00
Markus Holtermann
bff446c205
[1.8.x] Fixed #24435 -- Prevented m2m field removal and addition in migrations when changing blank
...
Thanks Mark Tranchant for the report and Tim Graham for the test and
review.
Backport of a9e29fae10
from master
2015-03-04 15:44:38 +01:00
Claude Paroz
b825ec38c1
[1.8.x] Fixed #24418 -- Prevented crash in refresh_from_db with null fk
...
Thanks Johannes Lerch for the report, Tim Graham for the test case,
and Simon Charette for the review.
Backport of 5cf96b49e4
from master.
2015-02-27 20:25:12 +01:00
Anssi Kääriäinen
155a127afb
[1.8.x] Fixed #24381 -- removed ForeignObjectRel opts and to_opts
...
These cached properies were causing problems with pickling, and in
addition they were confusingly defined: field.rel.model._meta was
not the same as field.rel.opts.
Instead users should use field.rel.related_model._meta inplace of
field.rel.opts, and field.rel.to._meta in place of field.rel.to_opts.
Backport of f95122e541
from master
2015-02-23 07:26:10 -05:00
Marten Kenbeek
980dfca717
[1.8.x] Fixed #24366 -- Optimized traversal of large migration dependency graphs.
...
Switched from an adjancency list and uncached, iterative depth-first
search to a Node-based design with direct parent/child links and a
cached, recursive depth-first search. With this change, calculating
a migration plan for a large graph takes several seconds instead of
several hours.
Marked test `migrations.test_graph.GraphTests.test_dfs` as an expected
failure due to reaching the maximum recursion depth.
Backport of 78d43a5e10
from master
2015-02-23 12:55:43 +01:00
Michael Manfre
ed941ef2d0
Fixed signature of BaseDatabaseOperations.date_interval_sql()
...
Backport of 7fa7dd48c4
from master
2015-02-23 00:04:57 -05:00
Michael Angeletti
1feeefe918
[1.8.x] Fixed #24376 -- added verbose_name arg to UUIDField
...
Backport of ea3168dc6c
from master
2015-02-21 14:26:47 -05:00
Don Kirkby
5131aec7d2
[1.8.x] Fixed typo in django/db/models/fields/files.py comment.
...
Backport of 99a1bbf985
from master
2015-02-20 20:11:58 -05:00
Anssi Kääriäinen
6f03a4ca91
[1.8.x] Fixed #24328 -- cleaned up Options._get_fields() implementation
...
Backport of bad5f262bf
from master
2015-02-20 13:11:59 -05:00
Loic Bistuer
3a6c37fce4
[1.8.x] Fixed #24351 , #24346 -- Changed the signature of allow_migrate().
...
The new signature enables better support for routing RunPython and
RunSQL operations, especially w.r.t. reusable and third-party apps.
This commit also takes advantage of the deprecation cycle for the old
signature to remove the backward incompatibility introduced in #22583 ;
RunPython and RunSQL won't call allow_migrate() when when the router
has the old signature.
Thanks Aymeric Augustin and Tim Graham for helping shape up the patch.
Refs 22583.
Conflicts:
django/db/utils.py
Backport of bed504d70b
from master
2015-02-20 21:55:50 +07:00
Marc Tamlyn
3886338c1d
[1.8.x] Update converters to take a consistent set of parameters.
...
As suggested by Anssi. This has the slightly strange side effect of
passing the expression to Expression.convert_value has the expression
passed back to it, but it allows more complex patterns of expressions.
Backport of 32d4db66b9
from master
2015-02-20 11:47:48 +00:00
Marc Tamlyn
c54d73ae01
[1.8.x] Fixed #24343 -- Ensure db converters are used for foreign keys.
...
Joint effort between myself, Josh, Anssi and Shai.
Conflicts:
django/db/models/query.py
tests/model_fields/models.py
Backport of 4755f8fc25
from master.
2015-02-20 11:46:57 +00:00
Shai Berger
66d37e593c
[1.8.x] Fixed #24307 : Avoided redundant column nullability modifications on Oracle
...
Thanks Joris Benschop for the report, and Tim Graham for the tests.
Backport of ceadc94f09
from master
2015-02-19 02:44:08 +02:00
Marten Kenbeek
84c9b24c5a
[1.8.x] Fixed #24291 - Fixed migration ModelState generation with unused swappable models
...
Swapped out models don't have a _default_manager unless they have
explicitly defined managers. ModelState.from_model() now accounts for
this case and uses an empty list for managers if no explicit managers
are defined and a model is swapped out.
Backport of 15dc8d1c9d
from master
2015-02-18 19:11:51 +01:00
Adam Chainz
4abadc4872
[1.8.x] Removed unused foreign_key_re variables in MySQL/Oracle DB backends
...
Backport of e9282747a4
from master
2015-02-18 10:24:40 -05:00
Tim Graham
09da1b465e
[1.8.x] Refs #24324 -- Fixed UnicodeDecodeError in MigrationWriter on Python 2.
...
Backport of fa66ea7532
from master
2015-02-17 18:50:15 -05:00
Tim Graham
ba3a7636f1
[1.8.x] Refs #24324 -- Fixed UnicodeDecodeError in makemigrations.
...
If the project path contained a non-ASCII character, Python 2 crashed.
Backport of c9ece2e6b9
from master
2015-02-17 08:14:01 -05:00
Tim Graham
4f43e5c435
[1.8.x] Refs #24324 -- Fixed UnicodeEncodeError in SQLite backend while testing.
...
If 'name' contained non-ASCII characters, the comparison raised a
UnicodeEncodeError on Python 2.
Backport of 63c5c98701
from master
2015-02-17 08:11:38 -05:00
Tim Graham
730fb593ad
[1.8.x] Fixed #24335 -- Bumped required psycopg2 version to 2.4.5 (2.5 for contrib.postgres).
...
Backport of 3adc5f1ee6
from master
2015-02-17 06:21:59 -05:00
Aymeric Augustin
d027993ed1
[1.8.x] Removed 'autocommit' options for the psycopg2 backend.
...
It was documented as not having any effect since Django 1.6.
Backport of a73c8540a8
from master
2015-02-17 06:21:37 -05:00
Aymeric Augustin
30e5356c2e
[1.8.x] Cleaned up init_connection_state in the psycopg2 backend.
...
settings_dict['TIME_ZONE'] is set in ConnectionHandler.ensure_defaults.
Backport of 28e97a9bdc
from master
2015-02-17 06:21:24 -05:00
Markus Holtermann
a1ba462793
[1.8.x] Fixed #24225 , #24264 , #24282 -- Rewrote model reloading in migration project state
...
Instead of naively reloading only directly related models (FK, O2O, M2M
relationship) the project state needs to reload their relations as well
as the model changes as well. Furthermore inheriting models (and super
models) need to be reloaded in order to keep inherited fields in sync.
To prevent endless recursive calls an iterative approach is taken.
Backport of b29f3b5120
from master
2015-02-16 19:38:02 +01:00
Aymeric Augustin
87e9cad4a4
[1.8.x] Fixed #24318 -- Set the transaction isolation level with psycopg >= 2.4.2.
...
Backport of 76356d96
from master
2015-02-14 18:52:28 +01:00
Loic Bistuer
20b621eb3c
[1.8.x] Fixed #24289 -- Reversed usage of Field.many_to_one and one_to_many.
...
Thanks Carl Meyer and Tim Graham for the reviews and to all involved
in the discussion.
Backport of 18c0aaa912
from master
2015-02-14 02:42:06 +07:00
Markus Holtermann
bd80fa6b0f
[1.8.x] Fixed #24184 -- Prevented automatic soft-apply of migrations
...
Previously Django only checked for the table name in CreateModel
operations in initial migrations and faked the migration automatically.
This led to various errors and unexpected behavior. The newly introduced
--fake-initial flag to the migrate command must be passed to get the
same behavior again. With this change Django will bail out in with a
"duplicate relation / table" error instead.
Thanks Carl Meyer and Tim Graham for the documentation update, report
and review.
Backport of f287bec583
from master
2015-02-13 15:21:10 +01:00
Josh Smeaton
1784c326b1
[1.8.x] Fixed #24319 -- Added validation for UUID model field
...
Backport of de0241eb98
from master
2015-02-13 10:01:06 +11:00
Josh Smeaton
a6ea62aeaf
[1.8.x] Refs #14030 -- Improved expression support for python values
...
Backport of e2d6e14662
from master
2015-02-12 08:53:03 +11:00
Daniel Pyrathon
fdcc9c47d5
[1.8.x] Fixed #24146 -- Allowed model._meta.get_field() to be used after apps.models_ready
...
Backport of 19188826b4
from master
2015-02-10 19:55:42 -05:00
Loic Bistuer
00f76b018f
[1.8.x] Fixed isort import that's inconsistent between platforms.
...
Backport of c8e24bbc9b
from master
2015-02-10 18:53:23 -05:00
Josh Smeaton
3518d51697
[1.8.x] Fixed #24200 -- Made introspection bypass statement cache
...
Backport of 1fbe8a2de3
from master
2015-02-10 23:42:16 +02:00
Tim Graham
a8b70d251d
[1.8.x] Sorted imports with isort; refs #23860 .
...
Backport of 0ed7d15563
from master
2015-02-09 14:24:06 -05:00
Tim Graham
9744529c12
[1.8.x] Fixed #24302 -- Added DurationField.formfield()
...
Backport of 2d7c27d387
from master
2015-02-09 10:21:15 -05:00
jMyles
ac576e9f45
[1.8.x] Fixed #24287 -- Added friendly error if a model is in a models.py outside an installed app.
2015-02-09 09:38:03 -05:00
Tim Graham
6e50fc9246
[1.8.x] Removed unnecessary parentheses in model check messages.
...
Backport of e144e0e237
from master
2015-02-09 08:57:02 -05:00
Aron Podrigal
eb9fbc0b1d
[1.8.x] Fixed #24249 -- Improved field shadowing validation in model multi-inheritance.
...
Backport of 4d73303ee9
from master
2015-02-09 08:43:40 -05:00
Markus Holtermann
edbf6de753
[1.8.x] Revert "Fixed #24075 -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth"
...
This reverts commit 737d24923a
.
Backport of 2832a9b028
from master
2015-02-07 20:35:20 +01:00
Collin Anderson
fc8e1e0c10
[1.8.x] Fixed E265 comment style
...
Backport of db77915c9f
from master
2015-02-06 09:35:08 -05:00
Tim Graham
fc1e9107d7
[1.8.x] Added UUIDField.deconstruct()
...
Backport of 0f54cf28c0
from master
2015-02-05 19:15:37 -05:00
Aron Podrigal
fc49e73648
[1.8.x] Fixed #15321 -- Honored ancestors unique checks.
...
Thanks to Tim for the review.
Backport of 79f27f2b61
from master
2015-02-03 18:58:48 -05:00
Simon Charette
cbcf92e95f
[1.8.x] Fixed #24266 -- Changed get_parent_list to return a list ordered by MRO.
...
Thanks to Aron Podrigal for the initial patch and Tim for the review.
Backport of 65e005f8cd
from master
2015-02-03 16:41:51 -05:00
Tim Graham
92d5bedc56
[1.8.x] Reverted "Fixed #24146 -- Fixed a missing fields regression in admin checks."
...
This reverts commit e8171daf0c
.
A new solution is forthcoming.
Backport of 0e489c19f1
from master
2015-02-03 15:24:24 -05:00
Anssi Kääriäinen
43b0131fb5
[1.8.x] Fixed #23617 -- Added get_pk_value_on_save()
...
The method is mainly intended for use with UUIDField. For UUIDField we
want to call the field's default even when primary key value is
explicitly set to None to match the behavior of AutoField.
Thanks to Marc Tamlyn and Tim Graham for review.
Backport of 8adc59038c
from master
2015-02-03 09:25:55 -05:00
Tim Graham
3cd8f51f21
[1.8.x] Removed query.alias_diff()
...
This function is unused since 6fe2b001db
Backport of f79ce63fdb
from master
2015-02-01 21:38:34 -05:00
Tim Graham
7580876fbd
[1.8.x] Removed Query.raise_field_error()
...
This method was inadvertently reintroduced in
f59fd15c49
Backport of 99ca7c2bd3
from master
2015-02-01 20:26:43 -05:00
Tim Graham
c9e538b174
[1.8.x] Removed threading fallback imports.
...
Django imports threading in many other places without fallback.
Backport of 18f3e79b13
from master
2015-02-01 18:45:01 -05:00
Tim Graham
0fc2f94699
[1.8.x] Removed PostgreSQL DatabaseWrapper._set_isolation_level().
...
This method is unused since 8717b0668c
.
Backport of 64a899dc81
from master
2015-01-31 11:06:03 -05:00
Claude Paroz
c77dd64402
[1.8.x] Fixed #14483 -- Allowed using subqueries with GIS lookups
...
Backport of a0b5f15ea5
from master.
2015-01-30 20:29:05 +01:00
Tim Graham
7060ef7158
[1.8.x] Reverted "Fixed #6785 -- Made QuerySet.get() fetch a limited number of rows."
...
This reverts commit da79ccca1d
.
This optimized the unsuccessful case at the expense of the successful one.
Backport of 293fd5da5b
from master
2015-01-30 12:52:39 -05:00
Tim Graham
df68751134
[1.8.x] Fixed #24164 -- Fixed Oracle GIS limited aggregation test failure.
...
Backport of 29c0073335
from master
2015-01-30 06:34:36 -05:00
Simon Charette
a301061f88
[1.8.x] Fixed #23940 -- Allowed model fields to be named `exact`.
...
An explicit `__exact` lookup in the related managers filters
was interpreted as a reference to a foreign `exact` field.
Thanks to Trac alias zhiyajun11 for the report, Josh for the investigation,
Loïc for the test name and Tim for the review.
Backport of eb4cdfbdd6
from master
2015-01-29 14:42:28 -05:00
Tim Graham
d0c343372f
[1.8.x] Removed ForeignObjectRel.get_lookup_constraint() [unused].
...
Backport of f609731118
from master
2015-01-29 14:12:35 -05:00
Josh Smeaton
f858b51ee3
[1.8.x] Refs #14030 -- Renamed CombinableMixin to Combinable
...
Removed unused method and updated docstrings.
Backport of 14d0bd67d4
from master
2015-01-28 11:04:12 +11:00
Josh Smeaton
6c68e40e6e
[1.8.x] Refs #14030 -- Added repr methods to all expressions
...
Backport of 7171bf755b
from master
2015-01-28 11:03:39 +11:00
Josh Smeaton
e56810e839
[1.8.x] Fixed #24154 -- Backends can now check support for expressions
...
Backport of 8196e4bdf4
from master
2015-01-27 14:47:38 +11:00
Andriy Sokolovskiy
11a5e45b96
[1.8.x] Fixed #24104 -- Fixed check to look on field.many_to_many instead of class instance
...
Backport of 38c17871bb
from master
2015-01-22 18:53:47 +01:00
Loic Bistuer
0580133971
[1.8.x] Fixed small inconsistency when handling aggregate's default_alias.
...
Refs #14030 .
Backport of d450af8a26
from master
2015-01-22 08:02:07 +07:00
Adam Taylor
45aaced91e
[1.8.x] Fixed typos in code comments.
...
Backport of 039465a6a7
from master
2015-01-20 12:18:29 -05:00
Tim Graham
cb90d489da
[1.8.x] Fixed a query failure on Python 3.5; refs #23763 .
...
The failure was introduced in Django by
c7fd9b242d
and the change in
Python 3.5 is https://hg.python.org/cpython/rev/a3c345ba3563 .
Backport of be1357e709
from master
2015-01-20 08:15:39 -05:00
Josh Smeaton
504cd5d3be
[1.8.x] Fixed #24183 -- Fixed wrong comparisons in Substr
...
Backport of 61c102d010
from master
2015-01-20 12:11:27 +11:00
Markus Holtermann
e55cb91bd4
[1.8.x] Fixed #24163 -- Removed unique constraint after index on MySQL
...
Thanks Łukasz Harasimowicz for the report.
Backport of 5792e6a88c
from master
2015-01-19 16:55:25 +01:00
Josh Smeaton
0c910823c1
[1.8.x] Fixed #24174 -- Fixed extra order by descending
...
Backport of 69c6a6868f
from master
2015-01-19 13:18:09 +11:00
Marc Tamlyn
39d95fb6ad
Fixed #24092 -- Widened base field support for ArrayField.
...
Several issues resolved here, following from a report that a base_field
of GenericIpAddressField was failing.
We were using get_prep_value instead of get_db_prep_value in ArrayField
which was bypassing any extra modifications to the value being made in
the base field's get_db_prep_value. Changing this broke datetime
support, so the postgres backend has gained the relevant operation
methods to send dates/times/datetimes directly to the db backend instead
of casting them to strings. Similarly, a new database feature has been
added allowing the uuid to be passed directly to the backend, as we do
with timedeltas.
On the other side, psycopg2 expects an Inet() instance for IP address
fields, so we add a value_to_db_ipaddress method to wrap the strings on
postgres. We also have to manually add a database adapter to psycopg2,
as we do not wish to use the built in adapter which would turn
everything into Inet() instances.
Thanks to smclenithan for the report.
2015-01-16 16:15:16 -05:00
Collin Anderson
e8171daf0c
Fixed #24146 -- Fixed a missing fields regression in admin checks.
...
This allows using get_field() early in the app loading process.
Thanks to PirosB3 and Tim Graham.
2015-01-16 14:47:09 -05:00
Tim Graham
28db4af80a
Fixed #24135 -- Made RenameModel rename many-to-many tables.
...
Thanks Simon and Markus for reviews.
2015-01-15 20:34:33 -05:00
Simon Charette
47bdad4e6b
Replaced inner functions by class methods.
...
refs #24031
Thanks to Tim Graham and Michał Modzelewski for the review.
2015-01-15 13:03:34 -05:00
Claude Paroz
67bcae1e58
Moved check_aggregate_support to BaseSpatialOperations
2015-01-14 22:03:41 +01:00
Collin Anderson
2d5da57f48
Fixed incorrect error message in Options.get_fields()
2015-01-14 14:51:05 -05:00
Tim Graham
28308078f3
Fixed #22603 -- Reorganized classes in django.db.backends.
2015-01-14 14:16:20 -05:00
Markus Holtermann
737d24923a
Fixed #24075 -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth
...
Thanks Florian Apolloner for the report and Claude Paroz and Tim Graham for the review and help on the patch.
2015-01-14 19:59:39 +01:00
Markus Holtermann
88786afbff
Fixed #24147 -- Prevented managers leaking model during migrations
...
Thanks Tim Graham for the review.
2015-01-14 16:09:33 +01:00
Michał Modzelewski
65246de7b1
Fixed #24031 -- Added CASE expressions to the ORM.
2015-01-12 18:15:34 -05:00
Shai Berger
aa8ee6a573
Fixed test failures in Oracle introspection
...
Refs #17785
2015-01-13 01:00:09 +02:00
Josh Smeaton
21b858cb67
Fixed #24060 -- Added OrderBy Expressions
2015-01-13 09:39:55 +11:00
Claude Paroz
4c413e231c
Fixed #17785 -- Preferred column names in get_relations introspection
...
Thanks Thomas Güttler for the report and the initial patch, and
Tim Graham for the review.
2015-01-12 19:58:47 +01:00
Markus Holtermann
eeb88123e7
Fixed #24129 -- Added indicator that migrations are rendering the initial state
...
Thanks Tim Graham for the review.
2015-01-12 19:23:46 +01:00
Markus Holtermann
bbbed99f62
Fixed #24123 -- Used all available migrations to generate the initial migration state
...
Thanks Collin Anderson for the input when creating the patch and Tim Graham for the review.
2015-01-12 18:39:18 +01:00
Pavel Shpilev
a7c256cb54
Fixed #9893 -- Allowed using a field's max_length in the Storage.
2015-01-12 09:09:18 -05:00
Claude Paroz
68a439a18d
Removed supports_binary_field flag as all backends support them
...
It was mainly for MySQL on Python 3, but now the current
recommended MySQL driver for Python 3 (mysqlclient) does support
binary fields, it is unneeded. Refs #20377 .
2015-01-11 23:34:47 +01:00
Markus Holtermann
be158e3625
Refs #24110 -- Added a more descriptive release note and fixed a spelling mistake.
2015-01-11 00:30:47 +01:00
Markus Holtermann
fdc2cc9487
Fixed #24110 -- Rewrote migration unapply to preserve intermediate states
2015-01-10 23:14:15 +01:00
Marc Tamlyn
916e38802f
Move % addition to lookups, refactor postgres lookups.
...
These refactorings making overriding some text based lookup names on
other fields (specifically `contains`) much cleaner. It also removes a
bunch of duplication in the contrib.postgres lookups.
2015-01-10 16:18:19 +00:00
Claude Paroz
7289d01973
Introspected alternate SQLite FK definitions
2015-01-10 16:51:14 +01:00
Loic Bistuer
8f4877c89d
Fixed #22583 -- Allowed RunPython and RunSQL to provide hints to the db router.
...
Thanks Markus Holtermann and Tim Graham for the review.
2015-01-10 00:30:48 +07:00
Markus Holtermann
c8bac4b556
Fixed #24098 -- Added no-op attributes to RunPython and RunSQL
...
Thanks Loïc Bistuer and Tim Graham for the discussion and review.
2015-01-09 10:31:32 -05:00
Anssi Kääriäinen
0c7633178f
Fixed #24020 -- Refactored SQL compiler to use expressions
...
Refactored compiler SELECT, GROUP BY and ORDER BY generation.
While there, also refactored select_related() implementation
(get_cached_row() and get_klass_info() are now gone!).
Made get_db_converters() method work on expressions instead of
internal_type. This allows the backend converters to target
specific expressions if need be.
Added query.context, this can be used to set per-query state.
Also changed the signature of database converters. They now accept
context as an argument.
2015-01-08 14:07:54 -05:00
Claude Paroz
de4bfb3fad
Simplified verbose_name_raw property
2015-01-08 15:08:26 +01:00
Markus Holtermann
862ea825b5
Fixed #24093 -- Prevented MigrationWriter to write operation kwargs that are not explicitly deconstructed
2015-01-07 17:29:20 -07:00
Josh Smeaton
8713ea7568
Fixed null handling in Value expression
2015-01-07 19:07:49 -05:00
Markus Holtermann
1f03d2d924
Refs #23822 -- Made MigrationOptimizer aware of model managers
2015-01-07 17:33:04 -05:00
Markus Holtermann
12bf42ae0d
Refs #22608 -- Optimized migration optimizer
...
Moved list constants instantiation into optimizer's __init__.
2015-01-07 08:54:46 -05:00
Ulrich Petri
391bb09bb0
Refs #22608 -- Optimized migration optimizer and migrate by caching calls to str.lower()
2015-01-07 08:54:46 -05:00
Michał Modzelewski
ee86e59051
Refs #2443 -- Allowed creation of objects with NULL DurationFields
2015-01-07 08:33:26 -05:00
Josh Smeaton
5a4ac4ead9
Fixed #24078 -- Removed empty strings from GenericIPAddressField
2015-01-07 08:08:36 -05:00
Daniel Pyrathon
fb48eb0581
Fixed #12663 -- Formalized the Model._meta API for retrieving fields.
...
Thanks to Russell Keith-Magee for mentoring this Google Summer of
Code 2014 project and everyone else who helped with the patch!
2015-01-06 19:25:12 -05:00
Tim Graham
c87ee41954
Fixed #23861 -- Added an API to deprecate model fields.
...
Thanks Markus Holterman and Berker Peksag for review.
2015-01-05 11:35:36 -05:00
Markus Holtermann
05f702b94c
Renamed flag for detecting managers built from QuerySets with as_manager().
2015-01-05 10:30:15 -05:00
Daniel Pyrathon
8958170755
Fixed #9104 -- Moved FieldDoesNotExist to core.exceptions
2015-01-02 10:46:04 -05:00
Claude Paroz
1aa3e09c20
Fixed #23745 -- Reused states as much as possible in migrations
...
Thanks Tim Graham and Markus Holtermann for the reviews.
2015-01-02 15:37:10 +01:00
Claude Paroz
2a9c4b4901
Passed around the state between migrations
...
Refs #23745 .
2015-01-02 15:37:10 +01:00
Markus Holtermann
057305e588
Added ignore_swappable to StateApps
...
Refs #23745 .
2015-01-02 15:37:09 +01:00
Claude Paroz
a159b1facd
Replaced migration state render() by apps cached property
...
Refs #23745 .
2015-01-02 15:19:36 +01:00
Tim Graham
40a8504357
Fixed #23891 -- Moved deprecation of IPAddressField to system check framework.
...
Thanks Markus Holtermann for review.
2015-01-01 13:30:52 -05:00
Piotr Pawlaczek
41fc1c0b5e
Fixed #23758 -- Allowed more than 5 levels of subqueries
...
Refactored bump_prefix() to avoid infinite loop and allow more than
than 5 subquires by extending the alphabet to use multi-letters.
2014-12-31 08:48:28 -05:00
Tim Graham
478d6a9503
Copied BaseDatabaseCreation._digest() to SchemaEditor to remove dependency.
...
refs #22340 .
2014-12-31 08:33:34 -05:00
Tim Graham
93d73dac91
Moved DatabaseCreation.data_types properties to DatabaseWrapper.
...
refs #22340 .
2014-12-31 08:29:17 -05:00
Russell Keith-Magee
013c2d8d02
Renamed variables to avoid name collision with import of django.db.models.
2014-12-31 13:21:32 +08:00
Tim Graham
8082c75d18
Removed db.backends methods which only call super().
2014-12-30 11:53:59 -05:00
Andriy Sokolovskiy
8c99b7920e
Fixed #12118 -- Added shared cache support to SQLite in-memory testing.
2014-12-30 10:14:33 -05:00
Tim Graham
ab4f709da4
Fixed #23581 -- Prevented extraneous DROP DEFAULT statements.
...
Thanks john_scott for the report and Markus Holtermann for review.
2014-12-30 07:54:05 -05:00
Markus Holtermann
623ccdd598
Fixed #23938 -- Added migration support for m2m to concrete fields and vice versa
...
Thanks to Michael D. Hoyle for the report and Tim Graham for the review.
2014-12-29 13:41:12 -05:00
Claude Paroz
3c5d1edb39
Fixed #22279 -- Prevented dummy backend going through DatabaseErrorWrapper
...
Thanks Daniel Hahler for the report and Tim Graham for the review.
2014-12-29 19:06:28 +01:00
Claude Paroz
1d24f073e6
Fixed #21255 -- Closed connections after management command ran
...
Thanks kabakov.as@gmail.com for the report, and Aymeric Augustin,
Simon Charette for the reviews.
2014-12-29 19:02:45 +01:00
Josh Smeaton
1cdfbde4db
Fixed #23753 -- Oracle failure with Coalesce
2014-12-29 19:44:13 +11:00
Claude Paroz
2ceb10f3b0
Fixed #14180 -- Prevented unneeded index creation on MySQL-InnoDB
...
Thanks zimnyx for the report and Simon Charette, Tim Graham for
the reviews.
2014-12-27 12:52:44 +01:00
Josh Smeaton
4718296546
Fixed #23753 -- Added a suite of SQL Functions
...
Added functions and tests
Added docs and more tests
Added TextField converter to mysql backend
Aliased Value as V in example docs and tests
Removed unicode_compatible in example
Fixed console emulation in examples
2014-12-27 15:27:27 +11:00
Claude Paroz
234a2e0b6b
Fixed #23866 -- Harmonized refs to Django documentation from code
2014-12-25 13:53:13 +01:00
Niclas Olofsson
3daa9d60be
Fixed #10414 -- Made select_related() fail on invalid field names.
2014-12-24 14:54:30 -05:00
Tim Graham
061caa5b38
Fixed #24037 -- Prevented data loss possibility when changing Meta.managed.
...
The migrations autodetector now issues AlterModelOptions operations for
Meta.managed changes instead of DeleteModel + CreateModel.
Thanks iambibhas for the report and Simon and Markus for review.
2014-12-23 14:25:31 -05:00
Tim Graham
69ee7c8d76
Removed models.Field.bind() -- unused/undocumented since at least 1.0.
2014-12-23 14:23:58 -05:00
Claude Paroz
30cbd5d360
Replaced DatabaseCreation sql methods by schema editor equivalents
...
Also used schema editor in migrate to sync unmigrated apps (sync_apps).
Refs #22340 . Thanks Tim Graham for the review.
2014-12-23 19:35:01 +01:00
Anssi Kääriäinen
f233bf47dd
Fixed #21414 -- Removed RelatedObject and deprecated Field.related.
2014-12-23 10:54:25 -05:00
Anssi Kääriäinen
227a4c48be
Refs #2443 -- fixed format_dtdelta on SQLite
...
A test failed on Python 2 32-bit.
2014-12-23 07:05:44 -05:00
Marc Tamlyn
962bb9b6bd
Refs #2443 -- Move the durationfield converter logic.
...
This reduces how frequently this logic is run significantly.
Thanks to Anssi for the suggestion.
2014-12-23 10:41:42 +00:00
Marc Tamlyn
5ca82e710e
Fixed #24033 -- Use interval type on Oracle.
...
Use INTERVAL DAY(9) TO SECOND(6) for Durationfield on Oracle rather than
storing as a NUMBER(19) of microseconds.
There are issues with cx_Oracle which require some extra data
manipulation in the database backend when constructing queries, but it
handles the conversion back to timedelta objects cleanly.
Thanks to Shai for the review.
2014-12-23 10:38:32 +00:00
Oscar Ramirez
54085b0f9b
Fixed #23998 -- Added datetime.time support to migrations questioner.
2014-12-22 07:24:54 -05:00
Josh Schneier
9a23470072
Fixed #24017 -- Added python_2_unicode_compatible in db/migrations
2014-12-21 16:10:43 -05:00
Marc Tamlyn
07728a2c2c
Refs #2443 -- Fix Oracle tests for DurationField.
...
It helps if there are the correct number of microseconds in a second.
2014-12-20 22:04:07 +00:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Anssi Kääriäinen
4a2a433e7d
Refs #24020 -- return expressions from get_group_by_cols()
2014-12-18 06:01:07 -07:00
Claude Paroz
108b8bf852
Fixed #24007 -- Ensure apps registry's ready before unpickling models
...
This prevents AppRegistryNotReady errors when unpickling Django
models from an external script.
2014-12-17 18:33:32 +01:00
Andriy Sokolovskiy
3dbbb8a89c
Fixed #23983 -- Fixed a crash in migrations when adding order_with_respect_to to non-empty table.
2014-12-16 10:48:49 -05:00
Andriy Sokolovskiy
d8f3b86a76
Fixed #23405 -- Fixed makemigrations prompt when adding Text/CharField.
...
A default is no longer required.
2014-12-15 14:41:52 -05:00
Andriy Sokolovskiy
089047331d
Fixed #23987 -- Made SQLite SchemaEditor always use effective_default().
2014-12-15 13:40:24 -05:00
Markus Holtermann
aa5ef0d4fc
Fixed #23822 -- Added support for serializing model managers in migration
...
Thanks to Shai Berger, Loïc Bistuer, Simon Charette, Andrew Godwin,
Tim Graham, Carl Meyer, and others for their review and input.
2014-12-15 08:34:15 -05:00
Markus Holtermann
e37ab311fc
Changed internal storing of abstract and concrete managers to be in a single list.
...
This commit prepares the internal manager layout to be serialized by
migrations; refs #23822 .
2014-12-15 08:32:47 -05:00
Shai Berger
7c1f3901bc
Fixed #23991 -- Apparently, Oracle doesn't need the decimal field converter
...
Thanks Josh Smeaton for review.
2014-12-15 00:07:10 +02:00
Michael Hall
895dc880eb
Fixed #23812 -- Changed django.utils.six.moves.xrange imports to range
2014-12-13 12:45:58 -05:00
Carl Meyer
c72eb80d11
Fixed #23455 -- Accept either bytes or text for related_name, convert to text.
2014-12-12 12:50:39 -07:00
Carl Meyer
8aaf51f94c
Revert "Fixed #23455 -- Forced related_name to be a unicode string during deconstruction."
...
This reverts commit 45bd7b3bd9
.
2014-12-12 12:50:39 -07:00