summaryrefslogtreecommitdiff
path: root/django/db/migrations
AgeCommit message (Collapse)Author
2021-12-30Fixed #23273 -- Avoided creation of django_migrations table when there are ↵Jacob Walls
no migrations to apply.
2021-11-22Fixed #33305 -- Fixed autodetector crash for ForeignKey with hardcoded "to" ↵Baptiste Mispelon
attribute. Co-authored-by: Simon Charette <charette.s@gmail.com>
2021-11-02Fixed #33234 -- Fixed autodetector crash for proxy models inheriting from ↵Mariusz Felisiak
non-model class. Regression in aa4acc164d1247c0de515c959f7b09648b57dc42. Thanks Kevin Marsh for the report.
2021-10-27Fixed #33201 -- Made RenameModel operation a noop for models with db_table.Iuri de Silvio
2021-10-25Fixed #31503 -- Made autodetector remove unique/index_together before ↵David Wobrock
altering fields.
2021-10-19Fixed #33197 -- Made field rename with prior matching db_column change a noop.Simon Charette
Thanks Jacob Walls for the report.
2021-10-15Fixed #23953 -- Made makemigrations continue number sequence for squashed ↵Jacob Walls
migrations.
2021-10-12Fixed #29470 -- Logged makemigrations automatic decisions in non-interactive ↵Jacob Walls
mode.
2021-10-11Refs #32900 -- Restored '[y/N]' in questioner prompt when merging migrations.Seonghyeon Cho
Regression in 02bc7161ec477afd4a7b328936eb8adac078d7b9.
2021-10-06Fixed #23408 -- Added migrations questioner prompt for adding unique fields ↵Jacob Walls
with a callable default.
2021-09-16Fixed #32365 -- Made zoneinfo the default timezone implementation.Carlton Gibson
Thanks to Adam Johnson, Aymeric Augustin, David Smith, Mariusz Felisiak, Nick Pope, and Paul Ganssle for reviews.
2021-08-30Fixed #24900 -- Allowed migrating backward to squashed migrations.Jacob Walls
2021-08-27Fixed #32900 -- Improved migrations questioner prompts.Mateo Radman
2021-08-26Refs #29898 -- Changed fields in ProjectState's relation registry to dict.Mariusz Felisiak
2021-08-25Refs #29898 -- Made ProjectState encapsulate alterations in relations registry.Manav Agarwal
Thanks Simon Charette and Chris Jerdonek for reviews. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-08-20Refs #29898 -- Refactored out ↵Manav Agarwal
ProjectState.resolve_model_relations()/resolve_model_field_relations() hooks.
2021-08-19Fixed #33014 -- Made ProjectState raise exception when real_apps argument is ↵Chris Jerdonek
not a set.
2021-08-11Refs #29898 -- Changed ProjectState.real_apps to set.Mariusz Felisiak
2021-08-04Fixed typos in migrations tests, comments, and error message.Jacob Walls
2021-07-27Refs #32956 -- Changed "afterwards" to "afterward" in docs and comments.David Smith
This also removes unnecessary comments with the previous spelling. AP Stylebook has a short entry to advise the preferred spelling for "en-us". "Afterwards" is preferred in British English.
2021-07-01Fixed #32893 -- Fixed serialization of models.Model class in migrations.abhiabhi94
Migrations assumed that an import of the models.Model class must already be included when it's serialized, but for models with only custom fields this was not necessarily the case. Thanks Jaap Joris Vens for the report.
2021-06-29Refs #29898 -- Moved state_forwards()'s logic from migration operations to ↵manav014
ProjectState. Thanks Simon Charette and Markus Holtermann for reviews.
2021-06-22Refs #29898 -- Moved django.db.migrations.operations.utils to ↵manav014
django.db.migrations.utils.
2021-06-08Fixed #25255 -- Recorded unapplied squashed migrations.Jacob Walls
2021-05-29Fixed typos in comments and docs.David Sanders
2021-04-16Fixed #29899 -- Made autodetector use model states instead of model classes.David Wobrock
Thanks Simon Charette and Markus Holtermann for reviews.
2021-04-16Refs #29899 -- Improved variable names in ↵David Wobrock
MigrationAutodetector._detect_changes().
2021-04-16Refs #29899 -- Moved resolve_relation() to django.db.migrations.utils.David Wobrock
2021-03-12Fixed #31516 -- Improved naming of migrations with multiple operations.manav014
52 gives 60 in total (52 + 5 + 3). Co-authored-by: Adam Johnson <me@adamj.eu>
2021-03-12Refs #31516, Refs #31703 -- Made makemigrations always name initial ↵Adam Johnson
migrations "initial".
2021-02-19Fixed #32256 -- Fixed migration optimization crash when swapping field names.Hasan Ramezani
This disables optimization of RenameField operation when an old field name is referenced in subsequent operations. Co-authored-by: InvalidInterrupt <InvalidInterrupt@users.noreply.github.com>
2021-02-10Fixed #32355 -- Dropped support for Python 3.6 and 3.7Mariusz Felisiak
2021-01-21Fixed #32374 -- Stopped recording migration application before deferred SQL.Simon Charette
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.
2021-01-13Fixed #26167 -- Added support for functional indexes.Hannes Ljungberg
Thanks Simon Charette, Mads Jensen, and Mariusz Felisiak for reviews. Co-authored-by: Markus Holtermann <info@markusholtermann.eu>
2020-12-29Fixed #32302 -- Allowed migrations to be loaded from regular packages with ↵William Schwartz
no __file__ attribute. The migrations loader prevents the use of PEP-420 namespace packages for holding apps' migrations modules. Previously the loader tested for this only by checking that app.migrations.__file__ is present. This prevented migrations' being found in frozen Python environments that don't set __file__ on any modules. Now the loader *additionally* checks whether app.migrations.__path__ is a list because namespace packages use a different type for __path__. Namespace packages continue to be forbidden, and, in fact, users of normal Python environments should experience no change whatsoever.
2020-12-22Refs #32285 -- Made AppConfigStub do not call super().__init__().Hasan Ramezani
Calling super().__init__() is unnecessary and enforces the use of various workarounds.
2020-12-18Fixed #32262 -- Fixed migration optimization for model creation and Meta ↵Hasan Ramezani
options removal.
2020-08-28Fixed #31954 -- Fixed migration optimization for MTI model creation with ↵Koen De Wit
parent model with mixed case app label.
2020-08-08Fixed #31831 -- Fixed migration operations ordering when adding ↵Iuri de Silvio
order_with_respect_to and constraints/indexes.
2020-07-22Reverted "Fixed #30300 -- Allowed migrations to be loaded from directories ↵Tim Graham
without __init__.py file." This reverts commit 3cd3bebe8921e14b911b36b2a1cbceef8fb6294e.
2020-07-10Sorted conflicting migrations by names.François Freitag
2020-06-24Fixed #31529 -- Added support for serialization of pathlib.Path/PurePath and ↵Nick Pope
os.PathLike in migrations.
2020-06-24Fixed #31703 -- Made makemigrations name all initial migrations "initial".Jon Dufresne
When the MigrationAutodetector creates more than one initial migration in a app, name all initial migrations "initial" rather than the opaque "auto_<DATE>_<TIME>" name. Initial migrations that have a descriptive name continue to use the descriptive name.
2020-06-24Refs #31703 -- Moved MigrationAutodetector.suggest_name() to Migration.Jon Dufresne
Allows expanding the method to inspect additional attributes of the migration instance. For example, the Migration.initial attribute.
2020-05-28Fixed #31468 -- Allowed specifying migration filename in Operation.Adam Johnson
This adds also suggested filename for many built-in operations.
2020-05-26Fixed #31416 -- Made autodetector find dependencies for MTI model creation ↵Nan Liu
on base fields removal. Removing a base field must take place before adding a new inherited model that has a field with the same name.
2020-05-11Refs #30116 -- Simplified regex match group access with Match.__getitem__().Jon Dufresne
The method has been available since Python 3.6. The shorter syntax is also marginally faster.
2020-05-04Refs #30573 -- Rephrased "Of Course" and "Obvious(ly)" in documentation and ↵Adam Johnson
comments.
2020-04-22Fixed #31499 -- Stored ModelState.fields into a dict.Simon Charette
This allows the removal of its O(n) .get_field_by_name method and many other awkward access patterns. While fields were initially stored in a list to preserve the initial model definiton field ordering the auto-detector doesn't take field ordering into account and no operations exists to reorder fields of a model. This makes the preservation of the field ordering completely superflous because field reorganization after the creation of the model state wouldn't be taken into account.
2020-04-22Refs #31499 -- Ignored field ordering to determine ModelState equality.Simon Charette