See https://stackoverflow.com/a/
24271786/51685
if not isinstance(zone, str):
return zone
- exc = None
if pytz:
try:
return pytz.timezone(zone)
- except pytz.UnknownTimeZoneError as exc: # noqa: F841
- pass
+ except pytz.UnknownTimeZoneError as e:
+ exc = e
else:
assert zoneinfo
try:
return zoneinfo.ZoneInfo(zone)
- except zoneinfo.ZoneInfoNotFoundError as exc: # noqa: F841
- pass
+ except zoneinfo.ZoneInfoNotFoundError as e:
+ exc = e
raise LookupError(f"Unknown timezone {zone}") from exc