Sergey Fedoseev
a2ec1e6b2d
Used BaseSimpleSerializer for serializing str and bytes in migrations.
...
Follow up to c716fe8782
.
2017-11-13 14:12:46 -05:00
Mads Jensen
4508fafe16
Simplified various __eq__() methods.
2017-09-28 09:18:37 -04:00
Mariusz Felisiak
a4092af3d3
Removed unnecessary parens in _get_app_label_and_model_name().
2017-09-10 21:26:06 +02:00
Tim Graham
6e4c6281db
Reverted "Fixed #27818 -- Replaced try/except/pass with contextlib.suppress()."
...
This reverts commit 550cb3a365
because try/except performs better.
2017-09-07 08:16:21 -04:00
Jeremy Satterfield
0891503fad
Fixed #28493 -- Made migrations autodetector find dependencies for model renaming.
2017-09-04 15:15:39 -04:00
Sergey Fedoseev
61da949ff6
Simplified migrations.state.ProjectState.__eq__().
2017-08-25 13:50:01 +05:00
Sergey Fedoseev
a8bb493556
Simplified migrations.graph.Node.iterative_dfs(), ancestors(), and descendants().
2017-08-23 18:10:00 -04:00
Sergey Fedoseev
9ad6071aab
Simplified usage of sets in MigrationAutodetector.
2017-08-22 16:23:02 -04:00
Evan Grim
7937cc16f5
Fixed #28386 -- Made operations within non-atomic migrations honor the operation's atomic flag when migrating backwards.
2017-08-10 19:21:14 -04:00
Sergey Fedoseev
aadd3aeb2b
Avoided creating temporary lists for obtaining the first item.
2017-07-31 11:02:23 -04:00
Sergey Fedoseev
38988f289f
Avoided creation of temporary sets.
2017-07-29 10:16:43 -04:00
Simon Charette
5cbcb36839
Fixed #28350 -- Fixed UnboundLocalError crash in RenameField with nonexistent field.
...
Thanks Tim for the review.
2017-06-30 12:50:37 -04:00
Mads Jensen
550cb3a365
Fixed #27818 -- Replaced try/except/pass with contextlib.suppress().
2017-06-28 14:07:55 -04:00
Mariusz Felisiak
24d7fe4933
Refs #27858 -- Fixed typo in MigrationRecorder.applied_migrations() comment.
2017-06-19 15:24:41 -04:00
Marti Raudsepp
fda55c71a8
Fixed #27858 -- Prevented read-only management commands from creating the django_migrations table.
...
MigrationRecorder now assumes that if the django_migrations table
doesn't exist, then no migrations are applied.
Reverted documentation change from refs #23808 .
2017-06-19 13:04:57 -04:00
chillaranand
451b585c2f
Refs #27914 -- Used __qualname__ in model operations' deconstruct().
2017-06-14 10:10:22 -04:00
Jon Dufresne
2c69824e5a
Refs #23968 -- Removed unnecessary lists, generators, and tuple calls.
2017-06-01 19:08:59 -04:00
Jon Dufresne
21046e7773
Fixed #28249 -- Removed unnecessary dict.keys() calls.
...
iter(dict) is equivalent to iter(dict.keys()).
2017-05-27 19:08:46 -04:00
Jon Dufresne
f599747fc8
Fixed #28152 -- Made migrations serialize sets as set literals rather than set().
2017-05-18 09:33:40 -04:00
Ian Foote
63afe3a2bf
Fixed #28043 -- Prevented AddIndex and RemoveIndex from mutating model state.
2017-05-01 09:32:44 -04:00
Claude Paroz
301de774c2
Refs #27795 -- Replaced many force_text() with str()
...
Thanks Tim Graham for the review.
2017-04-27 09:10:02 +02:00
Markus Holtermann
d3cf75ec6f
Fixed #28051 -- Made migrations respect Index's name argument.
...
Thanks Marc Tamlyn for the report and Tim Graham for the review.
2017-04-07 11:47:53 -04:00
Tim Graham
3d19d1428a
Fixed #27915 -- Allowed Meta.indexes to be defined in abstract models.
...
Thanks Markus Holtermann for review.
2017-03-21 10:53:21 -04:00
Claude Paroz
8346680e1c
Refs #27795 -- Removed unneeded force_text calls
...
Thanks Tim Graham for the review.
2017-03-04 18:18:21 +01:00
Anton Samarchyan
60e52a047e
Refs #27656 -- Updated django.db docstring verbs according to PEP 257.
2017-02-28 09:17:27 -05:00
Mads Jensen
86ae1d51ed
Refs #27546 -- Removed hardcoded class names in __repr__() methods.
2017-02-04 11:42:45 -05:00
Tim Graham
1c466994d9
Refs #23919 -- Removed misc Python 2/3 references.
2017-01-25 13:59:25 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Claude Paroz
8377a98ca5
Removed obsolete force_text_recursive
2017-01-22 21:13:00 +01:00
Claude Paroz
6e55e1d88a
Refs #23919 -- Replaced six.reraise by raise
2017-01-22 20:08:04 +01:00
Tim Graham
d170c63351
Refs #23919 -- Removed misc references to Python 2.
2017-01-21 20:02:00 -05:00
Mariusz Felisiak
c22212220a
Refs #23919 -- Removed re.U and re.UNICODE (default on Python 3).
2017-01-21 14:28:16 -05:00
Tim Graham
4e729feaa6
Refs #23919 -- Removed django.utils._os.upath()/npath()/abspathu() usage.
...
These functions do nothing on Python 3.
2017-01-20 08:01:02 -05:00
Tim Graham
9ee47ce7b4
Refs #23919 -- Removed enum ImportError handling for Python 2.
2017-01-19 13:55:20 -05:00
Simon Charette
9695b14982
Refs #23919 -- Removed str() conversion of type and method __name__.
2017-01-19 11:31:07 -05:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Aymeric Augustin
eb422e476f
Refs #23919 -- Removed obsolete __ne__() methods.
...
__ne__() defaults to the opposite of __eq__() on Python 3
when it doesn't return NotImplemented.
2017-01-18 21:44:00 -05:00
Claude Paroz
2b281cc35e
Refs #23919 -- Removed most of remaining six usage
...
Thanks Tim Graham for the review.
2017-01-18 21:33:28 +01:00
Claude Paroz
7b2f2e74ad
Refs #23919 -- Removed six.<various>_types usage
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-01-18 20:18:46 +01:00
Claude Paroz
c716fe8782
Refs #23919 -- Removed six.PY2/PY3 usage
...
Thanks Tim Graham for the review.
2017-01-18 16:21:28 +01:00
Claude Paroz
f3c43ad1fd
Refs #23919 -- Removed python_2_unicode_compatible decorator usage
2017-01-18 13:44:34 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Tim Graham
631f4ab061
Removed Manager.use_for_related_fields and Meta.manager_inheritance_from_future.
...
Per deprecation timeline. Refs ed0ff913c6
.
2017-01-17 20:52:04 -05:00
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
Ed Morley
7156a6c9c4
Fixed #27717 -- Allowed migration optimization across AlterModelOptions.
2017-01-10 18:38:48 -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
Keda87
48826aa541
Fixed #27546 -- Removed hardcoded class names in __repr__() methods.
2016-12-01 08:11:09 -05:00
Ramin Farajpour Cami
0a63ef3f61
Fixed #27463 -- Fixed E741 flake8 warnings.
2016-11-14 17:40:28 -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
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
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
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
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
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
Claude Paroz
2ced2f785d
Replaced smart_* by force_* calls whenever possible
...
The smart_* version should only be used when a lazy string should keep
its lazy status.
2016-09-03 13:46:41 +02:00
Tim Graham
098c07a032
Fixed #27142 , #27110 -- Made makemigrations consistency checks respect database routers.
...
Partially reverted refs #27054 except for one of the tests as this
solution supersedes that one.
Thanks Shai Berger for the review.
2016-09-01 16:19:29 -04:00
Tim Graham
96ee486ea4
Fixed #27081 -- Allowed migrations to serialize methods on pypy.
2016-08-30 21:47:34 -04:00
Simon Charette
0d7929266e
Fixed #25109 -- Stopped silencing explicitly specified migration modules import errors.
...
Thanks Tim for the review.
2016-08-30 19:50:42 -04:00
Pavel Sutyrin
3fe92f4477
Clarified topological_sort_as_sets() docstring.
2016-08-29 13:58:39 -04:00
Simon Charette
d5c4ea5246
Fixed #27100 -- Included already applied migration changes in the pre-migrate state.
...
Refs #24100 .
Thanks Tim for the review.
2016-08-24 01:17:48 -04:00
Simon Charette
d1757d8df4
Fixed #27044 -- Included already applied migration changes in the post-migrate state when the execution plan is empty.
...
Refs #24100 .
Thanks tkhyn for the report and Tim for the review.
2016-08-24 01:17:18 -04:00
Tim Graham
ad25fe7350
Fixed #27089 -- Added database alias to InconsistentMigrationHistory message.
2016-08-23 17:39:58 -04:00
Jim Nicholls
76ab885118
Fixed #27054 -- Fixed makemigrations crash with a read-only database.
2016-08-18 08:27:40 -04:00
Akshesh
a71724cd04
Refs #26709 -- Added index name to AddIndex.describe().
2016-08-16 09:11:33 -04:00
Akshesh
6a8372e6ec
Fixed #26808 -- Added Meta.indexes for class-based indexes.
...
* Added the index name to its deconstruction.
* Added indexes to sqlite3.schema._remake_table() so that indexes
aren't dropped when _remake_table() is called.
Thanks timgraham & MarkusH for review and advice.
2016-08-05 18:12:51 -04:00
Jarek Glowacki
d117567c7d
Fixed #27004 -- Made migrations consistency check ignore unapplied squashed migrations.
2016-08-05 18:01:55 -04:00
Akshesh
b92c6b7d56
Refs #26709 -- Replaced Index.get_name() with set_name_with_model().
...
This removes the dependency of the Index class on its 'model'
attribute.
2016-08-02 14:21:41 -04:00
premanand lakshmanan
5da7e3f7fd
Fixed #26114 -- Fixed AlterModelTable.describe() if db_table is None.
2016-07-28 10:33:14 -04:00
Akshesh
bdba0fc195
Fixed typo in autodetector method name.
2016-07-17 15:18:39 -04:00
Tim Graham
944e66cb1d
Reverted "Fixed #25388 -- Added an option to allow disabling of migrations during test database creation"
...
This reverts commit 157d7f1f1d
since it
disables migrations all the time, not just during tests.
2016-07-14 09:21:28 -04:00
Jon Dufresne
b84ecaa736
Fixed #26088 -- Made autodector detect changing proxy model to MTI.
2016-07-12 21:45:17 -04:00
Loïc Bistuer
dab83e5ba1
Fixed #26881 -- Fixed duplicate managers in migrations.
...
When both parent and child models had managers with the same name and
a migrations opt-in both were added to the migration state.
2016-07-09 17:52:52 +07:00
Akshesh
fc3ac65735
Refs #26709 -- Checked allow_migrate_model() in Add/RemoveIndex operations.
2016-07-07 10:37:39 -04:00
Akshesh
52442898e7
Refs #26709 -- Added 'model' argument to SchemaEditor.add/remove_index()
...
This removes the dependency of the Index class on its model attribute
when a name is passed to it.
Thanks to Markush for discussions.
2016-07-07 10:06:55 -04:00
Akshesh
f7e907115f
Refs #26709 -- Added IndexOperation to avoid code duplication.
2016-07-07 07:35:26 -04:00
Akshesh
b1e7d19d4c
Refs #26709 -- Required a name for Indexes passed to AddIndex.
...
Thanks to Markush for discussions.
2016-07-07 07:31:23 -04:00
Akshesh
156e2d59cf
Fixed #26709 -- Added class-based indexes.
...
Added the AddIndex and RemoveIndex operations to use them in migrations.
Thanks markush, mjtamlyn, timgraham, and charettes for review and advice.
2016-06-27 10:41:01 -04:00
Loïc Bistuer
2eb7cb2fff
Fixed #26643 -- Prevented unnecessary AlterModelManagers operations caused by the manager inheritance refactor.
...
This also makes migrations respect the base_manager_name and
default_manager_name model options.
Thanks Anthony King and Matthew Schinckel for the initial patches.
2016-06-20 12:55:57 -04:00
Sergey Fedoseev
7fc4c1db62
Fixed #26710 -- Made CreateModel.references_model() take app_label into account.
2016-06-06 11:49:45 -04:00
Vytis Banaitis
f1e408ff40
Fixed #25044 -- Fixed migrations for renaming ManyToManyField's through model.
2016-05-30 10:17:45 -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
2ff7ef15b0
Refs #26421 -- Refactored Apps.lazy_model_operation() for better checks and tests
2016-05-19 21:33: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
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
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
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
Jarek Glowacki
509379a161
Fixed #25945 , #26292 -- Refactored MigrationLoader.build_graph()
2016-05-08 13:53:26 +02:00
Markus Holtermann
3b383085fb
Fixed #26555 -- Gave deconstructible objects a higher priority during serialization
2016-05-04 22:39:19 +02: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
Matthew Schinckel
5402f3ab09
Fixed #26475 -- Added functools.partial() support to migrations autodetector.
2016-04-19 10:17:11 -04:00
Attila Tovt
02ae5fd31a
Fixed #25850 -- Made migrate/makemigrations error on inconsistent history.
2016-04-05 08:52:08 -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
Iacopo Spalletti
394755b8d9
Fixed #26443 -- Corrected timezone.now in MigrationQuestioner prompt
2016-04-03 01:33:06 +02: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
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
Noenglish Professorbut
f8d20da047
Fixed a few docstring typos.
2016-03-12 08:45:06 -05:00
Jarek Glowacki
34c56687ae
Fixed #26342 -- Prevented unpacking when repr a NodeNotFoundError
2016-03-10 17:27:35 +11:00
Akshesh
b886f166b3
Fixed #26316 -- Factored duplicated code in model/field migration operations.
2016-03-03 18:24:36 -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
db9f21f0ad
Fixed typo in django/db/migrations/state.py.
2016-02-08 07:41:25 -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
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
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
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
Tim Graham
fa9ce4e9a6
Fixed #25922 -- Fixed migrate --fake-initial detection of many-to-many tables.
2015-12-19 13:37:24 -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
Amos Onn
542b7f6c50
Fixed #25896 -- Fixed state bug in SeparateDatabaseAndState.database_backwards().
2015-12-09 11:06:57 -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
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
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
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
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
Benjamin Wohlwend
de31423130
Fixed #25453 -- Reworded makemigration's ask_not_null_alteration suggestion.
2015-09-23 13:33:41 -04: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
Tim Graham
7506616f16
Refs #24215 -- Fixed Python 3.5 compatiblity for unhandled lazy ops error.
2015-09-17 10:06:52 -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
Alex Hill
25c157e4cc
Refs #24215 -- Improved error message for unhandled lazy model operations.
2015-09-07 20:31:58 -04:00
Tyson Clugg
e34226fc37
Fixed #25259 -- Added comments to header of generated migration files
2015-08-31 22:14:21 +10:00
Markus Holtermann
91f701f4fc
Fixed #25280 -- Properly checked regex objects for equality to prevent infinite migrations
...
Thanks Sayid Munawar and Tim Graham for the report, investigation and
review.
2015-08-27 09:52:53 +10:00
Jeremy Satterfield
1175027641
Fixed #25308 -- Made MigrationQuestioner respect MIGRATION_MODULES setting.
2015-08-26 09:04:00 -04:00
Caio Ariede
de41fbb3cf
Fixed #25239 -- Corrected makemigrations numbering if a migration has a number-only filename.
2015-08-14 07:28:37 -04:00
Piper Merriam
537818af87
Fixed #25185 -- Added support for functools.partial serialization in migrations
2015-07-29 10:15:50 -04:00
Piper Merriam
b1e552debf
Fixed #25186 -- Improved migration's serialization of builtins on Python 2.
2015-07-28 18:15:01 -04:00
Andrei Kulakov
db97a88495
Fixed #24375 -- Added Migration.initial attribute
...
The new attribute is checked when the `migrate --fake-initial` option
is used. initial will be set to True for all initial migrations (this
is particularly useful when initial migrations are split) as well as
for squashed migrations.
2015-07-13 15:57:40 -04:00
Kai Richard Koenig
60f795c060
Fixed #25040 -- Fixed migrations state crash with GenericForeignKey
2015-07-02 12:48:29 -04:00
Andriy Sokolovskiy
c0cf73a57d
Refs #20203 -- Allowed adding custom default manager to the model state
...
If the only manager on the model is the default manager defined
by Django (`objects = models.Manager()`), this manager will not
be added to the model state. If it is custom, it needs to be
passed to the model state.
2015-06-29 21:15:37 -04:00
Markus Holtermann
736fb1838c
Used field.clone() where applicable
2015-06-28 15:11:26 +02:00
Tim Graham
7da3923ba0
Sorted imports in __init__.py files.
2015-06-27 11:53:33 -04:00
Markus Holtermann
c5eca74619
Sorted reduce methods in migration optimizer
...
Thanks Tim Graham for the review.
2015-06-16 00:46:04 +02:00
Markus Holtermann
e470f311d6
Fixed #24828 -- Allowed migration optimization across AlterFooTogether
...
The idea behind this change is, that AlterUniqueTogether,
AlterIndexTogether and AlterOrderWithRespectTo can always be moved after
an Add/Alter/Rename/RemoveField operation if they don't refer to the
respective field and are not empty sets / None.
Combined with the optimizations of duplicate AlterUniqueTogether,
AlterIndexTogether, and AlterOrderWithRespectTo operations from
128caa1e16
, these operations are optimized
in a later round of the optimizer.
Thanks Tim Graham for the review.
2015-06-16 00:43:22 +02:00
Tim Graham
3872a33132
Fixed #24979 -- Removed usage of inspect.getargspec().
2015-06-15 13:43:22 -04:00
Tim Graham
4b600ed244
Removed django.utils.functional.total_ordering()
2015-06-15 13:15:24 -04:00
Markus Holtermann
432623603c
Changed reduce method lookup in migration optimizer to dict
...
Thanks Andrew Godwin and Simon Charette for the review.
2015-06-14 20:44:22 +02:00
Markus Holtermann
4a7d374fd5
Explicitly imported migration operations in optimizer
...
Thanks Andrew Godwin for the review.
2015-06-14 20:34:54 +02:00
Markus Holtermann
128caa1e16
Optimized duplicate AlterModelTable/AlterFooTogether/AlterOWRT
...
Thanks Andrew Godwin for the review.
2015-06-14 20:34:48 +02:00