diff --git a/www/py-dj40-django-timezone-field/Makefile b/www/py-dj40-django-timezone-field/Makefile index e95f9ad5da48..68ffb0453cae 100644 --- a/www/py-dj40-django-timezone-field/Makefile +++ b/www/py-dj40-django-timezone-field/Makefile @@ -1,29 +1,30 @@ PORTNAME= django-timezone-field DISTVERSION= 5.0 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj40- MAINTAINER= kai@FreeBSD.org COMMENT= Provides database and form fields for pytz timezone objects for Django LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django40>=2.2:www/py-django40@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR} USES= python:3.6+ USE_PYTHON= distutils autoplist CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} NO_ARCH= yes .include .if ${PYTHON_REL} < 30900 RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}backports.zoneinfo>=0.2.1<0.3.0:devel/py-backports.zoneinfo@${PY_FLAVOR} .endif .include diff --git a/www/py-dj40-django-timezone-field/files/patch-timezone__field_fields.py b/www/py-dj40-django-timezone-field/files/patch-timezone__field_fields.py new file mode 100644 index 000000000000..72b10b78da49 --- /dev/null +++ b/www/py-dj40-django-timezone-field/files/patch-timezone__field_fields.py @@ -0,0 +1,27 @@ +From 0257f2e9c7c488e8a859ee924c93d9f38afa4dc7 Mon Sep 17 00:00:00 2001 +From: jeremystretch +Date: Fri, 12 Aug 2022 10:03:27 -0400 +Subject: [PATCH] Fixes #94: Catch ZoneInfoNotFoundError exception when + populating timezones + +Obtained from: + +https://github.com/mfogel/django-timezone-field/commit/0257f2e9c7c488e8a859ee924c93d9f38afa4dc7 + +--- timezone_field/fields.py.orig 2022-02-09 04:42:10 UTC ++++ timezone_field/fields.py +@@ -38,7 +38,13 @@ class TimeZoneField(models.Field): + # existing migration files will need to be accomodated. + default_max_length = 63 + default_pytz_tzs = [pytz.timezone(tz) for tz in pytz.common_timezones] +- default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones] ++ default_zoneinfo_tzs = [] ++ for tz in pytz.common_timezones: ++ try: ++ default_zoneinfo_tzs.append(ZoneInfo(tz)) ++ except ZoneInfoNotFoundError: ++ # ZoneInfo does not yet exist for this timezone ++ pass + + def __init__(self, *args, **kwargs): + # allow some use of positional args up until the args we customize