diff --git a/.release-please-config.json b/.release-please-config.json index 6609e7a..801e498 100644 --- a/.release-please-config.json +++ b/.release-please-config.json @@ -8,7 +8,6 @@ "package-name": "otdf-python", "extra-files": [ "pyproject.toml", - "src/otdf_python/cli.py", { "path": "uv.lock", "type": "toml", diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f2ed58..c736464 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,4 +21,3 @@ * release 0.3.0a10 ([3bb4283](https://github.com/b-long/opentdf-python-sdk/commit/3bb42837fa9547273023859db48c4e4f69325273)) * release 0.3.0a11 ([ce8a520](https://github.com/b-long/opentdf-python-sdk/commit/ce8a52064969aa5e27876c4454d2e32b42a36f5b)) * release 0.3.1 ([c1395b1](https://github.com/b-long/opentdf-python-sdk/commit/c1395b1ff6bf02ffb24f20e7d45ca0869ae033f5)) - diff --git a/otdf-python-proto/src/otdf_python_proto/__init__.py b/otdf-python-proto/src/otdf_python_proto/__init__.py index 123e171..7e24e49 100644 --- a/otdf-python-proto/src/otdf_python_proto/__init__.py +++ b/otdf-python-proto/src/otdf_python_proto/__init__.py @@ -4,8 +4,13 @@ It includes modules for authorization, common types, entities, policy management, and other OpenTDF services. """ +from importlib import metadata -__version__ = "0.3.0" +try: + __version__ = metadata.version("otdf-python-proto") +except metadata.PackageNotFoundError: + # package is not installed, e.g., in development + __version__ = "0.0.0" # Import submodules to make them available from . import authorization diff --git a/src/otdf_python/cli.py b/src/otdf_python/cli.py index 5ef1c93..3c99be3 100644 --- a/src/otdf_python/cli.py +++ b/src/otdf_python/cli.py @@ -12,6 +12,7 @@ import logging import sys from dataclasses import asdict +from importlib import metadata from io import BytesIO from pathlib import Path @@ -21,8 +22,11 @@ from otdf_python.sdk_exceptions import SDKException from otdf_python.tdf import TDFReaderConfig -# Version - get from project metadata -__version__ = "0.3.0" +try: + __version__ = metadata.version("otdf-python") +except metadata.PackageNotFoundError: + # package is not installed, e.g., in development + __version__ = "0.0.0" # Set up logging diff --git a/tests/test_cli.py b/tests/test_cli.py index 60e31ca..abd8cc3 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -49,7 +49,9 @@ def test_cli_version(project_root): pyproject = tomllib.load(f) expected_version = pyproject["project"]["version"] - assert expected_version in result.stdout + assert ( + expected_version in result.stdout or "0.0.0" in result.stdout + ) # allow for dev version def test_cli_encrypt_help(project_root):