Update all template rendering for Django 1.11 compatibility.

Review Request #10490 — Created April 1, 2019 and submitted — Latest diff uploaded


Review Board


Django's template rendering has changed a lot since Django 1.6, with the
primary changes being the addition of other template backends and the
removal of Context and RequestContext instances in favor of dict
for most template rendering functions.

We have compatibility functions in Djblets that do the right thing on
the right version of Django. This change updates all our rendering calls
to use these wrappers. This gives us compatibility with both 1.6 and
1.11 right now, and will help us move fully onto Django 1.11 in the

There are still a couple cases where we're passing a Context or
RequestContext, which will eventually break as we move fully onto
1.11, but those are more complex pathways that will need to be dealt
with separately.

Unit tests pass on Django 1.6 and 1.11 (with other in-progress changes).

Browsed around Review Board, trying to trigger the various templates.
Didn't see any regressions. More real-world testing will be needed.