{"comment":{"url":"https://api.github.com/repos/REANNZ/djnro/comments/16532471","html_url":"https://github.com/REANNZ/djnro/commit/2c740cdaca05aa0e84031039a73da0f4f9edc595#commitcomment-16532471","id":16532471,"user":{"login":"zmousm","id":2683676,"avatar_url":"https://avatars.githubusercontent.com/u/2683676?v=3","gravatar_id":"","url":"https://api.github.com/users/zmousm","html_url":"https://github.com/zmousm","followers_url":"https://api.github.com/users/zmousm/followers","following_url":"https://api.github.com/users/zmousm/following{/other_user}","gists_url":"https://api.github.com/users/zmousm/gists{/gist_id}","starred_url":"https://api.github.com/users/zmousm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zmousm/subscriptions","organizations_url":"https://api.github.com/users/zmousm/orgs","repos_url":"https://api.github.com/users/zmousm/repos","events_url":"https://api.github.com/users/zmousm/events{/privacy}","received_events_url":"https://api.github.com/users/zmousm/received_events","type":"User","site_admin":false},"position":null,"line":null,"path":"","commit_id":"2c740cdaca05aa0e84031039a73da0f4f9edc595","created_at":"2016-03-07T11:11:05Z","updated_at":"2016-03-07T11:11:05Z","body":"It is still not clear for me. We would revisit this in the upgrade/migration instructions, but we are not there yet...\r\n\r\nYou are saying `django.contrib.auth.models.User` has evolved with further changes to `email` and `last_login` that we didn't have in Django 1.4. Looking at the [model reference (for 1.8)](https://docs.djangoproject.com/en/1.8/_modules/django/contrib/auth/models/) I see that:\r\n\r\n* `last_login` is defined as:\r\n```\r\nlast_login = models.DateTimeField(_('last login'), blank=True, null=True)\r\n```\r\nand there is a signal receiver (`update_last_login()`) that sets this to `django.utils.timezone.now()` upon login. So the properties match, but the default value introduced in the modified `accounts/migrations/0001_initial.py` is a bit different.\r\n* `email` is defined as\r\n```\r\nemail = models.EmailField(_('email address'), blank=True)\r\n```\r\n`max_length` is 254, bumped in Django 1.8 per the [model ref](https://docs.djangoproject.com/en/1.8/ref/models/fields/#emailfield).\r\n\r\nTherefore, other than the default value for `last_login`, it appears the initial django migration for `accounts.models.User` already matches what Django would create if we were simply using the default `django.contrib.auth.models.User`.\r\n\r\nThis brings me back to the previous question, that is: Why are the split/additional migrations necessary? Perhaps I am missing something obvious and I will realize it once we get to replay the migration/upgrade scenario. In any case, if there is a catch, whatever that may be after all, I would appreciate it if the commit message would reflect/explain it."}}