#33674 closed Bug (needsinfo)
Timezones cause 500 errors to not email the site admin
| Reported by: | iragm | Owned by: | |
|---|---|---|---|
| Component: | Error reporting | Version: | 4.0 |
| Severity: | Normal | Keywords: | |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description (last modified by )
I believe I have found a bug - my site was working great prior to adding support for localization/timezones and if a user encountered a 500 internal server error, I'd get an email about it and could fix it. I added support for timezones, and stopped getting the alert emails -- and the users are no longer sent to my 500 page.
Here's some information:
- debug=True causes things to work correctly (no email sent, debug info displayed to the user)
- this does not happen in a development environment at all as far as I can tell
- I am using Channels and Daphne to serve content behind an Nginx reverse proxy
- Edit: using python3 manage.py runserver with debug=False returns the correct 500 page. This issue is only happening when running with Daphne.
- When 500 errors happen, the user gets redirected to a very generic Daphne "exception inside application" page. Before you blame this on Daphne, please keep reading...
- The error log traceback points to
site-packages/django/templatetags/tz.py
If I change this class to look as follows:
def render(self, context):
try:
with timezone.override(self.tz.resolve(context)):
output = self.nodelist.render(context)
return output
except:
return self.nodelist.render(context)
the correct 500 error page is rendered and the email goes out to me telling me where the error occurred. That suggests to me that something in timezone.override isn't working as it should be.
I could just make a PR with this but I am not really sure what consequences this change has.
I know there's a lack of info in this, and I apologize in advance. Because I only see this issue on my production server, I have to take my whole site down to try to test and troubleshoot it.
Change History (8)
comment:1 by , 4 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 4 years ago
| Resolution: | → needsinfo |
|---|---|
| Status: | new → closed |
comment:3 by , 4 years ago
2022-05-03 06:47:54,594 ERROR Exception inside application: 'No time zone found with key '
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/base.py", line 253, in _get_response_async
response = await wrapped_callback(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/opt/production/lib/python3.9/site-packages/asgiref/current_thread_executor.py", line 22, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 455, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/generic/base.py", line 84, in view
return self.dispatch(request, *args, **kwargs)
File "/opt/production/fishauctions/./auctions/views.py", line 2242, in dispatch
raise DeliberateError("break stuff")
NameError: name 'DeliberateError' is not defined
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
File "/opt/production/lib/python3.9/site-packages/debug_toolbar/middleware.py", line 48, in __call__
return self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 204, in __call__
return call_result.result()
File "/usr/lib/python3.9/concurrent/futures/_base.py", line 438, in result
return self.__get_result()
File "/usr/lib/python3.9/concurrent/futures/_base.py", line 390, in __get_result
raise self._exception
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 270, in main_wrap
result = await self.awaitable(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/usr/lib/python3.9/importlib/resources.py", line 88, in open_binary
package = _get_package(package)
File "/usr/lib/python3.9/importlib/resources.py", line 49, in _get_package
module = _resolve(package)
File "/usr/lib/python3.9/importlib/resources.py", line 40, in _resolve
return import_module(name)
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 972, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 984, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/channels/routing.py", line 71, in __call__
return await application(scope, receive, send)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/asgi.py", line 155, in __call__
await self.handle(scope, receive, send)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/asgi.py", line 177, in handle
response = await self.get_response_async(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/base.py", line 162, in get_response_async
response = await self._middleware_chain(request)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 455, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 57, in inner
response = response_for_exception(request, exc)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 146, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key '
comment:4 by , 4 years ago
Thanks.
ModuleNotFoundError: No module named 'tzdata'
Can you try pip install tzdata please?
(What's your platform info please? And what timezone are you trying to set? 🤔)
comment:5 by , 4 years ago
tzinfo was not installed. I am not sure what to make of that, I would have expected pip to install it. This is true both in my dev environment which has always worked, and production, which only works when I add in the try stuff:
Looks like we are now getting an error "Is a directory". I am going to take a guess that NO timezone at all is being set by Daphne when an error happens, which causes the path to go to the root folder rather than the (for example) America folder and find the New_York file.
2022-05-04 08:19:20,317 ERROR Exception inside application: [Errno 21] Is a directory: '/opt/production/lib/python3.9/site-packages/tzdata/zoneinfo'
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/base.py", line 253, in _get_response_async
response = await wrapped_callback(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/opt/production/lib/python3.9/site-packages/asgiref/current_thread_executor.py", line 22, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 455, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/generic/base.py", line 84, in view
return self.dispatch(request, *args, **kwargs)
File "/opt/production/fishauctions/./auctions/views.py", line 2245, in dispatch
raise UnknownError()
NameError: name 'UnknownError' is not defined
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 145, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/usr/lib/python3.9/importlib/resources.py", line 91, in open_binary
return reader.open_resource(resource)
File "<frozen importlib._bootstrap_external>", line 1055, in open_resource
IsADirectoryError: [Errno 21] Is a directory: '/opt/production/lib/python3.9/site-packages/tzdata/zoneinfo'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/deprecation.py", line 150, in __acall__
response = response or await self.get_response(request)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 44, in inner
response = await sync_to_async(
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 414, in __call__
ret = await asyncio.wait_for(future, timeout=None)
File "/usr/lib/python3.9/asyncio/tasks.py", line 442, in wait_for
return await fut
File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/opt/production/lib/python3.9/site-packages/asgiref/sync.py", line 453, in thread_handler
return func(*args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 139, in response_for_exception
response = handle_uncaught_exception(
File "/opt/production/lib/python3.9/site-packages/django/core/handlers/exception.py", line 184, in handle_uncaught_exception
return callback(request)
File "/opt/production/lib/python3.9/site-packages/django/utils/decorators.py", line 133, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/opt/production/lib/python3.9/site-packages/django/views/defaults.py", line 102, in server_error
return HttpResponseServerError(template.render())
File "/opt/production/lib/python3.9/site-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/opt/production/lib/python3.9/site-packages/django/test/utils.py", line 111, in instrumented_test_render
return self.nodelist.render(context)
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 1000, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/opt/production/lib/python3.9/site-packages/django/template/base.py", line 958, in render_annotated
return self.render(context)
File "/opt/production/lib/python3.9/site-packages/django/templatetags/tz.py", line 145, in render
with timezone.override(self.tz.resolve(context)):
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 157, in __enter__
activate(self.timezone)
File "/opt/production/lib/python3.9/site-packages/django/utils/timezone.py", line 121, in activate
_active.value = zoneinfo.ZoneInfo(timezone)
File "/usr/lib/python3.9/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/usr/lib/python3.9/importlib/resources.py", line 91, in open_binary
return reader.open_resource(resource)
File "<frozen importlib._bootstrap_external>", line 1055, in open_resource
IsADirectoryError: [Errno 21] Is a directory: '/opt/production/lib/python3.9/site-packages/tzdata/zoneinfo'
During handling of the above exception, another exception occurred:
The time zone is supposed to be set via a cookie in my base.html file. My settings look like this:
TIME_ZONE = os.environ['TIME_ZONE'] # this is set correctly to: 'America/New_York' USE_I18N = False USE_L10N = False USE_TZ = True
At the top of base.html:
{% load tz %}
{% load l10n %}
{% timezone user_timezone %}
And user_timezone is set by a context processor:
def add_tz(request):
"""
Add timezone cookie - example: 'America/New_York'
This is set via js with Intl.DateTimeFormat().resolvedOptions().timeZone
"""
user_timezone = ""
user_timezone_set = False
try:
if request.COOKIES['user_timezone']:
user_timezone = request.COOKIES['user_timezone']
user_timezone_set = True
except:
pass
if not user_timezone:
user_timezone = "America/Chicago"
user_timezone_set = False
return {'user_timezone': user_timezone, 'user_timezone_set': user_timezone_set}
I believe this context processor is not getting called when the 500 error occurs, so user_timezone is probably either None or an empty string. So that could be the issue.
One of the things that I like about Django is that when I do something stupid it tells me in the form of the error email - that should happen even if the {% timezone user_timezone %} tag is not set correctly, right?
comment:6 by , 4 years ago
tzinfo was not installed. I am not sure what to make of that, I would have expected pip to install it.
You mean tzdata? — This is why I asked your OS, etc. It's quite unexpected that your system would not have the timezone database available, and installed in the expected locations. The tzdata package is a fallback provided for such circumstances, which usually just means Windows, for which it is installed automatically.
Can I ask you for a minimal reproduce project. There's too much that could be going on here: is it your system, is it Daphne, is it Django?
It's hard to diagnose a solution otherwise.
...that should happen even if the {% timezone user_timezone %} tag is not set correctly, right?
As phrased, likely, yes, but how's it coming up? IsADirectoryError — if this is a system error, it may be out-of-scope to try and work around. (Not sure yet.)
Thanks!
comment:7 by , 4 years ago
Yeah, sorry tzdata, not tzinfo. My system is an Ubuntu 21.10 desktop system. At this point, it'll take me a couple days to set up another dev environment and strip things down to a very simple case, so it's not worth the time IMHO.
I'll just leave the try/except logic in my tz.py and keep hand editing it each time I update.
Thanks for taking the time to reply, I really appreciate it.
comment:8 by , 4 years ago
OK, thanks. If you are able to put together a reproducer, that would be good to see.
Hi, thanks for the report.
Can I ask you to flesh it out?
Can you provide the traceback here please? (Specifically, we need to see what the exception is that you're catching with the added
exceptthere...)I'll mark as needsinfo pending that.
Thanks.