Patrik Sletmo
adfdb9f169
Fixed #29814 -- Added support for NoneType serialization in migrations.
2018-10-11 09:02:14 -04:00
Simon Charette
9142bebff2
Refs #11964 -- Changed CheckConstraint() signature to use keyword-only arguments.
...
Also renamed the `constraint` argument to `check` to better represent which
part of the constraint the provided `Q` object represents.
2018-10-02 10:53:04 -04:00
Tim Graham
4fc8fb7dda
Tested showmigrations with apps without migrations.
2018-09-28 09:56:40 -04:00
Tim Graham
495abe0095
Refs #29198 -- Fixed migrate --plan crash if RunSQL uses a list or tuple.
...
Also fixed test failures if sqlparse isn't installed.
2018-09-19 17:13:39 -04:00
Simon Charette
a4495f4b98
Fixed #29755 -- Made migrations detect changes to Meta.default_related_name.
2018-09-14 09:09:17 -04:00
Tim Graham
32fbccab40
Fixed #29749 -- Made the migrations loader ignore files starting with a tilde or underscore.
...
Regression in 29150d5da8
.
2018-09-11 12:51:11 -04:00
Krzysztof Gogolewski
db926a0048
Fixed #29243 -- Improved efficiency of migration graph algorithm.
2018-09-10 09:57:31 -04:00
Claude Paroz
50b8493581
Refs #29654 -- Replaced three dots with ellipsis character in output strings.
2018-08-22 09:13:58 -04:00
Claude Paroz
201017df30
Fixed #29654 -- Made text truncation an ellipsis character instead of three dots.
...
Thanks Sudhanshu Mishra for the initial patch and Tim Graham for the review.
2018-08-21 17:46:45 +02:00
Calvin DeBoer
058d33f3ed
Fixed #29198 -- Added migrate --plan option.
2018-08-03 15:22:42 -04:00
Tim Graham
c72dde41e6
Fixed #29595 -- Allowed using timedelta in migrations questioner.
...
Refs #29600 -- Removed usage of django.utils.datetime_safe in migrations.
2018-07-27 11:53:49 -04:00
Simon Charette
dc1dcad0f5
Refs #24424 -- Added regression tests for MTI-inheritance model removal.
...
The issue was fixed as a side effect of implementing RemoveField's reduction
of DeleteModel to a DeleteModel in ad82900ad9
.
2018-07-25 12:07:41 -04:00
Mariusz Felisiak
5a017eef4c
Fixed test_migrate_syncdb_deferred_sql_executed_with_schemaeditor() on Oracle.
2018-07-22 08:47:55 +02:00
Tim Graham
8d4ab0c41f
Added tests for migrate logging and error messages.
2018-07-20 20:37:52 -04:00
Simon Charette
8e3f22f251
Fixed #27731 -- Implemented CreateModel/AlterFooOperation reduction.
...
This should alleviate the side effects of disabling the AlterFooOperation
reduction with RemoveField to fix refs #28862 during migration squashing
because CreateModel can perform a reduction with RemoveField.
Thanks Nick Pope for the review.
2018-07-19 17:06:01 -04:00
Simon Charette
ed7898e1b5
Fixed #28862 -- Disabled optimization of AlterFooTogether and RemoveField.
...
AlterFooTogether operations cannot be swapped with RemoveField operations on
the same model as they could be removing the the same field as well.
Since AlterFooTogether operations don't track what their previous value was,
it's impossible to determine whether or not the optimization is safe so the
only way to proceed is to disable the optimization.
Thanks Ramiro Morales for the in-depth analysis of the issue.
Refs #24828
2018-07-19 17:06:01 -04:00
Simon Charette
37cafbfb79
Fixed #27845 -- Allowed both right and left optimizations of operations.
...
Thanks Raphael Gaschignard for the suggestion.
2018-07-11 10:49:50 -04:00
Simon Charette
0025dd5eb4
Allowed RemoveField operations to be optimized through.
2018-07-11 10:49:50 -04:00
Simon Charette
50b8c98a0f
Relaxed FieldOperation.references_field remote field checking.
2018-07-11 10:49:50 -04:00
Simon Charette
ad82900ad9
Fixed #26720 -- Prevented invalid CreateModel optimizations of related fields.
2018-07-11 10:49:50 -04:00
Simon Charette
a97845a823
Fixed #27768 -- Allowed migration optimization of CreateModel order.
...
Thanks Ed Morley from Mozilla for the tests.
2018-07-11 10:49:50 -04:00
Simon Charette
d3a935f01f
Refs #27768 -- Reversed order of optimized and in-between operations.
...
Operations can only be optimized through if they don't reference any of the
state the operation they are compared against defines or alters, so it's
safe to reverse the order.
2018-07-11 10:49:50 -04:00
Simon Charette
e4c0878b30
Refs #22875 -- Fixed an optimizer test to use a valid scenario.
...
An explicit intermediary many-to-many relationship must declare forward and
reverse foreign keys. The original issue was in the autodetector as these
operations shouldn't have been generated in this order in the first place
which is tested by AutodetectorTests.test_create_with_through_model.
2018-07-10 16:47:57 -04:00
Ian Foote
952f05a6db
Fixed #11964 -- Added support for database check constraints.
2018-07-10 15:32:33 -04:00
Sergey Fedoseev
338f741c5e
Fixed #29546 -- Deprecated django.utils.timezone.FixedOffset.
2018-07-09 16:33:36 -04:00
oliver
6b3e17bab6
Fixed #29518 -- Added validation for sqlmigrate's app_label argument.
2018-06-25 10:43:12 -04:00
Claude Paroz
fc26615164
Refs #29506 -- Added validation for squashmigrations' app_label option.
2018-06-20 15:46:43 -04:00
Claude Paroz
c723a1ff8e
Fixed #29506 -- Added validation for migrate's app_label option.
...
Thanks MyungSeKyo for the report and the initial patch.
2018-06-20 15:42:40 -04:00
Claude Paroz
c3c7d15c34
Refs #29469 -- Reused get_app_config() error message in makemigrations error.
2018-06-20 15:41:51 -04:00
Claude Paroz
abbc9cd71c
Moved makemigrations app_label validation tests.
2018-06-20 15:33:23 -04:00
oliver
78972af367
Fixed #29469 -- Added a helpful makemigrations error if app_label contains dots.
2018-06-16 15:18:57 -04:00
Tim Graham
63f90f55f3
Fixed #29498 -- Fixed a missing pyc test file in source distribution.
2018-06-15 14:18:08 -04:00
Jeff
fcc4e251db
Fixed #29000 -- Fixed RenameModel's renaming of a M2M column when run after RenameField.
...
Regression in 45ded053b1
.
2018-06-15 11:51:09 -04:00
Morgan Aubert
704443acac
Fixed #29363 -- Added SimpleTestCase.assertWarnsMessage().
2018-05-09 11:40:28 -04:00
Sanket Saurav
079f324357
Fixed #28913 -- Fixed error handling when MIGRATIONS_MODULES specifies a nonexistent top-level package.
2018-05-05 18:26:33 -04:00
Jon Dufresne
f3b1c3bd06
Refs #23406 -- Fixed "invalid escape sequence" warning in migrations test.
2018-04-02 22:54:05 -04:00
Simon Charette
2156565b5b
Fixed #29245 -- Made autodetector treat field renames + db_column addition as RenameField.
2018-03-28 12:43:43 -04:00
Dan Watson
29150d5da8
Fixed #23406 -- Allowed migrations to be loaded from .pyc files.
2018-03-23 13:20:38 -04:00
Mariusz Felisiak
362813d628
Fixed hanging indentation in various code.
2018-03-16 10:54:34 +01:00
Carlton Gibson
5b083a824e
Fixed #29180 -- Fixed a regression where migrations already in the plan were readded.
...
Regression in a38ae914d8
.
2018-03-09 08:59:57 +01:00
Tim Graham
0a37ea56d0
Fixed #29091 -- Fixed makemigrations crash if migrations directory doesn't have __init__.py.
...
Regression in aadd3aeb2b
.
2018-01-31 09:36:36 -05:00
Simon Charette
dcdd219ee1
Fixed #25817 -- Made RenameField repoint to_field/to_fields references.
...
Also updated the autodetector to assume the RenameField operation will
perform the required repointing.
2017-12-30 14:59:22 -05:00
Mariusz Felisiak
83a36ac49a
Removed unnecessary trailing commas and spaces in various code.
2017-12-28 21:07:29 +01:00
Simon Charette
9f7772e098
Fixed #28884 -- Fixed crash on SQLite when renaming a field in a model referenced by a ManyToManyField.
...
Introspected database constraints instead of relying on _meta.related_objects
to determine whether or not a table or a column is referenced on rename
operations.
This has the side effect of ignoring both db_constraint=False and virtual
fields such as GenericRelation which aren't backend by database level
constraints and thus shouldn't prevent the rename operations from being
performed in a transaction.
Regression in 095c1aaa89
.
Thanks Tim for the additional tests and edits, and Mariusz for the review.
2017-12-22 15:19:05 -05:00
Sergey Fedoseev
183fb7b2b9
Fixed #28870 -- Added support for functools.partialmethod serialization in migrations.
2017-12-06 14:49:37 -05:00
Дилян Палаузов
d2afa5eb23
Fixed #28860 -- Removed unnecessary len() calls.
2017-12-04 10:35:23 -05:00
Simon Charette
095c1aaa89
Fixed #28849 -- Fixed referenced table and column rename on SQLite.
...
Thanks Ramiro for the input and Tim for the review.
2017-12-01 22:12:24 -05:00
Tim Graham
c3e0adcad8
Fixed #28305 -- Fixed "Cannot change column 'x': used in a foreign key constraint" crash on MySQL with a sequence of AlterField or RenameField operations.
...
Regression in 45ded053b1
.
2017-12-01 19:07:46 -05:00
Дилян Палаузов
6c0042430e
Fixed #28776 -- Fixed a/an/and typos in docs and comments.
2017-11-06 22:41:03 -05:00
Tim Graham
941b0a5b33
Fixed #28708 -- Added constants to detect the Python version.
2017-10-13 10:11:15 -04:00
Jeremy Satterfield
0891503fad
Fixed #28493 -- Made migrations autodetector find dependencies for model renaming.
2017-09-04 15:15:39 -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
Evan Grim
5893eaddf4
Added missing test for RunPython behavior when unapplying.
2017-08-10 19:19:48 -04:00
Mads Jensen
a51c4de194
Used assertRaisesMessage() to test Django's error messages.
2017-07-29 19:07:23 -04:00
Melvyn Sopacua
5bb9b9a388
Fixed #28363 -- Allowed naming the migration generated by squashmigrations.
2017-07-26 13:47:35 -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
Mariusz Felisiak
081e787160
Refs #23919 -- Stopped inheriting from object to define new style classes.
...
Tests and docs complement to cecc079168
.
2017-06-26 10:30:31 -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
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
Markus Holtermann
8e352876c3
Refs #22397 -- Removed model in test cleanup
...
The test was failing when using --keepdb due to a pre-existing
PonyStables model.
Thanks Florian Apolloner for the report
2017-05-09 11:15:41 +02:00
Ian Foote
63afe3a2bf
Fixed #28043 -- Prevented AddIndex and RemoveIndex from mutating model state.
2017-05-01 09:32:44 -04:00
Michiel Beijen
5e8625ba64
Renamed "Mac OS X" to "macOS" in docs.
2017-04-24 20:16:09 -04:00
Tim Graham
eb9a3bd63a
Refs #26605 -- Isolated a migrations state test.
2017-04-10 08:13:45 -04:00
Ingo Klöcker
67b2b1f116
Refs #26605 -- Added migrations state test for a swappable model inheriting an abstract model inheriting concrete model.
...
Thanks Sébastien Diemer for the report and test.
2017-04-07 13:41:07 -04: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
Tim Graham
ab83d4d8fe
Added multi_db=True to test cases that access the 'other' db connection.
...
Fixed a failure in the context processors tests when running in
reverse on MySQL due to an extra query after refs #27683 .
2017-02-10 08:19:32 -05:00
Claude Paroz
c651331b34
Converted usage of ugettext* functions to their gettext* aliases
...
Thanks Tim Graham for the review.
2017-02-07 09:04:04 +01:00
Mads Jensen
ce69a421f6
Added tests for various __repr__() methods.
2017-02-04 11:29:39 -05:00
Tim Graham
29f607927f
Fixed spelling of "nonexistent".
2017-02-03 08:01:45 -05:00
Chillar Anand
6478e07a62
Refs #23919 -- Replaced tempfile.mkdtemp() with TemporaryDirectory() context manager.
2017-01-26 13:54:16 -05:00
Tim Graham
1c466994d9
Refs #23919 -- Removed misc Python 2/3 references.
2017-01-25 13:59:25 -05:00
Ed Morley
bfd42392ab
Simplified tests with assertDoesNotOptimize().
2017-01-25 13:52:44 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Mads Jensen
ebf34c3cdc
Removed unused variables that are overwritten.
2017-01-25 09:14:05 -05:00
Claude Paroz
2366100872
Removed unneeded force_text calls in the test suite
2017-01-24 18:45:54 +01: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
7aba69145d
Refs #23919 -- Removed django.test.mock Python 2 compatibility shim.
2017-01-20 08:17:20 -05:00
Claude Paroz
042b7350a0
Refs #23919 -- Removed unneeded str() calls
2017-01-20 14:13:55 +01: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
109b33f64c
Refs #23919 -- Simplified assertRaisesRegex()'s that accounted for Python 2.
2017-01-20 08:49:47 +01:00
Claude Paroz
dc8834cad4
Refs #23919 -- Removed unneeded force_str calls
2017-01-20 08:44:31 +01: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
a556396339
Refs #23919 -- Replaced io.open() with open().
...
io.open() is an alias for open() on Python 3.
2017-01-18 21:45:12 -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
e0910dcc92
Refs #25604 -- Removed makemigrations --exit option per deprecation timeline.
2017-01-17 20:52:01 -05:00
Simon Charette
dc1193085d
Made contenttypes and auth apps unavailable when not necessary in tests.
2017-01-13 08:50:03 -05:00
Ed Morley
7156a6c9c4
Fixed #27717 -- Allowed migration optimization across AlterModelOptions.
2017-01-10 18:38:48 -05:00
Tim Graham
9932e1bf52
Fixed test isolation in a couple migrations tests.
...
Without this, tests from refs #27432 fail when running with --reverse.
2017-01-09 08:02:09 -05:00
Sebastian Spiegel
8b734d2f99
Fixed #27432 -- Made app_label arguments limit showmigrations --plan output.
2017-01-06 19:50:31 -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
Tim Graham
b5f0b3478d
Fixed #27579 -- Added aliases for Python 3's assertion names in SimpleTestCase.
2016-12-07 17:42:31 -05:00
Lex Berezhny
8eb56f3c78
Fixed #27507 -- Used SchemaEditor.execute() to run deferred_sql in migrate's sync_apps().
2016-11-29 20:00:16 -05:00
Ramin Farajpour Cami
0a63ef3f61
Fixed #27463 -- Fixed E741 flake8 warnings.
2016-11-14 17:40:28 -05:00
za
321e94fa41
Refs #27392 -- Removed "Tests that", "Ensures that", etc. from test docstrings.
2016-11-10 21:30:21 -05:00
Joseph Kahn
373c6c409c
Fixed #27461 -- Fixed incorrect allow_migrate() arguments in makemigrations.
2016-11-09 10:27:19 -05:00
Zbigniew Siciarz
f94ce0d21d
Fixed #27436 -- Fixed makemigrations crash when creating migrations on a separate drive than where Django is installed.
2016-11-08 18:06:17 -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
Tim Graham
cd09524f27
Fixed #27200 -- Provided makemigration's allow_migrate() with model_name.
2016-10-13 11:04:58 -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
Tim Graham
6989b45c8d
Fixed typo in tests/migrations/test_loader.py.
2016-09-16 11:15:20 -04:00
Tim Graham
49412f55a5
Refs #27025 -- Fixed a test for the new re.RegexFlag in Python 3.6.
...
http://bugs.python.org/issue28082
2016-09-16 10:29:02 -04: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
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
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
Tim Graham
aad46c3e37
Fixed #26930 -- Prevented makemigrations from accessing an empty database.
...
Thanks Liz Lemon for the report and investigation and
Claude Paroz for the test.
2016-08-01 07:57:12 -04:00
premanand lakshmanan
5da7e3f7fd
Fixed #26114 -- Fixed AlterModelTable.describe() if db_table is None.
2016-07-28 10:33:14 -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
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
f7e00b40c5
Refs #26808 -- Avoided clashing keyword arguments in test_autodetector
...
Factor method signatures in test_autodetector to avoid clashing keyword
arguments when introducing indexes.
2016-07-03 09:01:07 +02: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
akki
ca77b50905
Fixed #26795 -- Factored out get_changes() in test_autodetector.py.
2016-06-24 21:45:35 -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
Jon Dufresne
4f336f6652
Fixed #26747 -- Used more specific assertions in the Django test suite.
2016-06-16 14:19:18 -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
3a47d42fa3
Fixed #20932 , #25897 -- Streamlined manager inheritance.
2016-05-17 02:29:22 +07: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
80bf3135d0
Sorted migration list order in test; added trailing comma.
2016-05-08 13:53:36 +02:00
Jarek Glowacki
c8df17b612
Included reverse deps in showmigrations
2016-05-08 13:53:36 +02: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
Tim Graham
6729b96d8a
Removed try/fail antipattern from migrations commands tests.
2016-04-27 10:21:18 -04:00
Tim Graham
87338198e9
Fixed #26320 -- Deprecated implicit OneToOnField parent_link.
2016-04-22 12:59:41 -04:00
Matthew Schinckel
5402f3ab09
Fixed #26475 -- Added functools.partial() support to migrations autodetector.
2016-04-19 10:17:11 -04:00
Berker Peksag
93deb1691e
Fixed #26492 -- Fixed "maximum recursion depth exceeded" migrate error.
...
A regression introduced in 0d3c616fbb2f49fa7ff6809e5a6777275352b35b;
refs #26351 .
2016-04-12 09:04:14 -04:00
Tim Graham
92053acbb9
Fixed E128 flake8 warnings in tests/.
2016-04-08 10:12:33 -04:00
Attila Tovt
02ae5fd31a
Fixed #25850 -- Made migrate/makemigrations error on inconsistent history.
2016-04-05 08:52:08 -04:00
Markus Holtermann
8b1110ddff
Added missing primary keys to some OperationTests
...
Thanks Common Code for financing the work on this commit.
2016-04-03 01:40:46 +02:00
Attila Tovt
00dbd02f7e
Made MakeMigrationsTests call proper parent method
2016-04-02 10:10:38 +02:00
Berker Peksag
14e6823d09
Refs #25388 -- Used in-memory database in test_disable_migrations.
2016-03-23 10:55:30 -04: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
Jarek Glowacki
34c56687ae
Fixed #26342 -- Prevented unpacking when repr a NodeNotFoundError
2016-03-10 17:27:35 +11: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
8ad7b8118c
Used addCleanup() to call recorder.flush() in migration loader tests.
2016-02-24 11:22:09 -05:00
Tim Graham
406675b1a0
Fixed #26176 -- Fixed E123 flake8 warnings.
2016-02-05 15:11:07 -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
Hasan
26ad01719d
Refs #26022 -- Replaced six.assertRaisesRegex with assertRaisesMessage as appropriate.
2016-01-29 13:37:33 -05:00
Hasan
3d0dcd7f5a
Refs #26022 -- Used context manager version of assertRaises in tests.
2016-01-29 12:32:18 -05:00
Yoong Kang Lim
5453aa66cf
Added a missing test method in tests/migrations/test_writer.py.
2016-01-28 10:38:10 -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
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -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
Niels Van Och
99a1265a39
Fixed #25063 -- Added path to makemigration's output of migration file.
2015-12-18 11:20:00 -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
Shai Berger
c8b3fbe21b
Refs #25896 -- Fixed migration test failure on Oracle
...
The test creates and deletes a model in the same migration, and the model
had an AutoField. On Oracle, AutoField's are set up using deferred SQL, which
in this case was trying to modify a table after it had dbeen removed.
2015-12-10 02:12:04 +02:00
Amos Onn
542b7f6c50
Fixed #25896 -- Fixed state bug in SeparateDatabaseAndState.database_backwards().
2015-12-09 11:06:57 -05:00
Josh Soref
93452a70e8
Fixed many spelling mistakes in code, comments, and docs.
2015-12-03 12:48:24 -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
Simon Charette
1c5f4e86bc
Fixed #25745 -- Promoted RuntimeWarnings to errors in the test suite.
2015-11-14 11:33:28 -05:00
Jon Dufresne
3c7d2ee881
Fixed #25604 -- Added makemigrations --check option.
...
Command exits with non-zero status if changes without migrations exist.
2015-10-24 14:45:00 -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
Tim Graham
b6e6fcf326
Refs #23359 -- Removed the migrate --list option per deprecation timeline.
2015-09-23 19:31:10 -04:00
Markus Holtermann
43f2eb7ef3
Fixed #25390 -- Allowed specifying a start migration in squashmigrations
...
Thanks Tim Graham for the review.
2015-09-19 14:55:34 +10: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
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
8e631a3175
Refs #24590 -- Ensured isolation between autodetector tests
...
Fixed a regression introduced in e1427cc609
when running tests in reverse order.
2015-08-28 10:17:34 +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
Tim Graham
01966bb2a7
Fixed typo in tests/migrations/test_autodetector.py.
2015-08-20 14:52:26 -04:00
Markus Holtermann
0271a11ba5
Fixed #24755 -- Hid operations from dependency apps when merging migrations
...
Thanks Carl Meyer for the report and Tim Graham for the review.
2015-08-18 18:33:14 +10: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
Simon Charette
12f91f6ebd
Used skipUnlessDBFeature where appropriate.
2015-08-08 11:27:06 -04:00
mlavin
69db1c7455
Fixed #25231 -- Added recording of squashed migrations in the migrate command.
...
Ensured squashed migrations are recorded as applied when the
migrate command is run and all of the original migrations
have been previously applied.
2015-08-07 17:59:18 -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
Flavio Curella
c2e70f0265
Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField
2015-07-27 18:28:13 -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
Tim Graham
aaacaeb096
Renamed RemovedInDjangoXYWarnings for new roadmap.
...
Forwardport of ae1d663b79
from stable/1.8.x plus more.
2015-06-24 16:08:20 -04:00
Markus Holtermann
7bb7670ee4
Used mock in MigrationQuestioner tests
...
Thanks Andriy Sokolovskiy and Simon Charette for the review.
2015-06-23 17:34:22 +02:00
Tim Graham
7f1168e387
Removed support for Python 3.3.
2015-06-18 08:36:50 -04: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
Markus Holtermann
128caa1e16
Optimized duplicate AlterModelTable/AlterFooTogether/AlterOWRT
...
Thanks Andrew Godwin for the review.
2015-06-14 20:34:48 +02:00
Markus Holtermann
5bc412c35a
Took AlterOrderWithRespectTo into account when optimizing migrations
...
Thanks Andrew Godwin for the review.
2015-06-14 20:34:34 +02:00
Carl Meyer
57dbc87ade
Cleaned up docstring style, per Tim Graham review.
2015-06-03 19:20:12 -06:00
Carl Meyer
5c085ea7b3
Refs #24628 -- Added a second test and a docstring comment to avoid regression.
2015-06-03 13:46:01 -06:00
Carl Meyer
492537ac18
Fixed #24628 -- Fixed applied status for squashed migrations.
2015-06-02 16:15:13 -06:00
Carl Meyer
335fc44f68
Improved isolation of applied-migrations table in migration tests.
2015-06-02 16:14:02 -06:00
Carl Meyer
84522c0d16
Fixed #24895 -- Fixed loading a pair of squashed migrations with a dependency.
2015-06-02 12:07:54 -06:00
Yoong Kang Lim
076a63e672
Fixed #24883 -- Added MigrationGraph.__repr__()
2015-06-01 10:45:52 -04:00
Matt Westcott
ff8a02ae0b
Fixed #24340 -- Added nested deconstruction for list, tuple and dict values
...
Nested deconstruction should recursively deconstruct items within list,
tuple and dict values.
2015-05-26 17:10:02 +02:00
Marten Kenbeek
d73176a842
Fixed #24848 -- Fixed ValueError for faulty migrations module.
...
Added apps to unmigrated apps if the migrations module is a file
or a folder missing __init__.py.
Thanks to Ernest0x for the bug report.
2015-05-25 13:47:50 -04:00
Simon Charette
be67400b47
Refs #24652 -- Used SimpleTestCase where appropriate.
2015-05-20 13:46:13 -04:00
Tim Graham
f5da438072
Fixed #24812 -- Fixed app registry RuntimeWarnings in schema and migrations tests.
2015-05-18 09:48:25 -04:00
Markus Holtermann
811d7870a5
Moved migration exception classes to shared module
...
Thanks Aymeric Augustin for the review.
2015-05-02 12:54:44 +02:00
Markus Holtermann
63f9b633f9
Fixed #24725 -- Allowed renaming of target models in ManyToMany relations
...
This is a regression caused by introducing rendered migration states in
1aa3e09c20
and the _meta refactoring in fb48eb0581
.
Thanks to Danilo Bargen for reporting the issue and Marten Kenbeek and
Tim Graham for triaging the bug and providing the initial test case.
2015-04-30 13:27:29 +02:00
Markus Holtermann
faad6070ee
Fixed #24701 -- Converted model manager names to unicode in migrations
...
Thanks to Reto Aebersold for reporting the issue and Tim Graham and
Claude Paroz for the review.
2015-04-25 18:17:06 +02:00
Markus Holtermann
b93690c465
Fixed #24573 -- Considered new related models for reloading
...
Thanks tttomekkk for the report.
2015-04-21 11:35:45 +02:00
Marten Kenbeek
1a1f16d67d
Fixed #24591 -- Optimized cloning of ModelState objects.
...
Changed ModelState.clone() to create a shallow copy of self.fields
and self.managers.
2015-04-20 19:53:21 -04:00
Marten Kenbeek
039d7881b4
Refs #24397 -- Sped up model reloading in ProjectState.
...
Created bulk_update() context manager on StateApps. Sped up unregistering
models in reload_models() by using this context mananger.
2015-04-20 14:42:23 -04:00
Claude Paroz
02260ea3f6
Fixed #24595 -- Prevented loss of null info in MySQL field alteration
...
Thanks Simon Percivall for the report, and Simon Charette and Tim
Graham for the reviews.
2015-04-17 10:25:15 +02:00
Christopher Luc
a7bc00e17b
Fixed #24514 -- Made migration writer omit models import if it's unused.
2015-04-10 07:04:26 -04:00
Curtis Maloney
88d7fcebde
Use mock.patch in migrations tests
...
Currently some of the migrations tests rely on the fact 'input' is aliased
because of six, instead of using mock.patch. Replace this code with proper
use of mock.patch.
Also, replace one case of excessively specific python version check with
testing six.PY3
2015-04-09 11:16:12 +10:00
Patryk Zawadzki
0385dad073
Fixed #24513 -- Made sure a model is only rendered once during reloads
...
This also prevents state modifications from corrupting previous states.
Previously, when a model defining a relation was unregistered first,
clearing the cache would cause its related models' _meta to be cleared
and would result in the old models losing track of their relations.
2015-04-07 14:49:47 +02:00
Marten Kenbeek
e8e4f978dd
Fixed #24278 -- Fixed serialization of migration operations.
...
Fixed MigrationWriter.serialize() to correctly handle migration
operations by utilizing OperationWriter.
Thanks Piotr Maliński for the report.
2015-04-05 20:26:21 +02:00
Marten Kenbeek
d597174bd4
Refs #24278 -- Allowed multi-line serializations in OperationWriter.
...
Changed OperationWriter to support multi-line serialized values with
correct indentation.
2015-04-05 20:19:24 +02:00
Baptiste Mispelon
30a3c2f74c
Fixed #24566 -- Added support for serializing timedelta
...
Thanks to knbk for the report.
2015-04-02 17:21:20 +02:00
Markus Holtermann
c5cc332bf2
Fixed #24550 -- Added migration operation description to sqlmigrate output
...
Thanks Tim Graham for the review.
2015-03-30 16:31:20 +02:00
Marten Kenbeek
75430be86f
Refs #24366 -- Fixed recursion depth error in migration graph
...
Made MigrationGraph forwards_plan() and backwards_plan() fall back to an
iterative approach in case the recursive approach exceeds the recursion
depth limit.
2015-03-29 16:08:07 +02:00
Marten Kenbeek
bc83add04c
Refs #24366 -- Renamed arguments in MigrationGraph, renamed tests
2015-03-29 16:07:58 +02:00
Markus Holtermann
c7ec3c07e7
Fixed #24537 -- Ignored field order in RenameModel detection
...
Thanks to David Sanders for the report and test and Simon Charette for
the review.
2015-03-28 20:45:15 +01:00
Anssi Kääriäinen
8f30556329
Renamed Field.rel attribute to remote_field
...
Field.rel is now deprecated. Rel objects have now also remote_field
attribute. This means that self == self.remote_field.remote_field.
In addition, made the Rel objects a bit more like Field objects. Still,
marked ManyToManyFields as null=True.
2015-03-25 08:16:12 -04:00
David Szotten
80e3444eca
Fixed #24483 -- Prevented keepdb from breaking with generator choices.
...
If Field.choices is provided as an iterator, consume it in __init__ instead
of using itertools.tee (which ends up holding everything in memory
anyway). Fixes a bug where deconstruct() was consuming the iterator but
bypassing the call to `tee`.
2015-03-24 11:42:53 -04:00
Baptiste Mispelon
1aadade373
Fixed #24521 -- Added support for serializing frozensets in migrations.
2015-03-23 15:38:25 +01:00
John Giannelos
8758a63ddb
Fixed #24427 -- Stopped writing migration files in dry run mode when merging.
...
Also added display of migration to stdout when verbosity=3.
2015-03-16 14:04:37 -04:00
Matthew Wilkes
ae87ad005f
Refs #24354 -- Prevented repointing of relations on superclasses when migrating a subclass's name change
...
Forwardport of test and release note from stable/1.7.x
2015-03-14 15:37:40 -04:00
Marten Kenbeek
e272904ff7
Fixed #23407 -- Extended coverage of makemigrations --noinput option.
...
Changed --noinput option in makemigrations to suppress all user prompts,
not just when combined with --merge.
2015-03-08 19:44:14 +01:00
Markus Holtermann
a9e29fae10
Fixed #24435 -- Prevented m2m field removal and addition in migrations when changing blank
...
Thanks Mark Tranchant for the report an Tim Graham for the test and
review.
2015-03-04 14:26:49 +01:00
Aymeric Augustin
903d1a57ab
Made migrations tests write to a temporary directory.
...
This is preferrable to writing in the current working directory because
it eliminates the risk to leak unwanted files, which can result in very
weird test failures.
Also this will help if we ever try to run these tests concurrently.
2015-02-23 22:22:58 +01:00
Marten Kenbeek
78d43a5e10
Fixed #24366 -- Optimized traversal of large migration dependency graphs.
...
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.
2015-02-23 12:38:53 +01:00
Loic Bistuer
bed504d70b
Fixed #24351 , #24346 -- Changed the signature of allow_migrate().
...
The new signature enables better support for routing RunPython and
RunSQL operations, especially w.r.t. reusable and third-party apps.
This commit also takes advantage of the deprecation cycle for the old
signature to remove the backward incompatibility introduced in #22583 ;
RunPython and RunSQL won't call allow_migrate() when when the router
has the old signature.
Thanks Aymeric Augustin and Tim Graham for helping shape up the patch.
Refs 22583.
2015-02-20 21:34:09 +07:00
Shai Berger
f7d34fe741
Fixed #24362 : Made test run each migration operation in its own schema editor
...
Thanks Tim Graham for pointing out the fix.
2015-02-18 22:47:15 +02:00
Marten Kenbeek
15dc8d1c9d
Fixed #24291 - Fixed migration ModelState generation with unused swappable models
...
Swapped out models don't have a _default_manager unless they have
explicitly defined managers. ModelState.from_model() now accounts for
this case and uses an empty list for managers if no explicit managers
are defined and a model is swapped out.
2015-02-18 19:05:10 +01:00