-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Meta: Upgrade Django to 1.10 #4174
Comments
I'd love to get upgraded, so big +1 from me on this one. |
@mashrikt Can you take a look into this? Maybe its interesting for you. |
+1 from me, but not on our immediate roadmap. If anyone non-core wants to take this on, go for it. Targeting 3.0 as this will be a backwards incompat version change. |
I was playing around with this, I found https://docs.djangoproject.com/en/2.0/releases/1.10/#removed-weak-password-hashers-from-the-default-password-hashers-setting we are using a salted sha1 to hash the user passwords (at least in our tests fixtures), these hashes were removed in |
Also, I found that we need to upgrade tastypie, because of https://docs.djangoproject.com/en/2.0/releases/1.10/#features-removed-in-1-10 (tastpie |
Yea, confirming that we have some salted sha1. We should probably do something like this and migrate everyone at once: https://docs.djangoproject.com/en/2.0/topics/auth/passwords/#password-upgrading-without-requiring-a-login The current default is |
I checked our database for users with old passwords. We have no unsalted passwords. We have a ~3k (out of ~100k) users who are using old salted sha1. This means they haven't logged in since RTD upgraded to Django 1.4. One possible option rather than adding a wrapped password hasher is to set an unusable password for users who haven't logged in since the sha1 days. This will remove their hashed password from the DB and they will be required to request a password reset or login with social auth to access their account. This is probably fine since these users are probably never going to login to their accounts. |
I don't feel strongly here. I'm fine just unsetting their passwords and making them reset. I do wish there was a better way to show in the UI (eg. your password must be reset for security reasons) instead of just "wrong password" -- but I don't think it's worth the time to build that for the few users who might eventually login. |
There is a PR already to update Django to 2.0 (#3305), but as the official docs from django says
https://docs.djangoproject.com/en/2.0/howto/upgrade-version/
Is better to upgrade incrementally, and there are some breaking changes related to very delicate parts of the code (like the middleware), so we need to make sure that those parts are well tested.
I'll be putting some of the parts of the code that we need to update before and after and the dependencies that support the new django version.
The changelog from the 1.10 version: https://docs.djangoproject.com/en/2.0/releases/1.10/
That's the most relevant information that I could extract from reading the changelog.
The text was updated successfully, but these errors were encountered: