niwinz / django-jinja

Simple and nonobstructive jinja2 integration with Django.
http://niwinz.github.io/django-jinja/latest/
BSD 3-Clause "New" or "Revised" License
363 stars 102 forks source link

Update the error views. #315

Open davidlesieur opened 3 months ago

davidlesieur commented 3 months ago

The django-jinja documentation indicates the view that is provided to use with Django's handler500 is broken since Django 2.2.

The reason is that Django's 40x error views are expected to receive an exception positional argument, while the 500 view doesn't take that argument.

Since all we need from the django-jinja error views is to specify the template name, I didn't see the value of implementing custom class-based views, especially now that the 500 view is different from the others. Thus, I have also simplified the code to reuse Django's default error views.

Fixes #234.

davidlesieur commented 2 months ago

Yes, it is a breaking change, but the 500 view has been broken since 2019 (Django 2.2). That no one has proposed a fix since then seems to indicate that few people have been using the error views. For those who are using them, the code change required for an upgrade is easy to apply. Moreover, the fix could be included in a major release to highlight the fact that the new version contains breaking changes.

auvipy commented 2 months ago

we need a gracefully way to upgrade / fix this

davidlesieur commented 2 months ago

Perhaps the old views (except the 500 view) could be left there for a release or two, with a deprecation warning? But I think the old 500 view could be removed immediately since it doesn't work at all (as reported in #234).