[Python-modules-team] Bug#807097: Bug#807097: python-django: Undeclared removal of previously supported features causes crashes
Neil Williams
codehelp at debian.org
Mon Dec 7 12:00:27 UTC 2015
reassign 807097 django-hijack
retitle 807097 incompatible with django1.9
found 807097 1.0.10-1
thanks
On Sun, 06 Dec 2015 20:21:17 +1100
Brian May <bam at debian.org> wrote:
> Sorry, accidentally sent private response by mistake. Resending.
>
> Neil Williams <codehelp at debian.org> writes:
>
> > Downgrading to 1.8 in testing fixes the problem, so if this isn't
> > the root cause, something else in 1.9 is producing a misleading
> > traceback. There's no reference to add-to-builtins in the
> > lava-server code that I can find.
>
> django-compat 1.0.7 has:
>
> try:
> from django.template.base import add_to_builtins
> except ImportError: # Django < 1.8
> from django.template import add_to_builtins
>
> So looks like Django 1.8 does have it, but it moved. Which perhaps
> should have been a warning that maybe this was a private symbol not
> intended for apps to use.
>
>
> django-compat 1.0.8 has in the release notes:
>
> add_to_builtins was removed for Django 1.9, still available for
> Django < 1.9
>
> The relevant code is now:
>
> if django.VERSION < (1, 8):
> from django.template import add_to_builtins
> elif django.VERSION < (1, 9):
> from django.template.base import add_to_builtins
> else:
> pass # Removed in 1.9. Use template settings instead
>
>
> I don't know what version of django-compat you have, however I think
> it must be < 1.0.8
>
> From your stack trace it would appear that the calling application -
> django-hijack - doesn't actually use add_to_builtins, however it uses
> the file from django-compat that tries to import the symbol anyway.
ARRRGGHHH! OK, that looks like hijack should test the import more
carefully to identify the right support.
> Looks like this should be fixed with django-compat 1.0.8
>
> As far as I can tell, django-compat isn't packaged for Debian.
The binary is python-django-compat.
https://tracker.debian.org/pkg/django-compat
> It looks like the latest release of django-hijack 2.0.0 requires
> django-compat >= 1.0.8
Many thanks for this, Brian. I had indeed misinterpreted that traceback
- and there was another database issue hiding behind the scenes which is
now in review upstream as well. I now have lava-server working again
with python-django 1.9-1 - and unit tests passing - but only if
python-django-hijack is not installed alongside django1.9.
Re-assigning to django-hijack. Django1.9 is revealing a bug in
django-hijack - so I'll add a Conflicts on django-hijack (<= 1.0.10-1)
to the lava-server package.
Sorry about this, I hadn't spotted hijack in the traceback from the
unit tests and it didn't make sense initially that this would be the
problem with the from django.template import Origin,
TemplateDoesNotExist traceback.
--
Neil Williams
=============
http://www.linux.codehelp.co.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/python-modules-team/attachments/20151207/559b08fd/attachment.sig>
More information about the Python-modules-team
mailing list