diff --git a/requirements.txt b/requirements.txt index 21c2402..389cdc6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,3 @@ -setuptools tzlocal utcdatetime zipfile2 diff --git a/sciunit2/cli.py b/sciunit2/cli.py index 3bca3d3..1e14df3 100644 --- a/sciunit2/cli.py +++ b/sciunit2/cli.py @@ -22,7 +22,7 @@ from getopt import getopt, GetoptError from io import StringIO import textwrap -import pkg_resources +from importlib.metadata import version as pkg_version import os import platform @@ -92,7 +92,7 @@ def _main(args): subcommand_usage(sys.stdout, [cls() for cls in __cmds__]) return elif op == '--version': - print(pkg_resources.require("sciunit2")[0]) + print(pkg_version("sciunit2")) return elif op == '--root': # pragma: no cover import sciunit2.workspace diff --git a/sciunit2/command/exec_/__init__.py b/sciunit2/command/exec_/__init__.py index 62cd41d..eb5e1e7 100644 --- a/sciunit2/command/exec_/__init__.py +++ b/sciunit2/command/exec_/__init__.py @@ -7,7 +7,7 @@ import sciunit2.workspace from getopt import getopt -from pkg_resources import resource_filename +from importlib.resources import files class ExecCommand(CommitMixin, AbstractCommand): @@ -28,7 +28,7 @@ def run(self, args): with emgr.exclusive(): rev = emgr.add(args) if optlist: - standin_fn = resource_filename(__name__, 'sciunit') + standin_fn = str(files(__name__).joinpath('sciunit')) sciunit2.core.shell(env=path_injection_for(standin_fn)) else: sciunit2.core.capture(args) diff --git a/sciunit2/command/post_install/__init__.py b/sciunit2/command/post_install/__init__.py index 68daee7..8fcbf29 100644 --- a/sciunit2/command/post_install/__init__.py +++ b/sciunit2/command/post_install/__init__.py @@ -5,7 +5,7 @@ import os import pwd import tempfile -import pkg_resources +from importlib.resources import files from shutil import copyfileobj from contextlib import closing from humanfriendly import format_path @@ -43,7 +43,8 @@ def patch_shell_script(from_, to, rcfile): to_ = os.path.expanduser(to) with tempfile.NamedTemporaryFile(dir=os.path.dirname(to_), prefix='pip-tmp') as tmp: - script = pkg_resources.resource_stream(__name__, from_) + script_path = files(__name__).joinpath(from_) + script = script_path.open("rb") try: with closing(script) as g, closing(open(to_, 'a+')) as f: f.seek(0) @@ -68,4 +69,4 @@ def patch_shell_script(from_, to, rcfile): print('Unable to patch %s. Please copy\n\n %s\n\n' 'to a subdirectory of your home directory ' 'and "source" it in %s.' % - (to, format_path(script.name), rcfile)) + (to, format_path(str(script_path)), rcfile))