On Tuesday 20 October 2015 20:09:36 I wrote: > On Tuesday 20 October 2015 19:51:36 Marc Tamlyn wrote: > > I see what you mean and the inherent problems with the design. However > > fundamentally the command you are running is "make some migrations", and > > the "I don't have any to make" step is clearly an error case, not a > > success case. In particular it would be very wrong for the real "I want > > to make some migrations" command to return a non-zero code when it does > > successfully create some. > > > > The only real solution I can see is a separate command, or something like > > makemigrations --check. > > Agreed. In particular, > > > On 20 October 2015 at 05:20, Jon Dufresne <jon.dufre...@gmail.com> wrote: > > > It seems exit status 1 is overloaded to mean "all migrations are > > > accounted for, continue to the next stage of CI", and "something went > > > terribly wrong". > > No; it seems the "makemigrations" command is overloaded to mean both "make > migrations for me" and "verify that no migrations need to be made". >
On second thought, I take that back. As is evident from the discussion Jon cited[1], the --exit flag was intended to be used as Marc's --check. Jon is basically correct in his analysis, and I think the root issue is that "--exit" is just a bad name for "--check". [1] https://groups.google.com/d/topic/django-developers/I3M6B-wYYd8/discussion