vcs-versioning 2.2.2__tar.gz → 2.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/CHANGELOG.md +6 -0
- {vcs_versioning-2.2.2/src/vcs_versioning.egg-info → vcs_versioning-2.2.3}/PKG-INFO +2 -2
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/pyproject.toml +2 -2
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_git.py +14 -9
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3/src/vcs_versioning.egg-info}/PKG-INFO +2 -2
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/requires.txt +1 -1
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_git.py +18 -1
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/uv.lock +1 -1
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/LICENSE.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/MANIFEST.in +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/README.md +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/setup.cfg +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/setup.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/__main__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_discover_vcs.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_hg.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_hg_git.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_jj.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_backends/_scm_workdir.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_cli/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_cli/_args.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_cli/git_archival_full.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_cli/git_archival_stable.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_compat.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_config.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_discover.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_dump_version.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_entrypoints.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_environment.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_exceptions.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_fallback_workdir.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_fallbacks.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_file_finders/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_file_finders/_git.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_file_finders/_hg.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_file_finders/_jj.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_get_version_impl.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_integration.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_integrator_helpers.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_legacy_parse.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_log.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_modify_version.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_node_utils.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_overrides.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_paths.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_project_overrides.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_protocols.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_pyproject_reading.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_requirement_cls.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_run_cmd.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_scm_metadata.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_scm_version.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_test_utils.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_toml.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_types.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_cls.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_fields.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_inference.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_common.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_standard.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_towncrier.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_worktree_discovery.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/overrides.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/py.typed +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/test_api.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/SOURCES.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/dependency_links.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/entry_points.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/top_level.txt +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/__init__.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/conftest.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_better_root_errors.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_chain_api.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_compat.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_config.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_expect_parse.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_file_finders.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_hg_git.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_integrator_helpers.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_internal_log_level.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_jj.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_legacy_parse.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_mercurial.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_overrides_api.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_overrides_env_reader.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_project_overrides.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_project_path.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_regressions.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_scm_metadata.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_tag_config.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_version.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_version_scheme_towncrier.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_version_schemes.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_workdir_api.py +0 -0
- {vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/testing_vcs/test_workdir_discovery.py +0 -0
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- towncrier release notes start -->
|
|
4
4
|
|
|
5
|
+
## 2.2.3 (2026-07-28)
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Fix `ValueError` when parsing `.git_archival.txt` of a tagged commit whose tag contains more than one dash (e.g. `llvmorg-23.1.0-rc2`) - the `git describe` suffix is now matched precisely instead of splitting on the last two dashes. ([#1481](https://github.com/pypa/setuptools-scm/issues/1481))
|
|
10
|
+
|
|
5
11
|
## 2.2.2 (2026-06-29)
|
|
6
12
|
|
|
7
13
|
### Fixed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vcs-versioning
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.3
|
|
4
4
|
Summary: the blessed package to manage your versions by vcs metadata
|
|
5
5
|
Author-email: Ronny Pfannschmidt <opensource@ronnypfannschmidt.de>
|
|
6
6
|
License: MIT
|
|
@@ -20,7 +20,7 @@ Classifier: Programming Language :: Python :: 3.14
|
|
|
20
20
|
Requires-Python: >=3.8
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
License-File: LICENSE.txt
|
|
23
|
-
Requires-Dist: packaging>=
|
|
23
|
+
Requires-Dist: packaging>=26.2
|
|
24
24
|
Requires-Dist: tomli>=1; python_version < "3.11"
|
|
25
25
|
Requires-Dist: typing-extensions>=4.1; python_version < "3.11"
|
|
26
26
|
Dynamic: license-file
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
build-backend = "setuptools.build_meta"
|
|
8
8
|
requires = [
|
|
9
9
|
"setuptools>=45",
|
|
10
|
-
"packaging>=
|
|
10
|
+
"packaging>=26.2",
|
|
11
11
|
'typing-extensions>=4.1; python_version < "3.11"',
|
|
12
12
|
]
|
|
13
13
|
|
|
@@ -38,7 +38,7 @@ dynamic = [
|
|
|
38
38
|
"version",
|
|
39
39
|
]
|
|
40
40
|
dependencies = [
|
|
41
|
-
"packaging>=
|
|
41
|
+
"packaging>=26.2",
|
|
42
42
|
'tomli>=1; python_version < "3.11"',
|
|
43
43
|
'typing-extensions>=4.1; python_version < "3.11"',
|
|
44
44
|
]
|
|
@@ -33,6 +33,11 @@ log = logging.getLogger(__name__)
|
|
|
33
33
|
REF_TAG_RE = re.compile(r"(?<=\btag: )([^,]+)\b")
|
|
34
34
|
DESCRIBE_UNSUPPORTED = "%(describe"
|
|
35
35
|
|
|
36
|
+
# ``git describe`` appends ``-<distance>-g<abbreviated node>`` to the tag name.
|
|
37
|
+
# Tags may contain dashes themselves, so the suffix has to be matched precisely
|
|
38
|
+
# instead of just splitting on the last two dashes.
|
|
39
|
+
DESCRIBE_SUFFIX_RE = re.compile(r"^(?P<tag>.+)-(?P<distance>\d+)-g(?P<node>[0-9a-f]+)$")
|
|
40
|
+
|
|
36
41
|
|
|
37
42
|
# If testing command in shell make sure to quote the match argument like
|
|
38
43
|
# '*[0-9]*' as it will expand before being sent to git if there are any matching
|
|
@@ -473,15 +478,15 @@ def _git_parse_describe(
|
|
|
473
478
|
else:
|
|
474
479
|
dirty = False
|
|
475
480
|
|
|
476
|
-
|
|
477
|
-
if
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
481
|
+
match = DESCRIBE_SUFFIX_RE.match(describe_output)
|
|
482
|
+
if match is None: # probably a tagged commit
|
|
483
|
+
return describe_output, 0, None, dirty
|
|
484
|
+
return (
|
|
485
|
+
match.group("tag"),
|
|
486
|
+
int(match.group("distance")),
|
|
487
|
+
"g" + match.group("node"),
|
|
488
|
+
dirty,
|
|
489
|
+
)
|
|
485
490
|
|
|
486
491
|
|
|
487
492
|
def archival_to_version(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vcs-versioning
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.3
|
|
4
4
|
Summary: the blessed package to manage your versions by vcs metadata
|
|
5
5
|
Author-email: Ronny Pfannschmidt <opensource@ronnypfannschmidt.de>
|
|
6
6
|
License: MIT
|
|
@@ -20,7 +20,7 @@ Classifier: Programming Language :: Python :: 3.14
|
|
|
20
20
|
Requires-Python: >=3.8
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
License-File: LICENSE.txt
|
|
23
|
-
Requires-Dist: packaging>=
|
|
23
|
+
Requires-Dist: packaging>=26.2
|
|
24
24
|
Requires-Dist: tomli>=1; python_version < "3.11"
|
|
25
25
|
Requires-Dist: typing-extensions>=4.1; python_version < "3.11"
|
|
26
26
|
Dynamic: license-file
|
|
@@ -50,10 +50,15 @@ def wd(wd: WorkDir, monkeypatch: pytest.MonkeyPatch, debug_mode: DebugMode) -> W
|
|
|
50
50
|
[
|
|
51
51
|
("3.3.1-rc26-0-g9df187b", "3.3.1-rc26", 0, "g9df187b", False),
|
|
52
52
|
("17.33.0-rc-17-g38c3047c0", "17.33.0-rc", 17, "g38c3047c0", False),
|
|
53
|
+
("v1.15.1rc1-37-g9bd1298-dirty", "v1.15.1rc1", 37, "g9bd1298", True),
|
|
54
|
+
# bare tags containing dashes must not be mistaken for describe output
|
|
55
|
+
("llvmorg-23.1.0-rc2", "llvmorg-23.1.0-rc2", 0, None, False),
|
|
56
|
+
("llvmorg-23.1.0-rc2-dirty", "llvmorg-23.1.0-rc2", 0, None, True),
|
|
57
|
+
("release-1.2.2", "release-1.2.2", 0, None, False),
|
|
53
58
|
],
|
|
54
59
|
)
|
|
55
60
|
def test_parse_describe_output(
|
|
56
|
-
given: str, tag: str, number: int, node: str, dirty: bool
|
|
61
|
+
given: str, tag: str, number: int, node: str | None, dirty: bool
|
|
57
62
|
) -> None:
|
|
58
63
|
parsed = _git._git_parse_describe(given)
|
|
59
64
|
assert parsed == (tag, number, node, dirty)
|
|
@@ -650,6 +655,18 @@ def test_git_archival_to_version(expected: str, from_data: dict[str, str]) -> No
|
|
|
650
655
|
assert format_version(version) == expected
|
|
651
656
|
|
|
652
657
|
|
|
658
|
+
@pytest.mark.issue("https://github.com/pypa/setuptools-scm/issues/1481")
|
|
659
|
+
def test_git_archival_bare_tag_with_dashes() -> None:
|
|
660
|
+
config = Configuration(tag_regex=r"^llvmorg-(?P<version>.+)$")
|
|
661
|
+
version = archival_to_version(
|
|
662
|
+
{"describe-name": "llvmorg-23.1.0-rc2"}, config=config
|
|
663
|
+
)
|
|
664
|
+
assert version is not None
|
|
665
|
+
assert str(version.tag) == "23.1.0rc2"
|
|
666
|
+
assert version.distance == 0
|
|
667
|
+
assert version.node is None
|
|
668
|
+
|
|
669
|
+
|
|
653
670
|
@pytest.mark.issue("https://github.com/pypa/setuptools-scm/issues/727")
|
|
654
671
|
def test_git_archival_node_missing_no_version() -> None:
|
|
655
672
|
config = Configuration()
|
|
@@ -317,7 +317,7 @@ test = [
|
|
|
317
317
|
|
|
318
318
|
[package.metadata]
|
|
319
319
|
requires-dist = [
|
|
320
|
-
{ name = "packaging", specifier = ">=
|
|
320
|
+
{ name = "packaging", specifier = ">=26.2" },
|
|
321
321
|
{ name = "tomli", marker = "python_full_version < '3.11'", specifier = ">=1" },
|
|
322
322
|
{ name = "typing-extensions", marker = "python_full_version < '3.11'", specifier = ">=4.1" },
|
|
323
323
|
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_cli/git_archival_stable.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/__init__.py
RENAMED
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_common.py
RENAMED
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_standard.py
RENAMED
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning/_version_schemes/_towncrier.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vcs_versioning-2.2.2 → vcs_versioning-2.2.3}/src/vcs_versioning.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|