From 42b3f0137caed25ac3242435b571155d2d84c78e Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 24 Nov 2023 15:28:14 -0500 Subject: [PATCH] feat: add support for google.cloud.ndb.__version__ (#929) --- google/cloud/ndb/__init__.py | 5 +++-- google/cloud/ndb/version.py | 15 +++++++++++++++ setup.py | 12 +++++++++++- 3 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 google/cloud/ndb/version.py diff --git a/google/cloud/ndb/__init__.py b/google/cloud/ndb/__init__.py index fa82bf91..3375db72 100644 --- a/google/cloud/ndb/__init__.py +++ b/google/cloud/ndb/__init__.py @@ -21,9 +21,9 @@ .. autodata:: __all__ """ -from pkg_resources import get_distribution +from google.cloud.ndb import version -__version__ = get_distribution("google-cloud-ndb").version +__version__ = version.__version__ from google.cloud.ndb.client import Client from google.cloud.ndb.context import AutoBatcher @@ -131,6 +131,7 @@ from google.cloud.ndb._transaction import non_transactional __all__ = [ + "__version__", "AutoBatcher", "Client", "Context", diff --git a/google/cloud/ndb/version.py b/google/cloud/ndb/version.py new file mode 100644 index 00000000..210b9c03 --- /dev/null +++ b/google/cloud/ndb/version.py @@ -0,0 +1,15 @@ +# Copyright 2023 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "2.2.2" diff --git a/setup.py b/setup.py index 32e55010..8d9c8182 100644 --- a/setup.py +++ b/setup.py @@ -14,10 +14,20 @@ import io import os +import re import setuptools +PACKAGE_ROOT = os.path.abspath(os.path.dirname(__file__)) + +version = None + +with open(os.path.join(PACKAGE_ROOT, "google/cloud/ndb/version.py")) as fp: + version_candidates = re.findall(r"(?<=\")\d+.\d+.\d+(?=\")", fp.read()) + assert len(version_candidates) == 1 + version = version_candidates[0] + def main(): package_root = os.path.abspath(os.path.dirname(__file__)) readme_filename = os.path.join(package_root, "README.md") @@ -36,7 +46,7 @@ def main(): setuptools.setup( name="google-cloud-ndb", - version = "2.2.2", + version = version, description="NDB library for Google Cloud Datastore", long_description=readme, long_description_content_type="text/markdown",