Skip to content

Commit 099d8e4

Browse files
committed
#216: Avoid intermittent issue with value already being removed
1 parent 7e60328 commit 099d8e4

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## Unreleased
2+
3+
* Fixed:
4+
* There was an intermittent `ValueError` in PEP 621 mode,
5+
related to trying to remove `"version"` from `project.dynamic`
6+
when it had already been removed.
7+
18
## v1.7.0 (2025-01-15)
29

310
* Added:

poetry_dynamic_versioning/__init__.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -594,9 +594,11 @@ def _apply_version(
594594
if mode == _Mode.Classic:
595595
pyproject["tool"]["poetry"]["version"] = version # type: ignore
596596
elif mode == _Mode.Pep621:
597-
pyproject["project"]["dynamic"].remove("version") # type: ignore
597+
if "version" in pyproject["project"]["dynamic"]: # type: ignore
598+
pyproject["project"]["dynamic"].remove("version") # type: ignore
598599
pyproject["project"]["version"] = version # type: ignore
599-
pyproject["tool"]["poetry"].pop("version") # type: ignore
600+
if "version" in pyproject["tool"]["poetry"]: # type: ignore
601+
pyproject["tool"]["poetry"].pop("version") # type: ignore
600602

601603
# Disable the plugin in case we're building a source distribution,
602604
# which won't have access to the VCS info at install time.
@@ -727,7 +729,7 @@ def _revert_version(retain: bool = False) -> None:
727729
pyproject["tool"]["poetry"]["version"] = state.original_version # type: ignore
728730
elif state.mode == _Mode.Pep621:
729731
if state.dynamic_array is not None:
730-
pyproject["project"]["dynamic"] = state.dynamic_array
732+
pyproject["project"]["dynamic"] = state.dynamic_array # type: ignore
731733
if "version" in pyproject["project"]: # type: ignore
732734
pyproject["project"].pop("version") # type: ignore
733735
if state.original_version is not None:

0 commit comments

Comments
 (0)