From 8db23065144188b8af59b2020d42d303b0b20723 Mon Sep 17 00:00:00 2001
From: Marcel Telka <marcel@telka.sk>
Date: Tue, 02 Apr 2024 14:17:13 +0200
Subject: [PATCH] python/build: update to 1.2.1

---
 components/python/build/manifests/sample-manifest.p5m        |    3 
 components/python/build/patches/02-no-uv.patch               |   47 ++++++
 components/python/build/patches/01-test-skip-flit_core.patch |    4 
 components/python/build/test/results-all.master              |  358 ++++++++++++++++++++++++++++-----------------------
 components/python/build/Makefile                             |    4 
 components/python/build/build-PYVER.p5m                      |    3 
 components/python/build/python-integrate-project.conf        |    1 
 7 files changed, 255 insertions(+), 165 deletions(-)

diff --git a/components/python/build/Makefile b/components/python/build/Makefile
index b33c76b..4fcf930 100644
--- a/components/python/build/Makefile
+++ b/components/python/build/Makefile
@@ -19,10 +19,10 @@
 include ../../../make-rules/shared-macros.mk
 
 COMPONENT_NAME =		build
-HUMAN_VERSION =			1.1.1
+HUMAN_VERSION =			1.2.1
 COMPONENT_SUMMARY =		build - A simple, correct Python build frontend
 COMPONENT_ARCHIVE_HASH =	\
-	sha256:8eea65bb45b1aac2e734ba2cc8dad3a6d97d97901a395bd0ed3e7b46953d2a31
+	sha256:526263f4870c26f26c433545579475377b2b7588b6f1eac76a001e873ae3e19d
 COMPONENT_LICENSE =		MIT
 COMPONENT_LICENSE_FILE =	LICENSE
 
diff --git a/components/python/build/build-PYVER.p5m b/components/python/build/build-PYVER.p5m
index b2525f5..a1a16cc 100644
--- a/components/python/build/build-PYVER.p5m
+++ b/components/python/build/build-PYVER.p5m
@@ -28,11 +28,14 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/build-$(HUMAN_VERSION).dist-info/entry_points.txt
 file path=usr/lib/python$(PYVER)/vendor-packages/build/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/__main__.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_builder.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/importlib.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/tarfile.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/tomllib.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_ctx.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_exceptions.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_types.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_util.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/env.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/py.typed
diff --git a/components/python/build/manifests/sample-manifest.p5m b/components/python/build/manifests/sample-manifest.p5m
index 14188a7..be6fd54 100644
--- a/components/python/build/manifests/sample-manifest.p5m
+++ b/components/python/build/manifests/sample-manifest.p5m
@@ -28,11 +28,14 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/build-$(HUMAN_VERSION).dist-info/entry_points.txt
 file path=usr/lib/python$(PYVER)/vendor-packages/build/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/__main__.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_builder.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/importlib.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/tarfile.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_compat/tomllib.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_ctx.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_exceptions.py
+file path=usr/lib/python$(PYVER)/vendor-packages/build/_types.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/_util.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/env.py
 file path=usr/lib/python$(PYVER)/vendor-packages/build/py.typed
diff --git a/components/python/build/patches/01-test-skip-flit_core.patch b/components/python/build/patches/01-test-skip-flit_core.patch
index be89820..5c94b69 100644
--- a/components/python/build/patches/01-test-skip-flit_core.patch
+++ b/components/python/build/patches/01-test-skip-flit_core.patch
@@ -1,5 +1,5 @@
---- build-1.1.1/tests/test_util.py.orig
-+++ build-1.1.1/tests/test_util.py
+--- build-1.2.1/tests/test_util.py.orig
++++ build-1.2.1/tests/test_util.py
 @@ -22,7 +22,7 @@
  @pytest.mark.pypy3323bug
  def test_wheel_metadata_isolation(package_test_flit):
diff --git a/components/python/build/patches/02-no-uv.patch b/components/python/build/patches/02-no-uv.patch
new file mode 100644
index 0000000..edd1b58
--- /dev/null
+++ b/components/python/build/patches/02-no-uv.patch
@@ -0,0 +1,47 @@
+We do not have uv packaged yet.
+
+--- build-1.2.1/pyproject.toml.orig
++++ build-1.2.1/pyproject.toml
+@@ -50,7 +50,7 @@
+   "sphinx-issues >= 3.0.0",
+ ]
+ test = [
+-  "build[uv, virtualenv]",
++  "build[virtualenv]",
+   "filelock >= 3",
+   "pytest >= 6.2.4",
+   "pytest-cov >= 2.12",
+--- build-1.2.1/tests/test_env.py.orig
++++ build-1.2.1/tests/test_env.py
+@@ -206,6 +206,7 @@
+ 
+ @pytest.mark.parametrize('verbosity', range(4))
+ @pytest.mark.skipif(IS_PYPY, reason='uv cannot find PyPy executable')
++@pytest.mark.skip(reason="we do not have uv packaged yet")
+ def test_uv_impl_install_cmd_well_formed(
+     mocker: pytest_mock.MockerFixture,
+     verbosity: int,
+@@ -237,7 +238,6 @@
+         ('pip', 'venv+pip', False),
+         ('pip', 'virtualenv+pip', True),
+         ('pip', 'virtualenv+pip', None),  # Fall-through
+-        ('uv', 'venv+uv', None),
+     ],
+     indirect=('has_virtualenv',),
+ )
+@@ -255,7 +255,6 @@
+     'installer',
+     [
+         'pip',
+-        pytest.param('uv', marks=pytest.mark.xfail(IS_PYPY and IS_WINDOWS, reason='uv cannot find PyPy executable')),
+     ],
+ )
+ def test_requirement_installation(
+@@ -266,6 +265,7 @@
+         env.install([f'test-flit @ {Path(package_test_flit).as_uri()}'])
+ 
+ 
++@pytest.mark.skip(reason="we do not have uv packaged yet")
+ def test_external_uv_detection_success(
+     caplog: pytest.LogCaptureFixture,
+     mocker: pytest_mock.MockerFixture,
diff --git a/components/python/build/python-integrate-project.conf b/components/python/build/python-integrate-project.conf
index 7a9e012..9c3b41e 100644
--- a/components/python/build/python-integrate-project.conf
+++ b/components/python/build/python-integrate-project.conf
@@ -14,6 +14,7 @@
 #
 
 %patch% 01-test-skip-flit_core.patch
+%patch% 02-no-uv.patch
 
 %include-2%
 # Since we cannot use the 'build' package to build itself we need to bootstrap.
diff --git a/components/python/build/test/results-all.master b/components/python/build/test/results-all.master
index 9a6b7aa..de0769a 100644
--- a/components/python/build/test/results-all.master
+++ b/components/python/build/test/results-all.master
@@ -3,175 +3,211 @@
 ============================= test session starts ==============================
 platform sunos5 -- Python $(PYTHON_VERSION).X -- $(@D)/.tox/py$(PYV)/bin/python
 cachedir: .tox/py$(PYV)/.pytest_cache
-installed packages of interest: build==1.1.1 colorama==0.4.6 filelock==3.13.1 packaging==23.2 pip==24.0 pyproject_hooks==1.0.0 setuptools==69.1.0 tomli==2.0.1 virtualenv==20.25.1 wheel==0.42.0
+installed packages of interest: build==1.2.1 colorama==0.4.6 filelock==3.13.3 packaging==24.0 pip==24.0 pyproject_hooks==1.0.0 setuptools==69.2.0 tomli==2.0.1 virtualenv==20.25.1 wheel==0.43.0
 rootdir: $(@D)
 configfile: pyproject.toml
 testpaths: tests
-X workers [158 items]
+X workers [194 items]
 
 scheduling tests via LoadScheduling
 
-tests/test_env.py::test_can_get_venv_paths_with_conflicting_default_scheme SKIPPED
-tests/test_env.py::test_can_get_venv_paths_with_posix_local_default_scheme SKIPPED
-tests/test_env.py::test_default_pip_is_never_too_old PASSED
-tests/test_env.py::test_executable_missing_post_creation PASSED
-tests/test_env.py::test_isolated_env_abstract PASSED
-tests/test_env.py::test_isolated_env_has_executable_still_abstract PASSED
-tests/test_env.py::test_isolated_env_has_install_still_abstract PASSED
-tests/test_env.py::test_isolated_env_log PASSED
-tests/test_env.py::test_isolated_environment_install PASSED
-tests/test_env.py::test_isolation PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[arm64-20.2.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[arm64-20.3.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[arm64-21.0.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[arm64-21.0.1] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[x86_64-20.2.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[x86_64-20.3.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[x86_64-21.0.0] PASSED
-tests/test_env.py::test_pip_needs_upgrade_mac_os_11[x86_64-21.0.1] PASSED
-tests/test_env.py::test_venv_symlink[True] PASSED
-tests/test_integration.py::test_build[Solaar-isolated-code] SKIPPED
-tests/test_integration.py::test_build[Solaar-isolated-entrypoint] SKIPPED
-tests/test_integration.py::test_build[Solaar-isolated-module] SKIPPED
-tests/test_integration.py::test_build[Solaar-no_isolation-code] SKIPPED
-tests/test_integration.py::test_build[Solaar-no_isolation-entrypoint] SKIPPED
-tests/test_integration.py::test_build[Solaar-no_isolation-module] SKIPPED
-tests/test_integration.py::test_build[build-isolated-code] SKIPPED
-tests/test_integration.py::test_build[build-isolated-entrypoint] SKIPPED
-tests/test_integration.py::test_build[build-isolated-module] SKIPPED
-tests/test_integration.py::test_build[build-no_isolation-code] SKIPPED
-tests/test_integration.py::test_build[build-no_isolation-entrypoint] SKIPPED
-tests/test_integration.py::test_build[build-no_isolation-module] SKIPPED
-tests/test_integration.py::test_build[dateutil-isolated-code] SKIPPED
-tests/test_integration.py::test_build[dateutil-isolated-entrypoint] SKIPPED
-tests/test_integration.py::test_build[dateutil-isolated-module] SKIPPED
-tests/test_integration.py::test_build[dateutil-no_isolation-code] SKIPPED
-tests/test_integration.py::test_build[dateutil-no_isolation-entrypoint] SKIPPED
-tests/test_integration.py::test_build[dateutil-no_isolation-module] SKIPPED
-tests/test_integration.py::test_build[flit-isolated-code] SKIPPED
-tests/test_integration.py::test_build[flit-isolated-entrypoint] SKIPPED
-tests/test_integration.py::test_build[flit-isolated-module] SKIPPED
-tests/test_integration.py::test_build[flit-no_isolation-code] SKIPPED
-tests/test_integration.py::test_build[flit-no_isolation-entrypoint] SKIPPED
-tests/test_integration.py::test_build[flit-no_isolation-module] SKIPPED
-tests/test_integration.py::test_build[pip-isolated-code] SKIPPED
-tests/test_integration.py::test_build[pip-isolated-entrypoint] SKIPPED
-tests/test_integration.py::test_build[pip-isolated-module] SKIPPED
-tests/test_integration.py::test_build[pip-no_isolation-code] SKIPPED
-tests/test_integration.py::test_build[pip-no_isolation-entrypoint] SKIPPED
-tests/test_integration.py::test_build[pip-no_isolation-module] SKIPPED
-tests/test_integration.py::test_isolation SKIPPED
-tests/test_main.py::test_build_isolated PASSED
-tests/test_main.py::test_build_no_isolation_check_deps_empty PASSED
-tests/test_main.py::test_build_no_isolation_with_check_deps[missing_deps0-\n\tfoo] PASSED
-tests/test_main.py::test_build_no_isolation_with_check_deps[missing_deps1-\n\tfoo\n\tbar\n\tbaz -> qux] PASSED
-tests/test_main.py::test_build_package PASSED
-tests/test_main.py::test_build_package_via_sdist PASSED
-tests/test_main.py::test_build_package_via_sdist_cant_build PASSED
-tests/test_main.py::test_build_package_via_sdist_invalid_distribution PASSED
-tests/test_main.py::test_build_raises_build_backend_exception PASSED
-tests/test_main.py::test_build_raises_build_exception PASSED
-tests/test_main.py::test_colors[False-env0-colors0] PASSED
-tests/test_main.py::test_colors[False-env2-colors2] PASSED
-tests/test_main.py::test_colors[False-env4-colors4] PASSED
-tests/test_main.py::test_colors[True-env1-colors1] PASSED
-tests/test_main.py::test_colors[True-env3-colors3] PASSED
-tests/test_main.py::test_colors[True-env5-colors5] PASSED
-tests/test_main.py::test_colors_conflict PASSED
-tests/test_main.py::test_output[sdist-and-wheel-direct-no-isolation] PASSED
-tests/test_main.py::test_output[sdist-direct-no-isolation] PASSED
-tests/test_main.py::test_output[via-sdist-isolation] PASSED
-tests/test_main.py::test_output[via-sdist-no-isolation] PASSED
-tests/test_main.py::test_output[wheel-direct-isolation] PASSED
-tests/test_main.py::test_output[wheel-direct-no-isolation] PASSED
-tests/test_main.py::test_output_env_subprocess_error[color] PASSED
-tests/test_main.py::test_output_env_subprocess_error[no-color] PASSED
-tests/test_main.py::test_parse_args[cli_args0-build_args0-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args1-build_args1-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args10-build_args10-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args11-build_args11-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args2-build_args2-build_package] PASSED
-tests/test_main.py::test_parse_args[cli_args3-build_args3-build_package] PASSED
-tests/test_main.py::test_parse_args[cli_args4-build_args4-build_package] PASSED
-tests/test_main.py::test_parse_args[cli_args5-build_args5-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args6-build_args6-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args7-build_args7-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args8-build_args8-build_package_via_sdist] PASSED
-tests/test_main.py::test_parse_args[cli_args9-build_args9-build_package_via_sdist] PASSED
-tests/test_main.py::test_prog PASSED
-tests/test_main.py::test_venv_fail PASSED
-tests/test_main.py::test_version PASSED
-tests/test_main_helpers.py::test_natural_language_list PASSED
-tests/test_module.py::test_dir PASSED
-tests/test_module.py::test_version PASSED
-tests/test_projectbuilder.py::test_bad_project PASSED
-tests/test_projectbuilder.py::test_build PASSED
-tests/test_projectbuilder.py::test_build_missing_backend[sdist] PASSED
-tests/test_projectbuilder.py::test_build_missing_backend[wheel] PASSED
-tests/test_projectbuilder.py::test_build_not_dir_outdir PASSED
-tests/test_projectbuilder.py::test_build_system_typo PASSED
-tests/test_projectbuilder.py::test_build_with_dep_on_console_script PASSED
-tests/test_projectbuilder.py::test_check_dependencies PASSED
-tests/test_projectbuilder.py::test_check_dependency[circular_dep-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep == 1.0.0-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep == 2.0.0-expected12] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[extra-with-met-deps]-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[extra-with-unmet-deps]-expected5] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[extra-without-associated-deps] == 1.0.0-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[extra-without-associated-deps] == 2.0.0-expected14] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[extra-without-associated-deps]-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[recursive-extra-with-unmet-deps]-expected6] PASSED
-tests/test_projectbuilder.py::test_check_dependency[extras_dep[undefined_extra]-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[missing_dep-expected1] PASSED
-tests/test_projectbuilder.py::test_check_dependency[missing_dep; python_version<="1"-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[missing_dep; python_version>"10"-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[missing_dep; python_version>="1"-expected10] PASSED
-tests/test_projectbuilder.py::test_check_dependency[prerelease_dep >= 1.0.0-None] PASSED
-tests/test_projectbuilder.py::test_check_dependency[requireless_dep-None] PASSED
-tests/test_projectbuilder.py::test_default_backend PASSED
-tests/test_projectbuilder.py::test_get_requires_for_build_missing_backend[sdist] PASSED
-tests/test_projectbuilder.py::test_get_requires_for_build_missing_backend[wheel] PASSED
-tests/test_projectbuilder.py::test_get_requires_for_build_missing_optional_hooks[sdist] PASSED
-tests/test_projectbuilder.py::test_get_requires_for_build_missing_optional_hooks[wheel] PASSED
-tests/test_projectbuilder.py::test_init PASSED
-tests/test_projectbuilder.py::test_init_makes_source_dir_absolute PASSED
-tests/test_projectbuilder.py::test_log PASSED
-tests/test_projectbuilder.py::test_metadata_invalid_wheel PASSED
-tests/test_projectbuilder.py::test_metadata_path_legacy PASSED
-tests/test_projectbuilder.py::test_metadata_path_no_prepare PASSED
-tests/test_projectbuilder.py::test_metadata_path_with_prepare PASSED
-tests/test_projectbuilder.py::test_missing_backend PASSED
-tests/test_projectbuilder.py::test_missing_outdir PASSED
-tests/test_projectbuilder.py::test_missing_requires PASSED
-tests/test_projectbuilder.py::test_no_outdir_multiple PASSED
-tests/test_projectbuilder.py::test_no_outdir_single PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml0-`requires` is a required property] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml1-`requires` must be an array of strings] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml2-`requires` must be an array of strings] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml3-`build-backend` must be a string] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml4-`backend-path` must be an array of strings] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml5-`backend-path` must be an array of strings] PASSED
-tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[pyproject_toml6-Unknown properties: unknown-prop] PASSED
-tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[pyproject_toml0-parse_output0] PASSED
-tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[pyproject_toml1-parse_output1] PASSED
-tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[pyproject_toml2-parse_output2] PASSED
-tests/test_projectbuilder.py::test_prepare PASSED
-tests/test_projectbuilder.py::test_prepare_error PASSED
-tests/test_projectbuilder.py::test_prepare_no_hook PASSED
-tests/test_projectbuilder.py::test_prepare_not_dir_outdir PASSED
-tests/test_projectbuilder.py::test_relative_outdir PASSED
-tests/test_projectbuilder.py::test_runner_user_specified PASSED
-tests/test_self_packaging.py::test_build_sdist PASSED
-tests/test_self_packaging.py::test_build_wheel[direct] PASSED
-tests/test_self_packaging.py::test_build_wheel[from_sdist] PASSED
-tests/test_util.py::test_wheel_metadata[False] PASSED
-tests/test_util.py::test_wheel_metadata[True] PASSED
-tests/test_util.py::test_wheel_metadata_isolation SKIPPED
-tests/test_util.py::test_with_get_requires PASSED
+tests/test_ctx_logger.py::test_ctx_custom_logger[False] PASSED
+tests/test_ctx_logger.py::test_ctx_custom_logger_with_custom_verbosity[False] PASSED
+tests/test_ctx_logger.py::test_custom_subprocess_runner_ctx_logging[False-0-kwarg_origins0] PASSED
+tests/test_ctx_logger.py::test_custom_subprocess_runner_ctx_logging[False-1-kwarg_origins1] PASSED
+tests/test_ctx_logger.py::test_default_ctx_logger[False] PASSED
+tests/test_ctx_logger.py::test_default_ctx_logger_only_logs_null_origin_messages[False] PASSED
+tests/test_env.py::test_can_get_venv_paths_with_conflicting_default_scheme[False] SKIPPED
+tests/test_env.py::test_can_get_venv_paths_with_posix_local_default_scheme[False] SKIPPED
+tests/test_env.py::test_default_impl_install_cmd_well_formed[False-0] PASSED
+tests/test_env.py::test_default_impl_install_cmd_well_formed[False-1] PASSED
+tests/test_env.py::test_default_impl_install_cmd_well_formed[False-2] PASSED
+tests/test_env.py::test_default_impl_install_cmd_well_formed[False-3] PASSED
+tests/test_env.py::test_default_pip_is_never_too_old[False] PASSED
+tests/test_env.py::test_external_uv_detection_failure[False] PASSED
+tests/test_env.py::test_external_uv_detection_success[False] SKIPPED
+tests/test_env.py::test_install_short_circuits[False] PASSED
+tests/test_env.py::test_isolated_env_abstract[False] PASSED
+tests/test_env.py::test_isolated_env_log[False] PASSED
+tests/test_env.py::test_isolation[False] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-arm64-20.2.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-arm64-20.3.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-arm64-21.0.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-arm64-21.0.1] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-x86_64-20.2.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-x86_64-20.3.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-x86_64-21.0.0] PASSED
+tests/test_env.py::test_pip_needs_upgrade_mac_os_11[False-x86_64-21.0.1] PASSED
+tests/test_env.py::test_requirement_installation[False-pip] PASSED
+tests/test_env.py::test_uv_impl_install_cmd_well_formed[False-0] SKIPPED
+tests/test_env.py::test_uv_impl_install_cmd_well_formed[False-1] SKIPPED
+tests/test_env.py::test_uv_impl_install_cmd_well_formed[False-2] SKIPPED
+tests/test_env.py::test_uv_impl_install_cmd_well_formed[False-3] SKIPPED
+tests/test_env.py::test_venv_creation[pip-venv+pip-False] PASSED
+tests/test_env.py::test_venv_creation[pip-virtualenv+pip-None] PASSED
+tests/test_env.py::test_venv_creation[pip-virtualenv+pip-True] PASSED
+tests/test_env.py::test_venv_executable_missing_post_creation[False] PASSED
+tests/test_env.py::test_venv_symlink[False-True] PASSED
+tests/test_integration.py::test_build[False-Solaar-isolated_pip-code] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-isolated_pip-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-isolated_pip-module] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-isolated_uv-code] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-isolated_uv-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-isolated_uv-module] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-no_isolation-code] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-no_isolation-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-Solaar-no_isolation-module] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_pip-code] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_pip-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_pip-module] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_uv-code] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_uv-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-build-isolated_uv-module] SKIPPED
+tests/test_integration.py::test_build[False-build-no_isolation-code] SKIPPED
+tests/test_integration.py::test_build[False-build-no_isolation-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-build-no_isolation-module] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_pip-code] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_pip-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_pip-module] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_uv-code] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_uv-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-isolated_uv-module] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-no_isolation-code] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-no_isolation-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-dateutil-no_isolation-module] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_pip-code] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_pip-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_pip-module] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_uv-code] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_uv-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-flit-isolated_uv-module] SKIPPED
+tests/test_integration.py::test_build[False-flit-no_isolation-code] SKIPPED
+tests/test_integration.py::test_build[False-flit-no_isolation-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-flit-no_isolation-module] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_pip-code] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_pip-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_pip-module] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_uv-code] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_uv-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-pip-isolated_uv-module] SKIPPED
+tests/test_integration.py::test_build[False-pip-no_isolation-code] SKIPPED
+tests/test_integration.py::test_build[False-pip-no_isolation-entrypoint] SKIPPED
+tests/test_integration.py::test_build[False-pip-no_isolation-module] SKIPPED
+tests/test_integration.py::test_isolation[False] SKIPPED
+tests/test_main.py::test_build_isolated[False] PASSED
+tests/test_main.py::test_build_no_isolation_check_deps_empty[False] PASSED
+tests/test_main.py::test_build_no_isolation_with_check_deps[False-missing_deps0-\n\tfoo] PASSED
+tests/test_main.py::test_build_no_isolation_with_check_deps[False-missing_deps1-\n\tfoo\n\tbar\n\tbaz -> qux] PASSED
+tests/test_main.py::test_build_package[False] PASSED
+tests/test_main.py::test_build_package_via_sdist[False] PASSED
+tests/test_main.py::test_build_package_via_sdist_cant_build[False] PASSED
+tests/test_main.py::test_build_package_via_sdist_invalid_distribution[False] PASSED
+tests/test_main.py::test_build_raises_build_backend_exception[False] PASSED
+tests/test_main.py::test_build_raises_build_exception[False] PASSED
+tests/test_main.py::test_colors[False-False-env0-colors0] PASSED
+tests/test_main.py::test_colors[False-False-env2-colors2] PASSED
+tests/test_main.py::test_colors[False-False-env4-colors4] PASSED
+tests/test_main.py::test_colors[False-True-env1-colors1] PASSED
+tests/test_main.py::test_colors[False-True-env3-colors3] PASSED
+tests/test_main.py::test_colors[False-True-env5-colors5] PASSED
+tests/test_main.py::test_colors_conflict[False] PASSED
+tests/test_main.py::test_output[False-sdist-and-wheel-direct-no-isolation] PASSED
+tests/test_main.py::test_output[False-sdist-direct-no-isolation] PASSED
+tests/test_main.py::test_output[False-via-sdist-isolation] PASSED
+tests/test_main.py::test_output[False-via-sdist-no-isolation] PASSED
+tests/test_main.py::test_output[False-wheel-direct-isolation] PASSED
+tests/test_main.py::test_output[False-wheel-direct-no-isolation] PASSED
+tests/test_main.py::test_output_env_subprocess_error[False-color] PASSED
+tests/test_main.py::test_output_env_subprocess_error[False-no-color] PASSED
+tests/test_main.py::test_parse_args[False-cli_args0-build_args0-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args1-build_args1-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args10-build_args10-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args11-build_args11-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args12-build_args12-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args2-build_args2-build_package] PASSED
+tests/test_main.py::test_parse_args[False-cli_args3-build_args3-build_package] PASSED
+tests/test_main.py::test_parse_args[False-cli_args4-build_args4-build_package] PASSED
+tests/test_main.py::test_parse_args[False-cli_args5-build_args5-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args6-build_args6-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args7-build_args7-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args8-build_args8-build_package_via_sdist] PASSED
+tests/test_main.py::test_parse_args[False-cli_args9-build_args9-build_package_via_sdist] PASSED
+tests/test_main.py::test_prog[False] PASSED
+tests/test_main.py::test_venv_fail[False] PASSED
+tests/test_main.py::test_verbose_output[False-0] PASSED
+tests/test_main.py::test_verbose_output[False-1] PASSED
+tests/test_main.py::test_version[False] PASSED
+tests/test_main_helpers.py::test_natural_language_list[False] PASSED
+tests/test_module.py::test_dir[False] PASSED
+tests/test_module.py::test_version[False] PASSED
+tests/test_projectbuilder.py::test_bad_project[False] PASSED
+tests/test_projectbuilder.py::test_build[False] PASSED
+tests/test_projectbuilder.py::test_build_missing_backend[False-sdist] PASSED
+tests/test_projectbuilder.py::test_build_missing_backend[False-wheel] PASSED
+tests/test_projectbuilder.py::test_build_not_dir_outdir[False] PASSED
+tests/test_projectbuilder.py::test_build_system_typo[False] PASSED
+tests/test_projectbuilder.py::test_build_with_dep_on_console_script[False] PASSED
+tests/test_projectbuilder.py::test_check_dependencies[False] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-circular_dep-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep == 1.0.0-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep == 2.0.0-expected12] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[extra-with-met-deps]-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[extra-with-unmet-deps]-expected5] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[extra-without-associated-deps] == 1.0.0-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[extra-without-associated-deps] == 2.0.0-expected14] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[extra-without-associated-deps]-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[recursive-extra-with-unmet-deps]-expected6] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-extras_dep[undefined_extra]-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-missing_dep-expected1] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-missing_dep; python_version<="1"-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-missing_dep; python_version>"10"-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-missing_dep; python_version>="1"-expected10] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-prerelease_dep >= 1.0.0-None] PASSED
+tests/test_projectbuilder.py::test_check_dependency[False-requireless_dep-None] PASSED
+tests/test_projectbuilder.py::test_default_backend[False] PASSED
+tests/test_projectbuilder.py::test_get_requires_for_build_missing_backend[False-sdist] PASSED
+tests/test_projectbuilder.py::test_get_requires_for_build_missing_backend[False-wheel] PASSED
+tests/test_projectbuilder.py::test_get_requires_for_build_missing_optional_hooks[False-sdist] PASSED
+tests/test_projectbuilder.py::test_get_requires_for_build_missing_optional_hooks[False-wheel] PASSED
+tests/test_projectbuilder.py::test_init[False] PASSED
+tests/test_projectbuilder.py::test_init_makes_source_dir_absolute[False] PASSED
+tests/test_projectbuilder.py::test_log[False] PASSED
+tests/test_projectbuilder.py::test_metadata_invalid_wheel[False] PASSED
+tests/test_projectbuilder.py::test_metadata_path_legacy[False] PASSED
+tests/test_projectbuilder.py::test_metadata_path_no_prepare[False] PASSED
+tests/test_projectbuilder.py::test_metadata_path_with_prepare[False] PASSED
+tests/test_projectbuilder.py::test_missing_backend[False] PASSED
+tests/test_projectbuilder.py::test_missing_outdir[False] PASSED
+tests/test_projectbuilder.py::test_missing_requires[False] PASSED
+tests/test_projectbuilder.py::test_no_outdir_multiple[False] PASSED
+tests/test_projectbuilder.py::test_no_outdir_single[False] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml0-`requires` is a required property] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml1-`requires` must be an array of strings] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml2-`requires` must be an array of strings] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml3-`build-backend` must be a string] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml4-`backend-path` must be an array of strings] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml5-`backend-path` must be an array of strings] PASSED
+tests/test_projectbuilder.py::test_parse_invalid_build_system_table_type[False-pyproject_toml6-Unknown properties: unknown-prop] PASSED
+tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[False-pyproject_toml0-parse_output0] PASSED
+tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[False-pyproject_toml1-parse_output1] PASSED
+tests/test_projectbuilder.py::test_parse_valid_build_system_table_type[False-pyproject_toml2-parse_output2] PASSED
+tests/test_projectbuilder.py::test_prepare[False] PASSED
+tests/test_projectbuilder.py::test_prepare_error[False] PASSED
+tests/test_projectbuilder.py::test_prepare_no_hook[False] PASSED
+tests/test_projectbuilder.py::test_prepare_not_dir_outdir[False] PASSED
+tests/test_projectbuilder.py::test_relative_outdir[False] PASSED
+tests/test_projectbuilder.py::test_runner_user_specified[False] PASSED
+tests/test_self_packaging.py::test_build_sdist[False] PASSED
+tests/test_self_packaging.py::test_build_wheel[False-direct] PASSED
+tests/test_self_packaging.py::test_build_wheel[False-from_sdist] PASSED
+tests/test_util.py::test_wheel_metadata[False-False] PASSED
+tests/test_util.py::test_wheel_metadata[False-True] PASSED
+tests/test_util.py::test_wheel_metadata_isolation[False] SKIPPED
+tests/test_util.py::test_with_get_requires[False] PASSED
 
 
 =========================== short test summary info ============================
-======== 124 passed, 34 skipped ========
+======== 140 passed, 54 skipped ========
   py$(PYV): OK
   congratulations :)

--
Gitblit v1.9.3