copier-python 0.17.0__tar.gz → 0.18.0__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.
- {copier_python-0.17.0 → copier_python-0.18.0}/LICENSE +1 -1
- {copier_python-0.17.0 → copier_python-0.18.0}/PKG-INFO +8 -1
- {copier_python-0.17.0 → copier_python-0.18.0}/README.md +7 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/copier_python/update.py +3 -1
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/test_update.py +5 -5
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/utils.py +3 -3
- {copier_python-0.17.0 → copier_python-0.18.0}/.gitignore +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/AGENTS.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/CONTRIBUTING.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/copier_python/__init__.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/copier_python/__main__.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/copier_python/py.typed +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/copier_python/repo.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/contributing.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/development/requirements.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/development/updates.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/development/workflow.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/index.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/license.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/project-creation.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/project-development.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/project-release.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/project-setup.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/project-updates.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/releasing.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/requirements.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/docs/setup.md +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/pyproject.toml +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/__init__.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/conftest.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__init__.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_agents.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_compose.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_contributing.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_dockerfile.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_docs.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_license.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_mise_toml.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_pyproject.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_readme.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_workflows.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_zensical.ambr +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_agents.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_compose.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_contributing.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_dockerfile.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_docs.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_license.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_mise_toml.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_pyproject.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_readme.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_structure.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_template.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_workflows.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/template/test_zensical.py +0 -0
- {copier_python-0.17.0 → copier_python-0.18.0}/tests/test_version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: copier-python
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.18.0
|
|
4
4
|
Summary: Copier template for Python projects with modern tooling
|
|
5
5
|
Project-URL: Homepage, https://smkent.github.io/copier-python
|
|
6
6
|
Project-URL: Repository, https://github.com/smkent/copier-python
|
|
@@ -87,6 +87,13 @@ copier copy "gh:smkent/copier-python" /new/project/path
|
|
|
87
87
|
This template was inspired by [pawamoy/copier-uv][copier-uv] and
|
|
88
88
|
[ritwiktiwari/copier-astral][copier-astral] -- Thanks!
|
|
89
89
|
|
|
90
|
+
## License
|
|
91
|
+
|
|
92
|
+
Copyright (C) 2026 Stephen Kent and contributors
|
|
93
|
+
|
|
94
|
+
Licensed under the MIT License
|
|
95
|
+
([`MIT`](https://github.com/smkent/copier-python/blob/main/LICENSE)).
|
|
96
|
+
|
|
90
97
|
[astral]: https://astral.sh
|
|
91
98
|
[codecovio]: https://codecov.io
|
|
92
99
|
[copier-astral]: https://ritwiktiwari.github.io/copier-astral/
|
|
@@ -57,6 +57,13 @@ copier copy "gh:smkent/copier-python" /new/project/path
|
|
|
57
57
|
This template was inspired by [pawamoy/copier-uv][copier-uv] and
|
|
58
58
|
[ritwiktiwari/copier-astral][copier-astral] -- Thanks!
|
|
59
59
|
|
|
60
|
+
## License
|
|
61
|
+
|
|
62
|
+
Copyright (C) 2026 Stephen Kent and contributors
|
|
63
|
+
|
|
64
|
+
Licensed under the MIT License
|
|
65
|
+
([`MIT`](https://github.com/smkent/copier-python/blob/main/LICENSE)).
|
|
66
|
+
|
|
60
67
|
[astral]: https://astral.sh
|
|
61
68
|
[codecovio]: https://codecov.io
|
|
62
69
|
[copier-astral]: https://ritwiktiwari.github.io/copier-astral/
|
|
@@ -11,6 +11,8 @@ from .repo import RepoWorktree
|
|
|
11
11
|
if TYPE_CHECKING:
|
|
12
12
|
from .repo import RepoTarget
|
|
13
13
|
|
|
14
|
+
TEMPLATE_REPO_URL = "https://github.com/smkent/copier-python"
|
|
15
|
+
|
|
14
16
|
|
|
15
17
|
@dataclass
|
|
16
18
|
class UpdateAction:
|
|
@@ -65,7 +67,7 @@ class UpdateAction:
|
|
|
65
67
|
body = os.linesep.join(
|
|
66
68
|
(
|
|
67
69
|
f"Applied updates from template: {ref_range}",
|
|
68
|
-
f"{
|
|
70
|
+
f"{TEMPLATE_REPO_URL}/compare/{ref_range}",
|
|
69
71
|
)
|
|
70
72
|
)
|
|
71
73
|
repo.run(["git", "add", "-A"])
|
|
@@ -20,7 +20,7 @@ import yaml
|
|
|
20
20
|
from copier_python.__main__ import main, update
|
|
21
21
|
|
|
22
22
|
if TYPE_CHECKING:
|
|
23
|
-
from collections.abc import Callable,
|
|
23
|
+
from collections.abc import Callable, Generator, Sequence
|
|
24
24
|
|
|
25
25
|
from .utils import DisallowCallable
|
|
26
26
|
|
|
@@ -109,7 +109,7 @@ def create_project(
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
@pytest.fixture
|
|
112
|
-
def mock_temp_dir(tmp_path: Path) ->
|
|
112
|
+
def mock_temp_dir(tmp_path: Path) -> Generator[Path]:
|
|
113
113
|
with patch.object(
|
|
114
114
|
tempfile.TemporaryDirectory, "__enter__", return_value=tmp_path
|
|
115
115
|
):
|
|
@@ -146,7 +146,7 @@ class ExpectRun:
|
|
|
146
146
|
mock: bool = True,
|
|
147
147
|
has_any: bool = False,
|
|
148
148
|
shell_callback: Callable[[], None] | None = None,
|
|
149
|
-
) ->
|
|
149
|
+
) -> Generator[MagicMock]:
|
|
150
150
|
|
|
151
151
|
subp_run = subprocess.run
|
|
152
152
|
|
|
@@ -281,7 +281,7 @@ def test_main_update_error(
|
|
|
281
281
|
"",
|
|
282
282
|
(f"Applied updates from template: {start_ref}...{end_ref}"),
|
|
283
283
|
(
|
|
284
|
-
f"https://github.com/
|
|
284
|
+
f"https://github.com/smkent/copier-python/compare/"
|
|
285
285
|
f"{start_ref}...{end_ref}"
|
|
286
286
|
),
|
|
287
287
|
)
|
|
@@ -376,7 +376,7 @@ def test_main_update_with_project(
|
|
|
376
376
|
"",
|
|
377
377
|
(f"Applied updates from template: {start_ref}...{end_ref}"),
|
|
378
378
|
(
|
|
379
|
-
f"https://github.com/
|
|
379
|
+
f"https://github.com/smkent/copier-python/compare/"
|
|
380
380
|
f"{start_ref}...{end_ref}"
|
|
381
381
|
),
|
|
382
382
|
)
|
|
@@ -15,7 +15,7 @@ else:
|
|
|
15
15
|
from typing_extensions import Self
|
|
16
16
|
|
|
17
17
|
if TYPE_CHECKING:
|
|
18
|
-
from collections.abc import Callable,
|
|
18
|
+
from collections.abc import Callable, Generator
|
|
19
19
|
|
|
20
20
|
import pytest
|
|
21
21
|
|
|
@@ -48,7 +48,7 @@ class DisallowCallable:
|
|
|
48
48
|
self.original = getattr(self.obj, self.attr)
|
|
49
49
|
|
|
50
50
|
@contextmanager
|
|
51
|
-
def __call__(self) ->
|
|
51
|
+
def __call__(self) -> Generator[Self]:
|
|
52
52
|
|
|
53
53
|
def wrapper(*args: Any, **kwargs: Any) -> Any:
|
|
54
54
|
if self.enabled:
|
|
@@ -62,7 +62,7 @@ class DisallowCallable:
|
|
|
62
62
|
yield self
|
|
63
63
|
|
|
64
64
|
@contextmanager
|
|
65
|
-
def pause(self) ->
|
|
65
|
+
def pause(self) -> Generator[None]:
|
|
66
66
|
if self.mock_attr:
|
|
67
67
|
with patch.object(self.obj, self.attr, self.original):
|
|
68
68
|
yield
|
|
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
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_compose.ambr
RENAMED
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_contributing.ambr
RENAMED
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_dockerfile.ambr
RENAMED
|
File without changes
|
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_license.ambr
RENAMED
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_mise_toml.ambr
RENAMED
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_pyproject.ambr
RENAMED
|
File without changes
|
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_workflows.ambr
RENAMED
|
File without changes
|
{copier_python-0.17.0 → copier_python-0.18.0}/tests/template/__snapshots__/test_zensical.ambr
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
|