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

Django 3 #4313

Open
jayvdb opened this issue Oct 5, 2020 · 5 comments
Open

Django 3 #4313

jayvdb opened this issue Oct 5, 2020 · 5 comments

Comments

@jayvdb
Copy link

jayvdb commented Oct 5, 2020

I see there is lots of work going on for Python 3 support at #4292

I tried my hand at leveraging off that to see if I can get Django 3 working, and am mostly successful in getting it operational enough to explore the app locally. I am using django-compat-patcher to do a lot of the heavy lifting of cross-Django-version compatibility.

Latest CI result at https://travis-ci.org/github/jayvdb/bluebottle/jobs/732862786
Summary: of 1228 tests, 225 failures & 184 errors.

A lot of the errors are repetitive, and most are due to the dependencies being pinned to Django 1.x compatible versions. I'm trying to unpin only dependencies that really need unpinning, so-as to reduce the variability between Django 1.x and Django 3.x versions of bluebottle.

Other dependent PRs / branches

Why Django 3?

  1. Because most dependency projects are already dropping Django 2, so if there are problems with porting to Django 2 it would be harder to get help,
  2. All top-tier distros have dropped Django 2 from their current or pending release, and
  3. I expect the Django 3 effort to take a while to stablise and before existing bluebottle production systems would be ready to switch to Django 3, and by then Django 2 will be even more dead.
  4. Creating migration across major Django versions is quite a bit of effort. May as well skip one.

Obviously most of this needs to wait until the Python 3 work lands, but I'd like to know the best way to structure this in order to get favourable reviews to get things merged early.

I'd like to eventually be running another Travis job for Django 3, so that Django 1.x and Django 3.x are co-existing in the repo until you're ready to switch off Django 1.x . Many of my patches are already able to co-exist on Django 1.x, using fallbacks where necessary. The Django 3 job could be allowed to fail, so that it doesnt halt ongoing development of the project.

@jayvdb
Copy link
Author

jayvdb commented Nov 3, 2020

ping @gannetson

@gannetson
Copy link
Member

Thanks. Python 3 branch is already merged and we are fully compatible.
If I make ask @jayvdb: How did you find this repository and why did you choose to contribute?

@jayvdb
Copy link
Author

jayvdb commented Nov 3, 2020

@gannetson , this is Django 3. Please read the issue.

I found it on GitHub. I am using bluebottle. And so we give back too.

onepercentclub/django-tenant-extras#58 is mentioned above and I pinged you there also.

@jayvdb
Copy link
Author

jayvdb commented Nov 11, 2020

Current list of related green PRs in @onepercentclub :

No progress on any of them yet.
ping @gannetson . They are all easy wins.

@jayvdb jayvdb mentioned this issue Jan 1, 2021
@gannetson
Copy link
Member

Hey @jayvdb been really busy. Will look into it shortly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants