Skip to content
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

Upgrade to Django 3.2 LTS #295

Closed
aebruno opened this issue May 12, 2021 · 5 comments · Fixed by #353
Closed

Upgrade to Django 3.2 LTS #295

aebruno opened this issue May 12, 2021 · 5 comments · Fixed by #353

Comments

@aebruno
Copy link
Member

aebruno commented May 12, 2021

We're currently on Django 2.2 which ends extended support in April 2022. We should upgrade to the latest 3.2 LTS release.

@mdzik
Copy link
Contributor

mdzik commented Aug 9, 2021

Hi,

I'm responsible for Coldfront instance at ICM. I have django version update on schedule soon so maybe you will be interested in PR? ;)

We use Kubernetes/Helm for CI/CD and REST to control SLURM so maybe could share some of our other work. At very beginning we had to add Django translation module to CF so it made a braking change but most is still compatible.

Coldfront saved us tons of work - great job!

Michał

@aebruno
Copy link
Member Author

aebruno commented Aug 9, 2021

@mdzik Absolutely! All sounds great. Glad to hear ColdFront is working for you. We would be very interested in any PRs so feel free to send some our way. Upgrading Django, REST Slurm and a translation module all sound awesome and areas we could certainly use some help. Thanks!

@mdzik
Copy link
Contributor

mdzik commented Jan 11, 2022

So all is well, now over month in tests + 2 weeks in production. We decided to push for Django 4 and all is well
Main issues, apart from PR are related to SSL in python 3.10 - some ciphers are now obsolete and for us LDAP connection stopped working out-of-the-box. And Django SU seems not updated and we turned it off.

Regarding SSL:

Wherever you use python requests etc. you might get (DOI api only?) https://stackoverflow.com/questions/38015537/python-requests-exceptions-sslerror-dh-key-too-small

For LDAPS, if you use old ldap server config you could get:

ldap3.core.exceptions.LDAPSocketOpenError: ("('socket ssl wrapping error: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:997)',)",)

see: python/cpython@9ad46f9

Those are local-environment dependent issues so not really testable.

For Django 4 I would need to upgrade url.py ( url() go depracieted) - How far you would like to go? 3 or 4 ;)

@aebruno
Copy link
Member Author

aebruno commented Jan 11, 2022

So all is well, now over month in tests + 2 weeks in production. We decided to push for Django 4 and all is well Main issues, apart from PR are related to SSL in python 3.10 - some ciphers are now obsolete and for us LDAP connection stopped working out-of-the-box.

Excellent. Thanks so much for testing.

And Django SU seems not updated and we turned it off.

Curious if you tested v0.9.0? The Changelog here looks like there may be some support for Django 3?

Regarding SSL:

Wherever you use python requests etc. you might get (DOI api only?) https://stackoverflow.com/questions/38015537/python-requests-exceptions-sslerror-dh-key-too-small

For LDAPS, if you use old ldap server config you could get:

ldap3.core.exceptions.LDAPSocketOpenError: ("('socket ssl wrapping error: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:997)',)",)

see: python/cpython@9ad46f9

Those are local-environment dependent issues so not really testable.

Great, thanks for the info. Agreed these are local-env issues.

For Django 4 I would need to upgrade url.py ( url() go depracieted) - How far you would like to go? 3 or 4 ;)

We were actually just talking about this and think we'd like to go all the way to Django 4. If you have something going feel free to submit/update the PR and we'll start testing on our end as well.

Thanks again. All great stuff.

@aebruno aebruno changed the title Upgrade to Django 3.2 LTS Upgrade to Django 4.2 LTS Jan 11, 2022
@aebruno aebruno changed the title Upgrade to Django 4.2 LTS Upgrade to Django 3.2 LTS Jan 11, 2022
@aebruno
Copy link
Member Author

aebruno commented Jan 11, 2022

For Django 4 I would need to upgrade url.py ( url() go depracieted) - How far you would like to go? 3 or 4 ;)

Scratch that, just realized Django 4 is not LTS yet. I'm thinking we upgrade to 3.2 LTS first. Then we'll test the jump to 4.

@dsajdak dsajdak added this to Completed in Version 1.1.0 Jan 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Version 1.1.0
Completed
Development

Successfully merging a pull request may close this issue.

2 participants