Browse Source

Refs #27236 -- Reverted AlterIndexTogether deprecation.

This partly reverts a6385b382e05a614a99e5a5913d8e631823159a2.
Mariusz Felisiak 2 years ago
parent
commit
c773d5794e

+ 0 - 8
django/db/migrations/operations/models.py

@@ -615,14 +615,6 @@ class AlterIndexTogether(AlterTogetherOptionOperation):
 
     option_name = "index_together"
 
-    system_check_deprecated_details = {
-        "msg": (
-            "AlterIndexTogether is deprecated. Support for it (except in historical "
-            "migrations) will be removed in Django 5.1."
-        ),
-        "id": "migrations.W001",
-    }
-
     def __init__(self, name, index_together):
         super().__init__(name, index_together)
 

+ 0 - 3
docs/internals/deprecation.txt

@@ -19,9 +19,6 @@ details on these changes.
 
 * The model's ``Meta.index_together`` option will be removed.
 
-* The ``AlterIndexTogether`` migration operation will be removed. A stub
-  operation will remain for compatibility with historical migrations.
-
 * The ``length_is`` template filter will be removed.
 
 * The ``django.contrib.auth.hashers.SHA1PasswordHasher``,

+ 0 - 6
docs/ref/checks.txt

@@ -397,12 +397,6 @@ Models
 * **models.W045**: Check constraint ``<constraint>`` contains ``RawSQL()``
   expression and won't be validated during the model ``full_clean()``.
 
-Migrations
-----------
-
-* **migrations.W001**: ``AlterIndexTogether`` is deprecated. Support for it
-  (except in historical migrations) will be removed in Django 5.1.
-
 Security
 --------
 

+ 0 - 7
docs/ref/migration-operations.txt

@@ -106,13 +106,6 @@ Changes the model's set of custom indexes (the
 :attr:`~django.db.models.Options.index_together` option on the ``Meta``
 subclass).
 
-.. deprecated:: 4.2
-
-    ``AlterIndexTogether`` is deprecated in favor of
-    :class:`~django.db.migrations.operations.AddIndex`,
-    :class:`~django.db.migrations.operations.RemoveIndex`, and
-    :class:`~django.db.migrations.operations.RenameIndex` operations.
-
 ``AlterOrderWithRespectTo``
 ---------------------------
 

+ 0 - 2
docs/releases/4.2.txt

@@ -319,8 +319,6 @@ Miscellaneous
   <https://docs.python.org/3/library/secrets.html#recipes-and-best-practices>`_
   for using Python's :py:mod:`secrets` module to generate passwords.
 
-* The ``AlterIndexTogether`` migration operation is deprecated.
-
 * The ``length_is`` template filter is deprecated in favor of :tfilter:`length`
   and the ``==`` operator within an :ttag:`{% if %}<if>` tag. For example
 

+ 0 - 0
tests/check_framework/migrations_test_apps/__init__.py


+ 0 - 0
tests/check_framework/migrations_test_apps/index_together_app/__init__.py


+ 0 - 5
tests/check_framework/migrations_test_apps/index_together_app/apps.py

@@ -1,5 +0,0 @@
-from django.apps import AppConfig
-
-
-class IndexTogetherAppConfig(AppConfig):
-    name = "check_framework.migrations_test_apps.index_together_app"

+ 0 - 16
tests/check_framework/migrations_test_apps/index_together_app/migrations/0001_initial.py

@@ -1,16 +0,0 @@
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    operations = [
-        migrations.CreateModel(
-            "SimpleModel",
-            [
-                ("field", models.IntegerField()),
-            ],
-        ),
-        migrations.AlterIndexTogether("SimpleModel", index_together=(("id", "field"),)),
-    ]

+ 0 - 0
tests/check_framework/migrations_test_apps/index_together_app/migrations/__init__.py


+ 0 - 21
tests/check_framework/test_migrations.py

@@ -1,11 +1,7 @@
-from unittest.mock import ANY
-
 from django.core import checks
-from django.core.checks.migrations import check_migration_operations
 from django.db import migrations
 from django.db.migrations.operations.base import Operation
 from django.test import TestCase
-from django.test.utils import override_settings
 
 
 class DeprecatedMigrationOperationTests(TestCase):
@@ -54,23 +50,6 @@ class DeprecatedMigrationOperationTests(TestCase):
             ],
         )
 
-    @override_settings(
-        INSTALLED_APPS=["check_framework.migrations_test_apps.index_together_app"]
-    )
-    def tests_check_alter_index_together(self):
-        errors = check_migration_operations()
-        self.assertEqual(
-            errors,
-            [
-                checks.Warning(
-                    "AlterIndexTogether is deprecated. Support for it (except in "
-                    "historical migrations) will be removed in Django 5.1.",
-                    obj=ANY,
-                    id="migrations.W001",
-                )
-            ],
-        )
-
 
 class RemovedMigrationOperationTests(TestCase):
     def test_default_operation(self):

+ 0 - 1
tests/migrations/test_operations.py

@@ -3353,7 +3353,6 @@ class OperationTests(OperationTestBase):
             definition[2], {"name": "Pony", "index_together": {("pink", "weight")}}
         )
 
-    # RemovedInDjango51Warning.
     def test_alter_index_together_remove(self):
         operation = migrations.AlterIndexTogether("Pony", None)
         self.assertEqual(

+ 0 - 3
tests/migrations/test_optimizer.py

@@ -211,7 +211,6 @@ class OptimizerTests(SimpleTestCase):
             migrations.AlterUniqueTogether("Foo", [["a", "b"]])
         )
 
-    # RemovedInDjango51Warning.
     def test_create_alter_index_delete_model(self):
         self._test_create_alter_foo_delete_model(
             migrations.AlterIndexTogether("Foo", [["a", "b"]])
@@ -249,7 +248,6 @@ class OptimizerTests(SimpleTestCase):
             migrations.AlterUniqueTogether("Foo", [["a", "c"]]),
         )
 
-    # RemovedInDjango51Warning.
     def test_alter_alter_index_model(self):
         self._test_alter_alter_model(
             migrations.AlterIndexTogether("Foo", [["a", "b"]]),
@@ -1057,7 +1055,6 @@ class OptimizerTests(SimpleTestCase):
             migrations.AlterUniqueTogether("Foo", [["a", "b"]])
         )
 
-    # RemovedInDjango51Warning.
     def test_create_alter_index_field(self):
         self._test_create_alter_foo_field(
             migrations.AlterIndexTogether("Foo", [["a", "b"]])

+ 0 - 20
tests/model_options/test_index_together_deprecation.py

@@ -1,20 +0,0 @@
-from django.db import models
-from django.test import TestCase
-from django.utils.deprecation import RemovedInDjango51Warning
-
-
-class IndexTogetherDeprecationTests(TestCase):
-    def test_warning(self):
-        msg = (
-            "'index_together' is deprecated. Use 'Meta.indexes' in "
-            "'model_options.MyModel' instead."
-        )
-        with self.assertRaisesMessage(RemovedInDjango51Warning, msg):
-
-            class MyModel(models.Model):
-                field_1 = models.IntegerField()
-                field_2 = models.IntegerField()
-
-                class Meta:
-                    app_label = "model_options"
-                    index_together = ["field_1", "field_2"]