Closed
Bug 1146686
Opened 10 years ago
Closed 9 years ago
[tracker] upgrade to django 1.8
Categories
(Input Graveyard :: Code Quality, defect)
Input Graveyard
Code Quality
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: willkg, Assigned: willkg)
References
Details
(Whiteboard: u=dev c=codequality p= s=input.2015q3)
Input is currently using Django 1.7 (bug #1118765). Django 1.8 should release sometime in April 2015.
https://code.djangoproject.com/wiki/Version1.8Roadmap
Django 1.8 involves a major overhaul to the templating system. This is a big deal for us since Input uses Jinja2 for templating rather than the default Django templating engine.
Upgrading to django 1.8 will require us to redo our Jinja2 infrastructure and will likely allow us to ditch a bunch of libraries that are poorly maintained.
This tracker bug covers all the bugs involved in upgrading to Django 1.8.
Assignee | ||
Comment 1•10 years ago
|
||
I talked with Ricky about this a bit. We think we'll need to look into the following:
1. We should get rid of jingo-minify. That's covered in bug #1142093.
2. Fix django-browserid so that it works with Django 1.8 templates.
3. Fix/replace tower which I think requires Jingo.
4. Ditch Jingo and replace with a module/library that builds the Jinja2 environment (Django 1.8 has an empty Jinja2 environment) and also queries all the INSTALLED_APPS for helpers.py files which add Jinja2 filters/functions. There are a bunch of existing libraries that support Jinja2, but I think it'd be a lot easier to write our own that doesn't need to be backwards-compatible with prior versions of Django.
It's likely there's other work, too. Plus Django 1.8 probably has a lot of other changes.
Assignee | ||
Comment 2•10 years ago
|
||
According to an issue in django-browserid, fancy-tag hasn't been updated in years and doesn't work with Django 1.8:
https://github.com/mozilla/django-browserid/issues/280
Thus we're going to need to update to a django-browserid that doesn't use fancy-tag and also remove fancy-tag as a dependency.
Assignee | ||
Comment 3•10 years ago
|
||
Fixing the typo in the sprint field. :p
Django 1.8 added a --keepdb flag to the test system. I think that's the only feature of django-nose that we really like at this point. Figured I'd mention it:
https://docs.djangoproject.com/en/1.8/releases/1.8/#tests
Whiteboard: u=dev c=codequality p= s=inpu.2015q2 → u=dev c=codequality p= s=input.2015q2
Assignee | ||
Comment 4•9 years ago
|
||
I think we're at least 1/2 done here, but there's still some work to do. I'm moving this to 2015q3.
Whiteboard: u=dev c=codequality p= s=input.2015q2 → u=dev c=codequality p= s=input.2015q3
Assignee | ||
Comment 5•9 years ago
|
||
We might have to revisit our Fields:
https://docs.djangoproject.com/en/1.8/howto/custom-model-fields/#converting-values-to-python-objects
Adding a note to look into this when the time comes.
Assignee | ||
Comment 6•9 years ago
|
||
Note that we need to update django-grappelli along with Django.
Assignee | ||
Comment 7•9 years ago
|
||
All the rest of the changes in a PR: https://github.com/mozilla/fjord/pull/684
Assignee: nobody → willkg
Status: NEW → ASSIGNED
Assignee | ||
Comment 8•9 years ago
|
||
Landed in https://github.com/mozilla/fjord/commit/5d269bd7585c21f468f13c7768352b519b2ac1f1
Pushed this to prod just now. Marking as FIXED.
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Updated•8 years ago
|
Product: Input → Input Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•