From c8e550586d4b1392be195d8b4707b7e0da2328aa Mon Sep 17 00:00:00 2001 From: James Braza Date: Tue, 1 Oct 2024 10:57:13 -0700 Subject: [PATCH 1/3] Updated version.py template to include __all__ --- src/setuptools_scm/_integration/dump_version.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/setuptools_scm/_integration/dump_version.py b/src/setuptools_scm/_integration/dump_version.py index cc7d3b1b..a968e7b9 100644 --- a/src/setuptools_scm/_integration/dump_version.py +++ b/src/setuptools_scm/_integration/dump_version.py @@ -15,9 +15,13 @@ ".py": """\ # file generated by setuptools-scm # don't change, don't track in version control + +__all__ = ["__version__", "__version_tuple__", "version", "version_tuple"] + TYPE_CHECKING = False if TYPE_CHECKING: from typing import Tuple, Union + VERSION_TUPLE = Tuple[Union[int, str], ...] else: VERSION_TUPLE = object From 2e0c6a92a37a2793bf97c1fd7a4b9c4b7c57bca6 Mon Sep 17 00:00:00 2001 From: James Braza Date: Tue, 1 Oct 2024 11:21:40 -0700 Subject: [PATCH 2/3] Added a CHANGELOG entry --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 62d1b1be..01d6cb4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +# Unreleased + +## Changed + +- inclusion of `__all__` in autogenerated `version.py` files to aid IDE autoimports # v8.0.4 From 24d7797e1872aca7936dcd71a1aac81a08ee5326 Mon Sep 17 00:00:00 2001 From: James Braza Date: Thu, 3 Oct 2024 11:00:38 -0700 Subject: [PATCH 3/3] Added 'ruff check' unit test --- src/setuptools_scm/_integration/dump_version.py | 3 ++- testing/test_functions.py | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/setuptools_scm/_integration/dump_version.py b/src/setuptools_scm/_integration/dump_version.py index a968e7b9..a7bfcae7 100644 --- a/src/setuptools_scm/_integration/dump_version.py +++ b/src/setuptools_scm/_integration/dump_version.py @@ -20,7 +20,8 @@ TYPE_CHECKING = False if TYPE_CHECKING: - from typing import Tuple, Union + from typing import Tuple + from typing import Union VERSION_TUPLE = Tuple[Union[int, str], ...] else: diff --git a/testing/test_functions.py b/testing/test_functions.py index af99b540..5f394b0b 100644 --- a/testing/test_functions.py +++ b/testing/test_functions.py @@ -153,6 +153,14 @@ def test_dump_version_flake8(tmp_path: Path) -> None: subprocess.run([flake8, "VERSION.py"], cwd=tmp_path, check=True) +def test_dump_version_ruff(tmp_path: Path) -> None: + ruff = shutil.which("ruff") + if ruff is None: + pytest.skip("ruff not found") + dump_a_version(tmp_path) + subprocess.run([ruff, "check", "--no-fix", "VERSION.py"], cwd=tmp_path, check=True) + + def test_has_command() -> None: with pytest.warns(RuntimeWarning, match="yadayada"): assert not has_command("yadayada_setuptools_aint_ne")