Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
rev: v5.0.0
hooks:
- id: trailing-whitespace
- id: check-yaml
- id: debug-statements
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.3.4
rev: v0.9.1
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix, --show-fixes]
- id: ruff-format

- repo: https://github.com/tox-dev/pyproject-fmt
rev: 1.7.0
rev: v2.5.0
hooks:
- id: pyproject-fmt
exclude: docs/examples/

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.9.0
rev: v1.14.1
hooks:
- id: mypy
args: [--strict]
Expand All @@ -33,6 +33,6 @@ repos:
- rich

- repo: https://github.com/scientific-python/cookie
rev: 2024.04.23
rev: 2024.08.19
hooks:
- id: sp-repo-review
10 changes: 5 additions & 5 deletions nextgen/vcs-versioning/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,16 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dynamic = [
"version",
]
dependencies = [
]
[project.urls]
Documentation = "https://github.com/unknown/vcs-versioning#readme"
Issues = "https://github.com/unknown/vcs-versioning/issues"
Source = "https://github.com/unknown/vcs-versioning"
urls.Documentation = "https://github.com/unknown/vcs-versioning#readme"
urls.Issues = "https://github.com/unknown/vcs-versioning/issues"
urls.Source = "https://github.com/unknown/vcs-versioning"

[tool.hatch.version]
path = "vcs_versioning/__about__.py"
Expand All @@ -48,7 +48,7 @@ cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=vcs_ve
no-cov = "cov --no-cov {args}"

[[tool.hatch.envs.test.matrix]]
python = ["38", "39", "310", "311"]
python = [ "38", "39", "310", "311" ]

[tool.coverage.run]
branch = true
Expand Down
115 changes: 50 additions & 65 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@


[build-system]
build-backend = "_own_version_helper:build_meta"
requires = [
"setuptools>=61",
'tomli; python_version < "3.11"',
"tomli; python_version<'3.11'",
]
backend-path = [
".",
Expand All @@ -17,7 +15,7 @@ description = "the blessed package to manage your versions by scm tags"
readme = "README.md"
license.file = "LICENSE"
authors = [
{name="Ronny Pfannschmidt", email="opensource@ronnypfannschmidt.de"}
{ name = "Ronny Pfannschmidt", email = "opensource@ronnypfannschmidt.de" },
]
requires-python = ">=3.8"
classifiers = [
Expand All @@ -31,6 +29,7 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Version Control",
"Topic :: System :: Software Distribution",
Expand All @@ -42,98 +41,84 @@ dynamic = [
dependencies = [
"packaging>=20",
"setuptools",
'tomli>=1; python_version < "3.11"',
'typing-extensions; python_version < "3.10"',
"tomli>=1; python_version<'3.11'",
"typing-extensions; python_version<'3.10'",
]
[project.optional-dependencies]
docs = [
optional-dependencies.docs = [
"entangled-cli~=2.0",
"mkdocs",
"mkdocs-entangled-plugin",
"mkdocs-material",
"mkdocstrings[python]",
"pygments",
]
rich = [
optional-dependencies.rich = [
"rich",
]
test = [
optional-dependencies.test = [
"build",
"pytest",
"rich",
'typing-extensions; python_version < "3.11"',
"typing-extensions; python_version<'3.11'",
"wheel",
]
toml = [
optional-dependencies.toml = [
]
[project.urls]
documentation = "https://setuptools-scm.readthedocs.io/"
repository = "https://github.com/pypa/setuptools-scm/"
[project.entry-points."distutils.setup_keywords"]
use_scm_version = "setuptools_scm._integration.setuptools:version_keyword"
[project.entry-points."pipx.run"]
setuptools_scm = "setuptools_scm._cli:main"
[project.entry-points."setuptools.file_finders"]
setuptools_scm = "setuptools_scm._file_finders:find_files"
[project.entry-points."setuptools.finalize_distribution_options"]
setuptools_scm = "setuptools_scm._integration.setuptools:infer_version"
[project.entry-points."setuptools_scm.files_command"]
".git" = "setuptools_scm._file_finders.git:git_find_files"
".hg" = "setuptools_scm._file_finders.hg:hg_find_files"
[project.entry-points."setuptools_scm.files_command_fallback"]
".git_archival.txt" = "setuptools_scm._file_finders.git:git_archive_find_files"
".hg_archival.txt" = "setuptools_scm._file_finders.hg:hg_archive_find_files"
[project.entry-points."setuptools_scm.local_scheme"]
dirty-tag = "setuptools_scm.version:get_local_dirty_tag"
no-local-version = "setuptools_scm.version:get_no_local_node"
node-and-date = "setuptools_scm.version:get_local_node_and_date"
node-and-timestamp = "setuptools_scm.version:get_local_node_and_timestamp"
[project.entry-points."setuptools_scm.parse_scm"]
".git" = "setuptools_scm.git:parse"
".hg" = "setuptools_scm.hg:parse"
[project.entry-points."setuptools_scm.parse_scm_fallback"]
".git_archival.txt" = "setuptools_scm.git:parse_archival"
".hg_archival.txt" = "setuptools_scm.hg:parse_archival"
PKG-INFO = "setuptools_scm.fallbacks:parse_pkginfo"
"pyproject.toml" = "setuptools_scm.fallbacks:fallback_version"
"setup.py" = "setuptools_scm.fallbacks:fallback_version"
[project.entry-points."setuptools_scm.version_scheme"]
"calver-by-date" = "setuptools_scm.version:calver_by_date"
"guess-next-dev" = "setuptools_scm.version:guess_next_dev_version"
"no-guess-dev" = "setuptools_scm.version:no_guess_dev_version"
"only-version" = "setuptools_scm.version:only_version"
"post-release" = "setuptools_scm.version:postrelease_version"
"python-simplified-semver" = "setuptools_scm.version:simplified_semver_version"
"release-branch-semver" = "setuptools_scm.version:release_branch_semver_version"
urls.documentation = "https://setuptools-scm.readthedocs.io/"
urls.repository = "https://github.com/pypa/setuptools-scm/"
entry-points."distutils.setup_keywords".use_scm_version = "setuptools_scm._integration.setuptools:version_keyword"
entry-points."pipx.run".setuptools_scm = "setuptools_scm._cli:main"
entry-points."setuptools.file_finders".setuptools_scm = "setuptools_scm._file_finders:find_files"
entry-points."setuptools.finalize_distribution_options".setuptools_scm = "setuptools_scm._integration.setuptools:infer_version"
entry-points."setuptools_scm.files_command".".git" = "setuptools_scm._file_finders.git:git_find_files"
entry-points."setuptools_scm.files_command".".hg" = "setuptools_scm._file_finders.hg:hg_find_files"
entry-points."setuptools_scm.files_command_fallback".".git_archival.txt" = "setuptools_scm._file_finders.git:git_archive_find_files"
entry-points."setuptools_scm.files_command_fallback".".hg_archival.txt" = "setuptools_scm._file_finders.hg:hg_archive_find_files"
entry-points."setuptools_scm.local_scheme".dirty-tag = "setuptools_scm.version:get_local_dirty_tag"
entry-points."setuptools_scm.local_scheme".no-local-version = "setuptools_scm.version:get_no_local_node"
entry-points."setuptools_scm.local_scheme".node-and-date = "setuptools_scm.version:get_local_node_and_date"
entry-points."setuptools_scm.local_scheme".node-and-timestamp = "setuptools_scm.version:get_local_node_and_timestamp"
entry-points."setuptools_scm.parse_scm".".git" = "setuptools_scm.git:parse"
entry-points."setuptools_scm.parse_scm".".hg" = "setuptools_scm.hg:parse"
entry-points."setuptools_scm.parse_scm_fallback".".git_archival.txt" = "setuptools_scm.git:parse_archival"
entry-points."setuptools_scm.parse_scm_fallback".".hg_archival.txt" = "setuptools_scm.hg:parse_archival"
entry-points."setuptools_scm.parse_scm_fallback".PKG-INFO = "setuptools_scm.fallbacks:parse_pkginfo"
entry-points."setuptools_scm.parse_scm_fallback"."pyproject.toml" = "setuptools_scm.fallbacks:fallback_version"
entry-points."setuptools_scm.parse_scm_fallback"."setup.py" = "setuptools_scm.fallbacks:fallback_version"
entry-points."setuptools_scm.version_scheme"."calver-by-date" = "setuptools_scm.version:calver_by_date"
entry-points."setuptools_scm.version_scheme"."guess-next-dev" = "setuptools_scm.version:guess_next_dev_version"
entry-points."setuptools_scm.version_scheme"."no-guess-dev" = "setuptools_scm.version:no_guess_dev_version"
entry-points."setuptools_scm.version_scheme"."only-version" = "setuptools_scm.version:only_version"
entry-points."setuptools_scm.version_scheme"."post-release" = "setuptools_scm.version:postrelease_version"
entry-points."setuptools_scm.version_scheme"."python-simplified-semver" = "setuptools_scm.version:simplified_semver_version"
entry-points."setuptools_scm.version_scheme"."release-branch-semver" = "setuptools_scm.version:release_branch_semver_version"

[tool.setuptools.packages.find]
where = ["src"]
where = [ "src" ]
namespaces = false

[tool.setuptools.dynamic]
version = { attr = "_own_version_helper.version"}
version = { attr = "_own_version_helper.version" }

[tool.setuptools_scm]

[tool.ruff]
src = ["src"]
src = [ "src" ]
fix = true
lint.select = ["E", "F", "B", "UP", "YTT", "C", "DTZ", "PYI", "PT", "I", "FURB", "RUF"]
lint.ignore = ["B028"]
lint.select = [ "B", "C", "DTZ", "E", "F", "FURB", "I", "PT", "PYI", "RUF", "UP", "YTT" ]
lint.ignore = [ "B028" ]
lint.isort.force-single-line = true
lint.isort.from-first = false
lint.isort.lines-between-types = 1
lint.isort.order-by-type = true
lint.preview = true

[tool.ruff.lint.isort]
force-single-line = true
from-first = false
lines-between-types = 1
order-by-type = true

[tool.repo-review]
ignore = ["PP305", "GH103", "GH212", "MY100", "PC111", "PC160", "PC170", "PC180", "PC901"]
ignore = [ "PP305", "GH103", "GH212", "MY100", "PC111", "PC160", "PC170", "PC180", "PC901" ]

[tool.pytest.ini_options]
minversion = "7"
testpaths = ["testing"]
testpaths = [ "testing" ]
filterwarnings = [
"error",
"ignore:.*tool\\.setuptools_scm.*",
Expand All @@ -142,7 +127,7 @@ filterwarnings = [
log_level = "debug"
log_cli_level = "info"
# disable unraisable until investigated
addopts = ["-ra", "--strict-config", "--strict-markers", "-p", "no:unraisableexception"]
addopts = [ "-ra", "--strict-config", "--strict-markers", "-p", "no:unraisableexception" ]
markers = [
"issue(id): reference to github issue",
"skip_commit: allows to skip committing in the helpers",
Expand Down
6 changes: 3 additions & 3 deletions src/setuptools_scm/_integration/setuptools.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,9 @@ def version_keyword(
assert isinstance(value, dict), "version_keyword expects a dict or True"
overrides = value

assert (
"dist_name" not in overrides
), "dist_name may not be specified in the setup keyword "
assert "dist_name" not in overrides, (
"dist_name may not be specified in the setup keyword "
)
dist_name: str | None = dist.metadata.name
_log_hookstart("version_keyword", dist)

Expand Down
3 changes: 1 addition & 2 deletions src/setuptools_scm/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -381,8 +381,7 @@ def guess_next_date_ver(
if tag_date > head_date and match is not None:
# warn on future times
warnings.warn(
f"your previous tag ({tag_date})"
f" is ahead your node date ({head_date})"
f"your previous tag ({tag_date}) is ahead your node date ({head_date})"
)
patch = 0
next_version = "{node_date:{date_fmt}}.{patch}".format(
Expand Down
4 changes: 2 additions & 2 deletions testing/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,14 +79,14 @@ def debug_mode() -> Iterator[DebugMode]:
yield debug_mode


@pytest.fixture()
@pytest.fixture
def wd(tmp_path: Path) -> WorkDir:
target_wd = tmp_path.resolve() / "wd"
target_wd.mkdir()
return WorkDir(target_wd)


@pytest.fixture()
@pytest.fixture
def repositories_hg_git(tmp_path: Path) -> tuple[WorkDir, WorkDir]:
tmp_path = tmp_path.resolve()
path_git = tmp_path / "repo_git"
Expand Down
2 changes: 1 addition & 1 deletion testing/test_file_finder.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ def test_symlink_not_in_scm_while_target_is(inwd: WorkDir) -> None:


@pytest.mark.issue(587)
@pytest.mark.skip_commit()
@pytest.mark.skip_commit
def test_not_commited(inwd: WorkDir) -> None:
assert find_files() == []

Expand Down
4 changes: 2 additions & 2 deletions testing/test_git.py
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,7 @@ def test_git_worktree_support(wd: WorkDir, tmp_path: Path) -> None:
assert str(worktree) in res.stdout


@pytest.fixture()
@pytest.fixture
def shallow_wd(wd: WorkDir, tmp_path: Path) -> Path:
wd.commit_testfile()
wd.commit_testfile()
Expand Down Expand Up @@ -515,7 +515,7 @@ def test_git_getdate_git_2_45_0_plus(
assert git_wd.get_head_date() == date(2024, 4, 30)


@pytest.fixture()
@pytest.fixture
def signed_commit_wd(monkeypatch: pytest.MonkeyPatch, wd: WorkDir) -> WorkDir:
if not has_command("gpg", args=["--version"], warn=False):
pytest.skip("gpg executable not found")
Expand Down
2 changes: 1 addition & 1 deletion testing/test_integration.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
c = Configuration()


@pytest.fixture()
@pytest.fixture
def wd(wd: WorkDir) -> WorkDir:
wd("git init")
wd("git config user.email test@example.com")
Expand Down
2 changes: 1 addition & 1 deletion testing/test_main.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def test_main() -> None:
exec(code, ns)


@pytest.fixture()
@pytest.fixture
def repo(wd: WorkDir) -> WorkDir:
wd("git init")
wd("git config user.email user@host")
Expand Down
6 changes: 3 additions & 3 deletions testing/test_mercurial.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
)


@pytest.fixture()
@pytest.fixture
def wd(wd: WorkDir) -> WorkDir:
wd("hg init")
wd.add_command = "hg add ."
Expand Down Expand Up @@ -153,15 +153,15 @@ def test_parse_no_worktree(tmp_path: Path) -> None:
assert ret is None


@pytest.fixture()
@pytest.fixture
def version_1_0(wd: WorkDir) -> WorkDir:
wd("hg branch default")
wd.commit_testfile()
wd('hg tag 1.0.0 -u test -d "0 0"')
return wd


@pytest.fixture()
@pytest.fixture
def pre_merge_commit_after_tag(version_1_0: WorkDir) -> WorkDir:
wd = version_1_0
wd("hg branch testbranch")
Expand Down
Loading