﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
24755	makemigrations --merge output is confusing when one head depends on another app	Carl Meyer	Markus Holtermann	"When you run `makemigrations --merge`, for every app with multiple 'head' migrations, `makemigrations` lists each head and the operations present only in its branch. So for instance, if we have an app X which has migrations `X.0003_a` and `X.0003_b`, both of which depend on `X.0002`, then `makemigrations --merge` will list the operations present in each of the two migrations `X.0003_a` and `X.0003_b` so we can verify that they don't conflict. So far, so good.

However, let's say we have another app Y, with migrations up to `Y.0004`, and it so happens that `X.0003_b` depends on `Y.0004` (in addition to depending on `X.0002`).

In this situation, `makemigrations --merge` includes every operation in every migration of app `Y` in its list of operations that are part of the `X.0003_b` branch. This is very confusing, as it makes that branch appear much bigger than it actually is. Despite the dependency, the migrations in app `Y` are not relevant to determining whether the merge is safe, because in general it is an assumption of the migrations framework that migrations in different apps do not conflict with one another (which is we allow one ""head"" migration per app, not per project).

I think that `makemigrations --merge` should restrict its search for operations in each branch to the current app only, and not display operations from a different app."	Bug	closed	Migrations	1.8	Normal	fixed			Ready for checkin	1	0	0	0	0	0
