diff --git a/s3torchconnector/docs/conf.py b/s3torchconnector/docs/conf.py index 4d6830c6..ec072bcf 100644 --- a/s3torchconnector/docs/conf.py +++ b/s3torchconnector/docs/conf.py @@ -11,6 +11,7 @@ # import os import sys +from s3torchconnector import __version__ sys.path.insert(0, os.path.abspath("..")) @@ -21,7 +22,7 @@ project = "Amazon S3 Connector for PyTorch" copyright = "2023, Amazon S3" author = "Amazon S3" -release = "1.1.1" +release = __version__ # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/s3torchconnector/src/s3torchconnector/__init__.py b/s3torchconnector/src/s3torchconnector/__init__.py index 136c2385..fec26aaf 100644 --- a/s3torchconnector/src/s3torchconnector/__init__.py +++ b/s3torchconnector/src/s3torchconnector/__init__.py @@ -10,6 +10,7 @@ from .s3iterable_dataset import S3IterableDataset from .s3map_dataset import S3MapDataset from .s3checkpoint import S3Checkpoint +from ._version import __version__ __all__ = [ "S3IterableDataset", @@ -18,4 +19,5 @@ "S3Reader", "S3Writer", "S3Exception", + "__version__", ] diff --git a/s3torchconnector/tst/unit/test_version.py b/s3torchconnector/tst/unit/test_version.py new file mode 100644 index 00000000..6084d622 --- /dev/null +++ b/s3torchconnector/tst/unit/test_version.py @@ -0,0 +1,8 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# // SPDX-License-Identifier: BSD +from s3torchconnector import __version__ + + +def test_connector_version(): + assert isinstance(__version__, str) + assert __version__ > "1.0.0" diff --git a/s3torchconnectorclient/python/src/s3torchconnectorclient/__init__.py b/s3torchconnectorclient/python/src/s3torchconnectorclient/__init__.py index 50de8b54..23a5e0d3 100644 --- a/s3torchconnectorclient/python/src/s3torchconnectorclient/__init__.py +++ b/s3torchconnectorclient/python/src/s3torchconnectorclient/__init__.py @@ -6,6 +6,7 @@ from ._logger_patch import TRACE as LOG_TRACE from ._logger_patch import _install_trace_logging from ._mountpoint_s3_client import S3Exception +from ._mountpoint_s3_client import __version__ _install_trace_logging() @@ -16,7 +17,4 @@ def _s3exception_reduce(exc: S3Exception): copyreg.pickle(S3Exception, _s3exception_reduce) -__all__ = [ - "LOG_TRACE", - "S3Exception", -] +__all__ = ["LOG_TRACE", "S3Exception", "__version__"] diff --git a/s3torchconnectorclient/python/tst/unit/test_mountpoint_s3_client.py b/s3torchconnectorclient/python/tst/unit/test_mountpoint_s3_client.py index fd1c206b..943fe768 100644 --- a/s3torchconnectorclient/python/tst/unit/test_mountpoint_s3_client.py +++ b/s3torchconnectorclient/python/tst/unit/test_mountpoint_s3_client.py @@ -3,9 +3,10 @@ import logging import pickle +import pytest from typing import Set -import pytest +from s3torchconnectorclient import LOG_TRACE, __version__ from s3torchconnectorclient._mountpoint_s3_client import ( S3Exception, GetObjectStream, @@ -15,8 +16,6 @@ MountpointS3Client, ) -from s3torchconnectorclient import LOG_TRACE - logging.basicConfig( format="%(levelname)s %(name)s %(asctime)-15s %(filename)s:%(lineno)d %(message)s" ) @@ -291,3 +290,8 @@ def test_mountpoint_client_pickles(): def _assert_isinstance(obj, expected: type): assert isinstance(obj, expected), f"Expected a {expected}, got {type(obj)=}" + + +def test_client_version(): + assert isinstance(__version__, str) + assert __version__ > "1.0.0" diff --git a/s3torchconnectorclient/rust/src/lib.rs b/s3torchconnectorclient/rust/src/lib.rs index fab90a56..11622c2e 100644 --- a/s3torchconnectorclient/rust/src/lib.rs +++ b/s3torchconnectorclient/rust/src/lib.rs @@ -48,5 +48,6 @@ fn make_lib(py: Python, mountpoint_s3_client: &PyModule) -> PyResult<()> { mountpoint_s3_client.add_class::()?; mountpoint_s3_client.add_class::()?; mountpoint_s3_client.add("S3Exception", py.get_type::())?; + mountpoint_s3_client.add("__version__", build_info::FULL_VERSION)?; Ok(()) }