diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2022-01-21 21:18:31 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-21 21:18:31 (GMT) |
commit | 00b2b578bd9e516d601063a086b03177f546bcdd (patch) | |
tree | db2cff504938187649dd72862720b786388236a0 /Lib/zoneinfo | |
parent | f1e559b7544d665a84747a7bc7ecebadef2a6be2 (diff) | |
download | cpython-00b2b578bd9e516d601063a086b03177f546bcdd.zip cpython-00b2b578bd9e516d601063a086b03177f546bcdd.tar.gz cpython-00b2b578bd9e516d601063a086b03177f546bcdd.tar.bz2 |
bpo-46124: Update zoneinfo to rely on importlib.resources traversable API. (GH-30190)
Automerge-Triggered-By: GH:jaraco
Diffstat (limited to 'Lib/zoneinfo')
-rw-r--r-- | Lib/zoneinfo/_common.py | 4 | ||||
-rw-r--r-- | Lib/zoneinfo/_tzpath.py | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/Lib/zoneinfo/_common.py b/Lib/zoneinfo/_common.py index 4c24f01..98cdfe3 100644 --- a/Lib/zoneinfo/_common.py +++ b/Lib/zoneinfo/_common.py @@ -2,14 +2,14 @@ import struct def load_tzdata(key): - import importlib.resources + from importlib import resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: - return importlib.resources.open_binary(package_name, resource_name) + return resources.files(package_name).joinpath(resource_name).open("rb") except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": diff --git a/Lib/zoneinfo/_tzpath.py b/Lib/zoneinfo/_tzpath.py index 672560b..4985dce 100644 --- a/Lib/zoneinfo/_tzpath.py +++ b/Lib/zoneinfo/_tzpath.py @@ -118,7 +118,7 @@ def available_timezones(): # Start with loading from the tzdata package if it exists: this has a # pre-assembled list of zones that only requires opening one file. try: - with resources.open_text("tzdata", "zones") as f: + with resources.files("tzdata").joinpath("zones").open("r") as f: for zone in f: zone = zone.strip() if zone: |