pyproject-api 1.11.6__tar.gz → 1.11.7__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.
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/workflows/release.yaml +2 -2
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/PKG-INFO +1 -1
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_backend.py +2 -1
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_version.py +2 -2
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_frontend.py +16 -6
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/FUNDING.yaml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/SECURITY.md +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/dependabot.yaml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/release.yaml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.github/workflows/check.yaml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.gitignore +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.pre-commit-config.yaml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/.readthedocs.yml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/CODE_OF_CONDUCT.md +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/LICENSE +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/README.md +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/docs/api.rst +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/docs/conf.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/docs/index.rst +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/pyproject.toml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/__init__.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/__main__.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_backend.pyi +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_frontend.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_util.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/_via_fresh_subprocess.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/src/pyproject_api/py.typed +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/_build_sdist.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/demo_pkg_inline/build.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/demo_pkg_inline/pyproject.toml +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_backend.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_frontend_setuptools.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_main.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_util.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tests/test_version.py +0 -0
- {pyproject_api-1.11.6 → pyproject_api-1.11.7}/tox.toml +0 -0
|
@@ -27,7 +27,7 @@ jobs:
|
|
|
27
27
|
- name: Build package
|
|
28
28
|
run: uv build --python 3.15 --python-preference only-managed --sdist --wheel . --out-dir dist
|
|
29
29
|
- name: Store the distribution packages
|
|
30
|
-
uses: actions/upload-artifact@
|
|
30
|
+
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
|
|
31
31
|
with:
|
|
32
32
|
name: ${{ env.dists-artifact-name }}
|
|
33
33
|
path: dist/*
|
|
@@ -43,7 +43,7 @@ jobs:
|
|
|
43
43
|
id-token: write
|
|
44
44
|
steps:
|
|
45
45
|
- name: Download all the dists
|
|
46
|
-
uses: actions/download-artifact@
|
|
46
|
+
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
|
|
47
47
|
with:
|
|
48
48
|
name: ${{ env.dists-artifact-name }}
|
|
49
49
|
path: dist/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: pyproject-api
|
|
3
|
-
Version: 1.11.
|
|
3
|
+
Version: 1.11.7
|
|
4
4
|
Summary: API to interact with the python pyproject.toml based projects
|
|
5
5
|
Project-URL: Changelog, https://github.com/tox-dev/pyproject-api/releases
|
|
6
6
|
Project-URL: Homepage, https://pyproject-api.readthedocs.io
|
|
@@ -23,7 +23,8 @@ class BackendProxy:
|
|
|
23
23
|
self.backend_object = backend_obj
|
|
24
24
|
backend = importlib.import_module(self.backend_module)
|
|
25
25
|
if self.backend_object:
|
|
26
|
-
|
|
26
|
+
for name in self.backend_object.split("."):
|
|
27
|
+
backend = getattr(backend, name)
|
|
27
28
|
self.backend = backend
|
|
28
29
|
|
|
29
30
|
def __call__(self, name, *args, **kwargs):
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '1.11.
|
|
22
|
-
__version_tuple__ = version_tuple = (1, 11,
|
|
21
|
+
__version__ = version = '1.11.7'
|
|
22
|
+
__version_tuple__ = version_tuple = (1, 11, 7)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -232,19 +232,31 @@ def test_create_args_from_folder_rejects_bad_build_system_type(tmp_path: Path, t
|
|
|
232
232
|
SubprocessFrontend.create_args_from_folder(tmp_path)
|
|
233
233
|
|
|
234
234
|
|
|
235
|
-
|
|
236
|
-
|
|
235
|
+
@pytest.mark.parametrize(
|
|
236
|
+
"backend_obj",
|
|
237
|
+
[
|
|
238
|
+
pytest.param("backend", id="attribute"),
|
|
239
|
+
pytest.param("backend:", id="trailing-colon"),
|
|
240
|
+
pytest.param("holder.backend", id="nested"),
|
|
241
|
+
pytest.param("holder.nested.backend", id="deeply-nested"),
|
|
242
|
+
],
|
|
243
|
+
)
|
|
244
|
+
def test_backend_obj(tmp_path: Path, backend_obj: str) -> None:
|
|
245
|
+
toml = f"""
|
|
237
246
|
[build-system]
|
|
238
247
|
requires=[]
|
|
239
|
-
build-backend = "build.api:
|
|
248
|
+
build-backend = "build.api:{backend_obj}"
|
|
240
249
|
backend-path=["."]
|
|
241
250
|
"""
|
|
242
251
|
api = """
|
|
252
|
+
from types import SimpleNamespace
|
|
253
|
+
|
|
243
254
|
class A:
|
|
244
255
|
def get_requires_for_build_sdist(self, config_settings=None):
|
|
245
256
|
return ["a"]
|
|
246
257
|
|
|
247
258
|
backend = A()
|
|
259
|
+
holder = SimpleNamespace(backend=backend, nested=SimpleNamespace(backend=backend))
|
|
248
260
|
"""
|
|
249
261
|
(tmp_path / "pyproject.toml").write_text(dedent(toml))
|
|
250
262
|
build = tmp_path / "build"
|
|
@@ -253,9 +265,7 @@ def test_backend_obj(tmp_path: Path) -> None:
|
|
|
253
265
|
(build / "api.py").write_text(dedent(api))
|
|
254
266
|
frontend = SubprocessFrontend(*SubprocessFrontend.create_args_from_folder(tmp_path)[:-1])
|
|
255
267
|
result = frontend.get_requires_for_build_sdist()
|
|
256
|
-
|
|
257
|
-
assert isinstance(left, Requirement)
|
|
258
|
-
assert str(left) == str(right)
|
|
268
|
+
assert result.requires == (Requirement("a"),)
|
|
259
269
|
|
|
260
270
|
|
|
261
271
|
@pytest.mark.parametrize("of_type", ["wheel", "sdist"])
|
|
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
|