From 01b199d3a9a9417650068adf02d277115d7da69f Mon Sep 17 00:00:00 2001 From: Tim Paine <3105306+timkpaine@users.noreply.github.com> Date: Tue, 6 Feb 2024 20:40:22 -0500 Subject: [PATCH] remove deprecated use of pkg_resources, switch to importlib Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com> --- csp/adapters/db.py | 6 +++--- csp/adapters/output_adapters/parquet.py | 13 ++++++++----- csp/adapters/parquet.py | 6 +++--- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/csp/adapters/db.py b/csp/adapters/db.py index a6fe0735..1aba1240 100644 --- a/csp/adapters/db.py +++ b/csp/adapters/db.py @@ -9,8 +9,8 @@ from backports import zoneinfo import pytz +from importlib.metadata import PackageNotFoundError, version as get_package_version from packaging import version -from pkg_resources import DistributionNotFound, get_distribution from csp import PushMode, ts from csp.impl.adaptermanager import AdapterManagerImpl, ManagedSimInputAdapter @@ -19,7 +19,7 @@ UTC = zoneinfo.ZoneInfo("UTC") try: - if version.parse(get_distribution("sqlalchemy").version) >= version.parse("2"): + if version.parse(get_package_version("sqlalchemy")) >= version.parse("2"): _SQLALCHEMY_2 = True else: _SQLALCHEMY_2 = False @@ -27,7 +27,7 @@ import sqlalchemy as db _HAS_SQLALCHEMY = True -except (DistributionNotFound, ValueError, TypeError, ImportError): +except (PackageNotFoundError, ValueError, TypeError, ImportError): _HAS_SQLALCHEMY = False db = None diff --git a/csp/adapters/output_adapters/parquet.py b/csp/adapters/output_adapters/parquet.py index adb908f0..1d6f8a18 100644 --- a/csp/adapters/output_adapters/parquet.py +++ b/csp/adapters/output_adapters/parquet.py @@ -1,6 +1,6 @@ import numpy import os -import pkg_resources +from importlib.metadata import PackageNotFoundError, version as get_package_version from packaging import version from typing import Callable, Dict, Optional, TypeVar @@ -37,10 +37,13 @@ def resolve_compression(self): def _get_default_parquet_version(): - if version.parse(pkg_resources.get_distribution("pyarrow").version) >= version.parse("6.0.1"): - return "2.6" - else: - return "2.0" + try: + if version.parse(get_package_version("pyarrow")) >= version.parse("6.0.1"): + return "2.6" + except PackageNotFoundError: + # Don't need to do anything in particular + ... + return "2.0" class ParquetWriter: diff --git a/csp/adapters/parquet.py b/csp/adapters/parquet.py index 1ca5c475..85e457ee 100644 --- a/csp/adapters/parquet.py +++ b/csp/adapters/parquet.py @@ -1,10 +1,10 @@ import datetime import io import numpy -import pkg_resources import platform import pyarrow import pyarrow.parquet +from importlib.metadata import PackageNotFoundError, version as get_package_version from packaging import version from typing import TypeVar @@ -28,9 +28,9 @@ try: _CAN_READ_ARROW_BINARY = False - if version.parse(pkg_resources.get_distribution("pyarrow").version) >= version.parse("4.0.1"): + if version.parse(get_package_version("pyarrow")) >= version.parse("4.0.1"): _CAN_READ_ARROW_BINARY = True -except (ValueError, TypeError): +except (PackageNotFoundError, ValueError, TypeError): # Cannot read binary arrow ...