Browse Source

Refs #23359 -- Removed the migrate --list option per deprecation timeline.

Tim Graham 9 years ago
parent
commit
b6e6fcf326

+ 0 - 23
django/core/management/commands/migrate.py

@@ -2,12 +2,10 @@
 from __future__ import unicode_literals
 
 import time
-import warnings
 from collections import OrderedDict
 from importlib import import_module
 
 from django.apps import apps
-from django.core.management import call_command
 from django.core.management.base import BaseCommand, CommandError
 from django.core.management.sql import (
     emit_post_migrate_signal, emit_pre_migrate_signal,
@@ -17,7 +15,6 @@ from django.db.migrations.autodetector import MigrationAutodetector
 from django.db.migrations.executor import MigrationExecutor
 from django.db.migrations.loader import AmbiguityError
 from django.db.migrations.state import ProjectState
-from django.utils.deprecation import RemovedInDjango110Warning
 from django.utils.module_loading import module_has_submodule
 
 
@@ -45,8 +42,6 @@ class Command(BaseCommand):
             help='Detect if tables already exist and fake-apply initial migrations if so. Make sure '
                  'that the current database schema matches your initial migration before using this '
                  'flag. Django will only check for an existing table name.')
-        parser.add_argument('--list', '-l', action='store_true', dest='list', default=False,
-            help='Show a list of all known migrations and which are applied.')
         parser.add_argument('--run-syncdb', action='store_true', dest='run_syncdb',
             help='Creates tables for apps without migrations.')
 
@@ -65,24 +60,6 @@ class Command(BaseCommand):
         db = options.get('database')
         connection = connections[db]
 
-        # If they asked for a migration listing, quit main execution flow and show it
-        if options.get("list", False):
-            warnings.warn(
-                "The 'migrate --list' command is deprecated. Use 'showmigrations' instead.",
-                RemovedInDjango110Warning, stacklevel=2)
-            self.stdout.ending = None  # Remove when #21429 is fixed
-            return call_command(
-                'showmigrations',
-                '--list',
-                app_labels=[options['app_label']] if options['app_label'] else None,
-                database=db,
-                no_color=options.get('no_color'),
-                settings=options.get('settings'),
-                stdout=self.stdout,
-                traceback=options.get('traceback'),
-                verbosity=self.verbosity,
-            )
-
         # Hook for backends needing any database preparation
         connection.prepare_database()
         # Work out which apps have migrations and which do not

+ 0 - 5
docs/ref/django-admin.txt

@@ -768,11 +768,6 @@ The ``--run-syncdb`` option allows creating tables for apps without migrations.
 While this isn't recommended, the migrations framework is sometimes too slow
 on large projects with hundreds of models.
 
-.. deprecated:: 1.8
-
-    The ``--list`` option has been moved to the :djadmin:`showmigrations`
-    command.
-
 runserver [port or address:port]
 --------------------------------
 

+ 1 - 33
tests/migrations/test_commands.py

@@ -9,9 +9,8 @@ from django.apps import apps
 from django.core.management import CommandError, call_command
 from django.db import DatabaseError, connection, models
 from django.db.migrations.recorder import MigrationRecorder
-from django.test import ignore_warnings, mock, override_settings
+from django.test import mock, override_settings
 from django.utils import six
-from django.utils.deprecation import RemovedInDjango110Warning
 from django.utils.encoding import force_text
 
 from .models import UnicodeModel, UnserializableModel
@@ -160,37 +159,6 @@ class MigrateTests(MigrationTestBase):
         with self.assertRaisesMessage(CommandError, "Conflicting migrations detected"):
             call_command("migrate", "migrations")
 
-    @ignore_warnings(category=RemovedInDjango110Warning)
-    @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations"})
-    def test_migrate_list(self):
-        """
-        Tests --list output of migrate command
-        """
-        out = six.StringIO()
-        with mock.patch('django.core.management.color.supports_color', lambda *args: True):
-            call_command("migrate", list=True, stdout=out, verbosity=0, no_color=False)
-        self.assertEqual(
-            '\x1b[1mmigrations\n\x1b[0m'
-            ' [ ] 0001_initial\n'
-            ' [ ] 0002_second\n',
-            out.getvalue().lower()
-        )
-
-        call_command("migrate", "migrations", "0001", verbosity=0)
-
-        out = six.StringIO()
-        # Giving the explicit app_label tests for selective `show_migration_list` in the command
-        call_command("migrate", "migrations", list=True, stdout=out, verbosity=0, no_color=True)
-        self.assertEqual(
-            'migrations\n'
-            ' [x] 0001_initial\n'
-            ' [ ] 0002_second\n',
-            out.getvalue().lower()
-        )
-
-        # Cleanup by unmigrating everything
-        call_command("migrate", "migrations", "zero", verbosity=0)
-
     @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations"})
     def test_showmigrations_list(self):
         """