summaryrefslogtreecommitdiff
path: root/django/db/migrations/executor.py
Commit message (Collapse)AuthorAgeFilesLines
* Refs #33476 -- Refactored code to strictly match 88 characters line length.Mariusz Felisiak2022-02-071-2/+2
|
* Refs #33476 -- Reformatted code with Black.django-bot2022-02-071-22/+47
|
* Fixed #23273 -- Avoided creation of django_migrations table when there are ↵Jacob Walls2021-12-301-2/+6
| | | | no migrations to apply.
* Fixed #24900 -- Allowed migrating backward to squashed migrations.Jacob Walls2021-08-301-0/+9
|
* Refs #29898 -- Changed ProjectState.real_apps to set.Mariusz Felisiak2021-08-111-1/+1
|
* Fixed #25255 -- Recorded unapplied squashed migrations.Jacob Walls2021-06-081-3/+2
|
* Fixed #32374 -- Stopped recording migration application before deferred SQL.Simon Charette2021-01-211-2/+3
| | | | | | | | Migrations cannot be recorded in the same transaction as its associated DDL operations when some of it is deferred until the schema editor context exits. Regression in c86a3d80a25acd1887319198ca21a84c451014ad.
* Refs #31318 -- Moved MigrationExecutor.collect_sql() to MigrationLoader.David Wobrock2020-03-091-18/+0
| | | | collect_sql() is used only in sqlmigrate.
* Fixed #31233 -- Closed database connections and cursors after use.Jon Dufresne2020-02-061-4/+2
|
* Fixed #29808 -- Fixed initial migration detection when identifiers are ↵Hasan Ramezani2019-11-151-3/+17
| | | | | | case-insensitive. Thanks Simon Charette for the review.
* Refs #29808 -- Optimized MigrationExecutor.detect_soft_applied().Hasan Ramezani2019-11-151-8/+10
| | | | | | | Use set() for iterables used only for containment checks. Simplify column checks O(n) instead of O(2n). Thanks Simon Charette for an idea.
* Refs #30186 -- Changed MigrationRecorder.applied_migrations() to return a dict.Tim Schilling2019-03-071-5/+5
|
* Fixed #29721 -- Ensured migrations are applied and recorded atomically.Sanyam Khurana2018-10-241-4/+11
|
* Fixed #28853 -- Updated connection.cursor() uses to use a context manager.Jon Dufresne2017-11-281-1/+2
|
* Fixed #27858 -- Prevented read-only management commands from creating the ↵Marti Raudsepp2017-06-191-0/+4
| | | | | | | | | 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.
* Refs #27656 -- Updated django.db docstring verbs according to PEP 257.Anton Samarchyan2017-02-281-17/+13
|
* Refs #23919 -- Stopped inheriting from object to define new style classes.Simon Charette2017-01-191-1/+1
|
* Refs #23919 -- Removed encoding preambles and future importsClaude Paroz2017-01-181-2/+0
|
* Fixed #27100 -- Included already applied migration changes in the ↵Simon Charette2016-08-241-26/+27
| | | | | | | | pre-migrate state. Refs #24100. Thanks Tim for the review.
* Fixed #27044 -- Included already applied migration changes in the ↵Simon Charette2016-08-241-2/+8
| | | | | | | | post-migrate state when the execution plan is empty. Refs #24100. Thanks tkhyn for the report and Tim for the review.
* Fixed #26647 -- Included the state of all applied migrations when migrating ↵Simon Charette2016-05-261-2/+3
| | | | | | forward. Thanks Jasper Maes for the detailed report.
* Fixed #24100 -- Made the migration signals dispatch its plan and apps.Simon Charette2016-05-151-7/+45
| | | | Thanks Markus for your contribution and Tim for your review.
* Fixed #26117 -- Consulted database routers in initial migration detection.Scott Sexton2016-02-251-3/+16
| | | | Thanks Simon Charette for help.
* Fixed #25833 -- Added support for non-atomic migrations.Pankrat2016-02-051-3/+3
| | | | | Added the Migration.atomic attribute which can be set to False for non-atomic migrations.
* Fixed #25922 -- Fixed migrate --fake-initial detection of many-to-many tables.Tim Graham2015-12-191-4/+17
|
* Fixed #24743, #24745 -- Optimized migration plan handlingMarkus Holtermann2015-09-191-27/+77
| | | | | | | | | | | | | | | | 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.
* Fixed #24375 -- Added Migration.initial attributeAndrei Kulakov2015-07-131-9/+32
| | | | | | | 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.
* Cleaned up docstring style, per Tim Graham review.Carl Meyer2015-06-031-1/+0
|
* Refs #24628 -- Added a second test and a docstring comment to avoid regression.Carl Meyer2015-06-031-0/+8
|
* Fixed #24628 -- Fixed applied status for squashed migrations.Carl Meyer2015-06-021-0/+11
|
* Refs #24554 -- Prevented rendering of unused migrationsMarkus Holtermann2015-04-011-0/+9
| | | | Thanks Claude Paroz and Tim Graham for the review
* Fixed #24554 -- Sped up migrations by rendering initial apps when they are ↵Markus Holtermann2015-04-011-7/+14
| | | | | | | | | | 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
* Fixed #24366 -- Optimized traversal of large migration dependency graphs.Marten Kenbeek2015-02-231-1/+1
| | | | | | | | | | | 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.
* Fixed #24184 -- Prevented automatic soft-apply of migrationsMarkus Holtermann2015-02-131-8/+9
| | | | | | | | | | | | 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.
* Sorted imports with isort; refs #23860.Tim Graham2015-02-061-1/+2
|
* Fixed #24129 -- Added indicator that migrations are rendering the initial stateMarkus Holtermann2015-01-121-0/+4
| | | | Thanks Tim Graham for the review.
* Fixed #24123 -- Used all available migrations to generate the initial ↵Markus Holtermann2015-01-121-7/+25
| | | | | | migration state Thanks Collin Anderson for the input when creating the patch and Tim Graham for the review.
* Fixed #23745 -- Reused states as much as possible in migrationsClaude Paroz2015-01-021-11/+13
| | | | Thanks Tim Graham and Markus Holtermann for the reviews.
* Passed around the state between migrationsClaude Paroz2015-01-021-9/+16
| | | | Refs #23745.
* Replaced migration state render() by apps cached propertyClaude Paroz2015-01-021-1/+1
| | | | Refs #23745.
* Fixed #23410 -- Avoided unnecessary rollbacks in related apps when migrating ↵Carl Meyer2014-11-191-6/+11
| | | | backwards.
* Revert "Fixed #23474 -- Prevented migrating backwards from unapplying the ↵Tim Graham2014-09-241-9/+5
| | | | | | wrong migrations." This reverts commit abcf28a07695a45cb5fb15b81bffc97bea5e0be3.
* Called table_names instead of get_table_list in migrationsClaude Paroz2014-09-231-1/+1
|
* Fixed #23474 -- Prevented migrating backwards from unapplying the wrong ↵valtron2014-09-151-5/+9
| | | | migrations.
* Fix soft_applied in a way that doesn't break testsAndrew Godwin2014-07-291-2/+4
|
* Make detect_soft_applied exit correctly on non-create migrationsAndrew Godwin2014-07-291-0/+2
|
* Fixed #23093: soft application detection for swapped modelsAndrew Godwin2014-07-251-0/+5
|
* Fixed #22881 -- Better soft_applied migration detectionChris Beaven2014-06-231-3/+5
|
* Added a bunch of missing unicode_literalsClaude Paroz2014-05-061-0/+2
| | | | Refs #22564.
* Fixed #22485: Include all unmigrated apps in project state by default.Andrew Godwin2014-04-301-4/+4
|