django-celery-beat
django-celery-beat copied to clipboard
ValueError: Extraneous characters at end of TZ string
Summary:
I'm getting ValueError: Extraneous characters at end of TZ string: b'<+12>-12<+13>,M11.1.0,M1.2.2/123' while running django commands
https://github.com/mfogel/django-timezone-field/issues/92
- Celery Version: 5.2.7
- Celery-Beat Version: 2.3.0
- Python 3.9.13
- Django version: 4.0.6
Exact steps to reproduce the issue:
- python manage.py test
Detailed information
Traceback (most recent call last):
File "/home/myuser/myproject/myapp/manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/myuser/myproject/env/lib/python3.9/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
utility.execute()
File "/home/myuser/myproject/env/lib/python3.9/site-packages/django/core/management/__init__.py", line 420, in execute
django.setup()
File "/home/myuser/myproject/env/lib/python3.9/site-packages/django/__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/myuser/myproject/env/lib/python3.9/site-packages/django/apps/registry.py", line 116, in populate
app_config.import_models()
File "/home/myuser/myproject/env/lib/python3.9/site-packages/django/apps/config.py", line 304, in import_models
self.models_module = import_module(models_module_name)
File "/home/myuser/myproject/env/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 "/home/myuser/myproject/env/lib/python3.9/site-packages/django_celery_beat/models.py", line 8, in <module>
import timezone_field
File "/home/myuser/myproject/env/lib/python3.9/site-packages/timezone_field/__init__.py", line 1, in <module>
from timezone_field.fields import TimeZoneField
File "/home/myuser/myproject/env/lib/python3.9/site-packages/timezone_field/fields.py", line 11, in <module>
class TimeZoneField(models.Field):
File "/home/myuser/myproject/env/lib/python3.9/site-packages/timezone_field/fields.py", line 41, in TimeZoneField
default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones]
File "/home/myuser/myproject/env/lib/python3.9/site-packages/timezone_field/fields.py", line 41, in <listcomp>
default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones]
ValueError: Extraneous characters at end of TZ string: b'<+12>-12<+13>,M11.1.0,M1.2.2/123'
>>> from zoneinfo import ZoneInfo
>>> ZoneInfo("Pacific/Fiji")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: Extraneous characters at end of TZ string: b'<+12>-12<+13>,M11.1.0,M1.2.2/123'
it's an upstream issue :)
Any updates?
Any updates?
This problem may occur in outdated system.
Here is a workaround: pip install tzdata package, and run export PYTHONTZPATH="" in your environment. This will force zoneinfo to use tzdata instead of system provided timezone info data.