Coverage for async-durable-execution/src/async_durable_execution/__about__.py: 100%

21 statements  

« prev     ^ index     » next       coverage.py v7.15.0, created at 2026-07-07 16:54 +0000

1# SPDX-FileCopyrightText: 2025-present Amazon.com, Inc. or its affiliates. 

2# 

3# SPDX-License-Identifier: Apache-2.0 

4from importlib.metadata import PackageNotFoundError, version 

5from pathlib import Path 

6 

7 

8_DIST_NAME = "async-durable-execution" 

9 

10 

11def _read_repo_version() -> str: 

12 version_file = _find_version_file() 

13 if version_file is None: 

14 return "0.0.0" 

15 

16 namespace: dict[str, str] = {} 

17 exec(version_file.read_text(encoding="utf-8"), namespace) 

18 return namespace["__version__"] 

19 

20 

21def _find_version_file() -> Path | None: 

22 current = Path(__file__).resolve() 

23 for parent in current.parents: 

24 candidate = parent / "VERSION.py" 

25 if candidate.exists(): 

26 return candidate 

27 return None 

28 

29 

30try: 

31 __version__ = version(_DIST_NAME) 

32except PackageNotFoundError: 

33 __version__ = _read_repo_version()