Skip to content

Commit b532a87

Browse files
committed
Don't use deprecated pkg_resources anymore
1 parent 98a5826 commit b532a87

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

deform/template.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
# Standard Library
44
import os.path
5+
import importlib.resources as resources
56

67
from chameleon.zpt.loader import TemplateLoader
7-
from pkg_resources import resource_filename
88
from translationstring import ChameleonTranslate
99

1010
from .exception import TemplateError
@@ -40,7 +40,15 @@ def __init__(self, *args, **kwargs):
4040
def load(self, filename, *args, **kwargs):
4141
if ":" in filename:
4242
pkg_name, fn = filename.split(":", 1)
43-
filename = resource_filename(pkg_name, fn)
43+
resource = resources.files(pkg_name).joinpath(fn)
44+
try:
45+
with resources.as_file(resource) as resolved:
46+
filename = os.fspath(resolved)
47+
return super(ZPTTemplateLoader, self).load(
48+
filename, *args, **kwargs
49+
)
50+
except ValueError:
51+
raise TemplateError(filename)
4452
else:
4553
path, ext = os.path.splitext(filename)
4654
if not ext:
@@ -123,5 +131,5 @@ def load(self, template_name):
123131
return self.loader.load(template_name)
124132

125133

126-
default_dir = resource_filename("deform", "templates/")
134+
default_dir = os.fspath(resources.files("deform").joinpath("templates"))
127135
default_renderer = ZPTRendererFactory((default_dir,))

0 commit comments

Comments
 (0)