Package: python3-django-allauth
Version: 0.51.0-1
Severity: normal

Dear Maintainers,

Yesterday we discovered that reaching the rate limit of the registration page 
of our Mailman installation throws this exception (and a lot of emails, sigh!):

> ERROR 2025-05-13 01:34:04,725 1324 django.request Internal Server Error: 
> /mailman3/accounts/signup/
> Traceback (most recent call last):
>   File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", 
> line 47, in inner
>     response = get_response(request)
>                ^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 
> 181, in _get_response
>     response = wrapped_callback(request, *callback_args, **callback_kwargs)
>                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 
> 70, in view
>     return self.dispatch(request, *args, **kwargs)
>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/utils/decorators.py", line 43, 
> in _wrapper
>     return bound_method(*args, **kwargs)
>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/allauth/decorators.py", line 18, in 
> wrap
>     resp = ratelimit.consume_or_429(request, action=action, **rl_kwargs)
>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/allauth/ratelimit.py", line 77, in 
> consume_or_429
>     return render(request, "429." + app_settings.TEMPLATE_EXTENSION, 
> status=429)
>            
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/shortcuts.py", line 19, in 
> render
>     content = loader.render_to_string(template_name, context, request, 
> using=using)
>               
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/template/loader.py", line 61, 
> in render_to_string
>     template = get_template(template_name, using=using)
>                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3/dist-packages/django/template/loader.py", line 19, 
> in get_template
>     raise TemplateDoesNotExist(template_name, chain=chain)
> django.template.exceptions.TemplateDoesNotExist: 429.html

To generate this page, mailman3 use allauth package; when rate limit is 
triggered it
tries to display a page for error 429 but cannot find the corresponding 
template.

My impression is that

* a missing template should not throw such a serious exception
* the task of providing the template is of this package, as it is hardcoded in 
ratelimit.py

but I could be wrong.

Best regards.

Paolo

-- System Information:
Debian Release: 12.10
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-34-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages python3-django-allauth depends on:
ii  python3                    3.11.2-1+b1
ii  python3-cryptography       38.0.4-3+deb12u1
ii  python3-django             3:3.2.19-1+deb12u1
ii  python3-jwt                2.6.0-1
ii  python3-openid             3.2.0-2
ii  python3-requests           2.28.1+dfsg-1
ii  python3-requests-oauthlib  1.3.0+ds-1

python3-django-allauth recommends no packages.

Versions of packages python3-django-allauth suggests:
pn  python-django-allauth-doc  <none>

-- no debconf information

Reply via email to