mirror of
https://github.com/pypa/pip
synced 2023-12-13 21:30:23 +01:00
50e194f107
The modern virtual environment structure does not allow us to enable "fake user site" while disabling the global site, so we need to do more fine-grained configuration to correctly set up test environments for each test case. With this done, we can also properly support the stdlib venv ad the test environment backend, since it basically works identically with modern virtualenv. The incompatible_with_test_venv is thus removed.
114 lines
3.1 KiB
INI
114 lines
3.1 KiB
INI
[isort]
|
|
profile = black
|
|
skip =
|
|
./build,
|
|
.nox,
|
|
.tox,
|
|
.scratch,
|
|
_vendor,
|
|
data
|
|
known_third_party =
|
|
pip._vendor
|
|
|
|
[flake8]
|
|
max-line-length = 88
|
|
exclude =
|
|
./build,
|
|
.nox,
|
|
.tox,
|
|
.scratch,
|
|
_vendor,
|
|
data
|
|
enable-extensions = G
|
|
extend-ignore =
|
|
G200, G202,
|
|
# black adds spaces around ':'
|
|
E203,
|
|
# using a cache
|
|
B019,
|
|
# reassigning variables in a loop
|
|
B020,
|
|
per-file-ignores =
|
|
# G: The plugin logging-format treats every .log and .error as logging.
|
|
noxfile.py: G
|
|
# B011: Do not call assert False since python -O removes these calls
|
|
tests/*: B011
|
|
|
|
[mypy]
|
|
mypy_path = $MYPY_CONFIG_FILE_DIR/src
|
|
ignore_missing_imports = True
|
|
disallow_untyped_defs = True
|
|
disallow_any_generics = True
|
|
warn_unused_ignores = True
|
|
no_implicit_optional = True
|
|
|
|
[mypy-pip._vendor.*]
|
|
ignore_errors = True
|
|
|
|
# These vendored libraries use runtime magic to populate things and don't sit
|
|
# well with static typing out of the box. Eventually we should provide correct
|
|
# typing information for their public interface and remove these configs.
|
|
[mypy-pip._vendor.colorama]
|
|
follow_imports = skip
|
|
[mypy-pip._vendor.pkg_resources]
|
|
follow_imports = skip
|
|
[mypy-pip._vendor.progress.*]
|
|
follow_imports = skip
|
|
[mypy-pip._vendor.requests.*]
|
|
follow_imports = skip
|
|
|
|
[tool:pytest]
|
|
addopts = --ignore src/pip/_vendor --ignore tests/tests_cache -r aR --color=yes
|
|
xfail_strict = True
|
|
markers =
|
|
network: tests that need network
|
|
incompatible_with_sysconfig
|
|
incompatible_with_venv
|
|
no_auto_tempdir_manager
|
|
unit: unit tests
|
|
integration: integration tests
|
|
bzr: VCS: Bazaar
|
|
svn: VCS: Subversion
|
|
mercurial: VCS: Mercurial
|
|
git: VCS: git
|
|
search: tests for 'pip search'
|
|
|
|
[coverage:run]
|
|
branch = True
|
|
# Do not gather coverage for vendored libraries.
|
|
omit = */_vendor/*
|
|
# Centralized absolute file prefix for coverage files.
|
|
data_file = ${COVERAGE_OUTPUT_DIR}/.coverage
|
|
# By default, each covered process will try to truncate and then write to
|
|
# `data_file`, but with `parallel`, they will write to separate files suffixed
|
|
# with hostname, pid, and a timestamp.
|
|
parallel = True
|
|
# If not set, then at the termination of each worker (when using pytest-xdist),
|
|
# the following is traced: "Coverage.py warning: Module pip was previously
|
|
# imported, but not measured (module-not-measured)"
|
|
disable_warnings = module-not-measured
|
|
|
|
[coverage:paths]
|
|
# We intentionally use "source0" here because pytest-cov unconditionally sets
|
|
# "source" after loading the config.
|
|
source0 =
|
|
# The primary source code path which other paths will be combined into.
|
|
src/pip/
|
|
# Unit test source directory e.g.
|
|
# `.tox/coverage-py3/lib/pythonX.Y/site-packages/pip/...`
|
|
*/site-packages/pip/
|
|
# Functional test virtual environment directories, which look like
|
|
# `tmpdir/pip0/pip/src/pip/...`
|
|
*/pip/src/pip/
|
|
|
|
[coverage:report]
|
|
exclude_lines =
|
|
# We must re-state the default because the `exclude_lines` option overrides
|
|
# it.
|
|
pragma: no cover
|
|
# This excludes typing-specific code, which will be validated by mypy anyway.
|
|
if TYPE_CHECKING
|
|
|
|
[metadata]
|
|
license_file = LICENSE.txt
|