Message375233
Oh right, 'Pacific' is a directory, not a valid zone, and so ZoneInfoNotFoundError should be raised. I see.
Example:
$ ./python -m venv env
$ env/bin/python -m pip install tzdata
$ env/bin/python
# ZoneInfoNotFoundError expected, get IsADirectoryError
>>> import zoneinfo; zoneinfo.ZoneInfo('Pacific')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/vstinner/python/master/Lib/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/home/vstinner/python/master/Lib/importlib/resources.py", line 40, in open_binary
return reader.open_resource(resource)
File "/home/vstinner/python/master/Lib/importlib/abc.py", line 419, in open_resource
return self.files().joinpath(resource).open('rb')
File "/home/vstinner/python/master/Lib/pathlib.py", line 1238, in open
return io.open(self, mode, buffering, encoding, errors, newline,
IsADirectoryError: [Errno 21] Is a directory: '/home/vstinner/python/master/env/lib/python3.10/site-packages/tzdata/zoneinfo/Pacific'
# valid zone
>>> import zoneinfo; zoneinfo.ZoneInfo('Pacific/Noumea')
zoneinfo.ZoneInfo(key='Pacific/Noumea')
# raise ZoneInfoNotFoundError as expected (from FileNotFoundError)
>>> import zoneinfo; zoneinfo.ZoneInfo('xxx')
Traceback (most recent call last):
File "/home/vstinner/python/master/Lib/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/home/vstinner/python/master/Lib/importlib/resources.py", line 40, in open_binary
return reader.open_resource(resource)
File "/home/vstinner/python/master/Lib/importlib/abc.py", line 419, in open_resource
return self.files().joinpath(resource).open('rb')
File "/home/vstinner/python/master/Lib/pathlib.py", line 1238, in open
return io.open(self, mode, buffering, encoding, errors, newline,
File "/home/vstinner/python/master/Lib/pathlib.py", line 1106, in _opener
return self._accessor.open(self, flags, mode)
FileNotFoundError: [Errno 2] No such file or directory: '/home/vstinner/python/master/env/lib/python3.10/site-packages/tzdata/zoneinfo/xxx'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/vstinner/python/master/Lib/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 xxx' |
|
Date |
User |
Action |
Args |
2020-08-12 13:13:24 | vstinner | set | recipients:
+ vstinner, python-dev, p-ganssle, josh.ja.butt |
2020-08-12 13:13:24 | vstinner | set | messageid: <1597238004.12.0.0960426420276.issue41530@roundup.psfhosted.org> |
2020-08-12 13:13:24 | vstinner | link | issue41530 messages |
2020-08-12 13:13:23 | vstinner | create | |
|