module documentation

Integration tests for setuptools that focus on building packages via pip. The idea behind these tests is not to exhaustively check all the possible combinations of packages, operating systems, supporting libraries, etc, but rather check a limited number of popular packages and how they interact with the exposed public API. This way if any change in API is introduced, we hope to identify backward compatibility problems before publishing a release. The number of tested packages is purposefully kept small, to minimise duration and the associated maintenance cost (changes in the way these packages define their build process may require changes in the tests).

Function build_deps Find out what are the build dependencies for a package.
Function download Undocumented
Function retrieve_pypi_sdist_metadata Undocumented
Function retrieve_sdist Either use cached sdist file or download it from PyPI
Function test_install_sdist Undocumented
Function venv_python Undocumented
Constant ALREADY_LOADED Undocumented
Constant EXAMPLES Undocumented
Constant EXTRA_BUILD_DEPS Undocumented
Constant INSTALL_OPTIONS Undocumented
Constant LATEST Default version to be checked
Constant VIRTUALENV Undocumented
Function _prepare Undocumented
Function _read_pyproject Undocumented
def build_deps(package, sdist_file): (source)

Find out what are the build dependencies for a package. "Manually" install them, since pip will not install build deps with `--no-build-isolation`.

def download(url, dest, md5_digest): (source)

Undocumented

def retrieve_pypi_sdist_metadata(package, version): (source)

Undocumented

def retrieve_sdist(package, version, tmp_path): (source)

Either use cached sdist file or download it from PyPI

@pytest.mark.parametrize('package, version', EXAMPLES)
@pytest.mark.uses_network
def test_install_sdist(package, version, tmp_path, venv_python, setuptools_wheel): (source)

Undocumented

@pytest.fixture
def venv_python(tmp_path): (source)

Undocumented

ALREADY_LOADED: tuple[str, ...] = (source)

Undocumented

Value
('pytest', 'mypy')
EXAMPLES = (source)

Undocumented

Value
[('pandas', LATEST),
 ('sphinx', LATEST),
 ('pip', LATEST),
 ('pytest', LATEST),
 ('mypy', LATEST),
 ('botocore', LATEST),
 ('kiwisolver', '1.3.2'),
...
EXTRA_BUILD_DEPS: dict = (source)

Undocumented

Value
{'sphinx': ('babel>=1.3'), 'kiwisolver': ('cppy>=1.1.0')}
INSTALL_OPTIONS: tuple[str, ...] = (source)

Undocumented

Value
('--ignore-installed', '--no-build-isolation')

Default version to be checked

VIRTUALENV = (source)

Undocumented

Value
(sys.executable, '-m', 'virtualenv')
@pytest.fixture(autouse=True)
def _prepare(tmp_path, venv_python, monkeypatch, request): (source)

Undocumented

def _read_pyproject(archive): (source)

Undocumented