[Pkg-mailman-hackers] Bug#1000810: python3-django-hyperkitty: Internal Server Error (500): ImportError: cannot import name 'url_has_allowed_host_and_scheme'

Colin Turner ct at piglets.com
Mon Nov 29 12:29:40 GMT 2021


Package: python3-django-hyperkitty
Version: 1.3.4-4
Severity: normal

Dear Maintainer,

Thank you for work in packaging the mailman3 ecosystem.

At some recent point, it became impossible to access the mailman 3 web interface, hyperkitty. An Internal Server Error is being reported on all attempts to access.

The Traceback is a bit puzzling, since it looks like one part of Django is trying to import from another and finding a missing symbol name.

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/django/core/handlers/wsgi.py", line 141, in __call__
    ]
  File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 75, in get_response
    self._view_middleware.insert(
  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 36, in inner
    async def inner(request):
  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 90, in response_for_exception
    elif isinstance(exc, SuspiciousOperation):
  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 128, in handle_uncaught_exception

  File "/usr/lib/python3/dist-packages/django/urls/resolvers.py", line 597, in resolve_error_handler
    # urlconf_module might be a valid set of patterns, so we default to it
  File "/usr/lib/python3/dist-packages/django/utils/functional.py", line 80, in __get__
    the lazy evaluation code is triggered. Results are not memoized; the
  File "/usr/lib/python3/dist-packages/django/urls/resolvers.py", line 577, in urlconf_module
    sub_match_dict,
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/usr/share/mailman3-web/./urls.py", line 29, in <module>
    url(r'^postorius/', include('postorius.urls')),
  File "/usr/lib/python3/dist-packages/django/urls/conf.py", line 34, in include
    urlconf_module = import_module(urlconf_module)
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/postorius/urls.py", line 23, in <module>
    from postorius.views import list as list_views
  File "/usr/lib/python3/dist-packages/postorius/views/list.py", line 48, in <module>
    from postorius.auth.mixins import ListOwnerMixin
  File "/usr/lib/python3/dist-packages/postorius/auth/mixins.py", line 21, in <module>
    from django.contrib.auth.mixins import LoginRequiredMixin, UserPassesTestMixin
  File "/usr/lib/python3/dist-packages/django/contrib/auth/mixins.py", line 5, in <module>
    from django.contrib.auth.views import redirect_to_login
  File "/usr/lib/python3/dist-packages/django/contrib/auth/views.py", line 20, in <module>
    from django.utils.http import (
ImportError: cannot import name 'url_has_allowed_host_and_scheme' from 'django.utils.http' (/usr/lib/python3/dist-packages/django/utils/http.py)

The last files indicated are both in python3-django and it's not obvious to me why the import is failing or whether that's a red herring, but it seems as though this was linked to a recent python3-django upgrade?

Happy to do any useful tests to investigate further.

Kind regards,

CT.

-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.14.0-2-amd64 (SMP w/4 CPU threads)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages python3-django-hyperkitty depends on:
ii  fonts-glyphicons-halflings   1.009~3.4.1+dfsg-2
ii  libjs-bootstrap4             4.5.2+dfsg1-8
ii  libjs-sphinxdoc              4.2.0-5
ii  python3                      3.9.7-1
ii  python3-dateutil             2.8.1-6
ii  python3-django               2:3.2.9-2
ii  python3-django-compressor    2.4-2
ii  python3-django-extensions    3.1.5-1
ii  python3-django-gravatar2     1.4.4-2
ii  python3-django-haystack      3.1.1-1
ii  python3-django-mailman3      1.3.7-1
ii  python3-django-q             1.2.1-1
ii  python3-djangorestframework  3.12.4-1
ii  python3-elasticsearch        7.1.0-5
ii  python3-flufl.lock           5.0.1-1
ii  python3-mailmanclient        3.3.3-1
ii  python3-networkx             2.5+ds-2
ii  python3-robot-detection      0.4.0-2
ii  python3-tz                   2021.3-1

Versions of packages python3-django-hyperkitty recommends:
ii  mailman3-web  0+20200530-2

python3-django-hyperkitty suggests no packages.

-- no debconf information



More information about the Pkg-mailman-hackers mailing list