From f5ac6cebe96e37c16cfaad344dccf212e435bcf4 Mon Sep 17 00:00:00 2001 From: Ryan Tam Date: Sun, 16 Apr 2023 17:22:55 +0100 Subject: [PATCH] Use importlib instead of pkg_resources --- jupyterlab_code_formatter/handlers.py | 16 +++------------- jupyterlab_code_formatter/tests/test_handlers.py | 5 +++-- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/jupyterlab_code_formatter/handlers.py b/jupyterlab_code_formatter/handlers.py index 588b538..7d986f0 100644 --- a/jupyterlab_code_formatter/handlers.py +++ b/jupyterlab_code_formatter/handlers.py @@ -1,6 +1,6 @@ import json -import pkg_resources +from importlib.metadata import version from jupyter_server.base.handlers import APIHandler from jupyter_server.serverapp import ServerWebApplication from jupyter_server.utils import url_path_join @@ -48,9 +48,7 @@ def setup_handlers(web_app: ServerWebApplication) -> None: def check_plugin_version(handler: APIHandler): - server_extension_version = pkg_resources.get_distribution( - "jupyterlab_code_formatter" - ).version + server_extension_version = version("jupyterlab_code_formatter") lab_extension_version = handler.request.headers.get("Plugin-Version") version_matches = server_extension_version == lab_extension_version if not version_matches: @@ -125,12 +123,4 @@ def post(self) -> None: class VersionAPIHandler(APIHandler): def get(self) -> None: """Show what version is this server plugin on.""" - self.finish( - json.dumps( - { - "version": pkg_resources.get_distribution( - "jupyterlab_code_formatter" - ).version - } - ) - ) + self.finish(json.dumps({"version": version("jupyterlab_code_formatter")})) diff --git a/jupyterlab_code_formatter/tests/test_handlers.py b/jupyterlab_code_formatter/tests/test_handlers.py index c3cf756..1fbd726 100644 --- a/jupyterlab_code_formatter/tests/test_handlers.py +++ b/jupyterlab_code_formatter/tests/test_handlers.py @@ -1,8 +1,9 @@ import json import typing as t -import pkg_resources + import pytest +from importlib.metadata import version from jsonschema import validate from tornado.httpclient import HTTPResponse @@ -79,7 +80,7 @@ def _create_headers(plugin_version: t.Optional[str] = None) -> t.Dict[str, str]: return { "Plugin-Version": plugin_version if plugin_version is not None - else pkg_resources.get_distribution("jupyterlab_code_formatter").version + else version("jupyterlab_code_formatter") }