coverage: move config from .coveragerc
to pyproject.toml
Getting rid of another top-level file. `coverage.py` has supported `pyproject.toml` since version 5.0, and all versions of coverage so far work with python 2.7. We just need to ensure that a version of coverage with the `toml` extra is installed in the test environment. I tested this with `coverage run`, `coverage report`, and `coverage html`.
This commit is contained in:
parent
775c8223c3
commit
084bafe18c
38
.coveragerc
38
.coveragerc
@ -1,38 +0,0 @@
|
|||||||
# -*- conf -*-
|
|
||||||
# .coveragerc to control coverage.py
|
|
||||||
[run]
|
|
||||||
parallel = True
|
|
||||||
concurrency = multiprocessing
|
|
||||||
branch = True
|
|
||||||
source =
|
|
||||||
bin
|
|
||||||
lib
|
|
||||||
omit =
|
|
||||||
lib/spack/spack/test/*
|
|
||||||
lib/spack/docs/*
|
|
||||||
lib/spack/external/*
|
|
||||||
share/spack/qa/*
|
|
||||||
|
|
||||||
[report]
|
|
||||||
# Regexes for lines to exclude from consideration
|
|
||||||
exclude_lines =
|
|
||||||
# Have to re-enable the standard pragma
|
|
||||||
pragma: no cover
|
|
||||||
|
|
||||||
# Don't complain about missing debug-only code:
|
|
||||||
def __repr__
|
|
||||||
if self\.debug
|
|
||||||
|
|
||||||
# Don't complain if tests don't hit defensive assertion code:
|
|
||||||
raise AssertionError
|
|
||||||
raise NotImplementedError
|
|
||||||
|
|
||||||
# Don't complain if non-runnable code isn't run:
|
|
||||||
if 0:
|
|
||||||
if False:
|
|
||||||
if __name__ == .__main__.:
|
|
||||||
|
|
||||||
ignore_errors = True
|
|
||||||
|
|
||||||
[html]
|
|
||||||
directory = htmlcov
|
|
8
.github/workflows/unit_tests.yaml
vendored
8
.github/workflows/unit_tests.yaml
vendored
@ -137,7 +137,7 @@ jobs:
|
|||||||
sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
|
sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
|
||||||
- name: Install Python packages
|
- name: Install Python packages
|
||||||
run: |
|
run: |
|
||||||
pip install --upgrade pip six setuptools codecov coverage
|
pip install --upgrade pip six setuptools codecov coverage[toml]
|
||||||
- name: Setup git configuration
|
- name: Setup git configuration
|
||||||
run: |
|
run: |
|
||||||
# Need this for the git tests to succeed.
|
# Need this for the git tests to succeed.
|
||||||
@ -205,7 +205,7 @@ jobs:
|
|||||||
sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
|
sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
|
||||||
- name: Install Python packages
|
- name: Install Python packages
|
||||||
run: |
|
run: |
|
||||||
pip install --upgrade pip six setuptools codecov coverage
|
pip install --upgrade pip six setuptools codecov coverage[toml]
|
||||||
- name: Setup git configuration
|
- name: Setup git configuration
|
||||||
run: |
|
run: |
|
||||||
# Need this for the git tests to succeed.
|
# Need this for the git tests to succeed.
|
||||||
@ -326,7 +326,7 @@ jobs:
|
|||||||
make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
|
make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
|
||||||
- name: Install Python packages
|
- name: Install Python packages
|
||||||
run: |
|
run: |
|
||||||
pip install --upgrade pip six setuptools codecov coverage clingo
|
pip install --upgrade pip six setuptools codecov coverage[toml] clingo
|
||||||
- name: Setup git configuration
|
- name: Setup git configuration
|
||||||
run: |
|
run: |
|
||||||
# Need this for the git tests to succeed.
|
# Need this for the git tests to succeed.
|
||||||
@ -369,7 +369,7 @@ jobs:
|
|||||||
- name: Install Python packages
|
- name: Install Python packages
|
||||||
run: |
|
run: |
|
||||||
pip install --upgrade pip six setuptools
|
pip install --upgrade pip six setuptools
|
||||||
pip install --upgrade codecov coverage
|
pip install --upgrade codecov coverage[toml]
|
||||||
pip install --upgrade flake8 isort>=4.3.5 mypy>=0.900
|
pip install --upgrade flake8 isort>=4.3.5 mypy>=0.900
|
||||||
- name: Setup Homebrew packages
|
- name: Setup Homebrew packages
|
||||||
run: |
|
run: |
|
||||||
|
@ -26,33 +26,69 @@ namespace_packages = true
|
|||||||
ignore_errors = true
|
ignore_errors = true
|
||||||
ignore_missing_imports = true
|
ignore_missing_imports = true
|
||||||
|
|
||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = 'spack.*'
|
module = 'spack.*'
|
||||||
ignore_errors = false
|
ignore_errors = false
|
||||||
ignore_missing_imports = false
|
ignore_missing_imports = false
|
||||||
|
|
||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = 'packages.*'
|
module = 'packages.*'
|
||||||
ignore_errors = false
|
ignore_errors = false
|
||||||
ignore_missing_imports = false
|
ignore_missing_imports = false
|
||||||
|
|
||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = 'llnl.*'
|
module = 'llnl.*'
|
||||||
ignore_errors = false
|
ignore_errors = false
|
||||||
ignore_missing_imports = false
|
ignore_missing_imports = false
|
||||||
|
|
||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = 'spack.test.packages'
|
module = 'spack.test.packages'
|
||||||
|
ignore_errors = true
|
||||||
|
|
||||||
|
# ignore errors in fake import path for packages
|
||||||
|
[[tool.mypy.overrides]]
|
||||||
|
module = 'spack.pkg.*'
|
||||||
|
ignore_errors = true
|
||||||
|
ignore_missing_imports = true
|
||||||
|
|
||||||
|
# jinja has syntax in it that requires python3 and causes a parse error
|
||||||
|
# skip importing it
|
||||||
|
[[tool.mypy.overrides]]
|
||||||
|
module = 'jinja2'
|
||||||
|
follow_imports = 'skip'
|
||||||
|
|
||||||
|
[tool.coverage.run]
|
||||||
|
parallel = true
|
||||||
|
concurrency = ["multiprocessing"]
|
||||||
|
branch = true
|
||||||
|
source = ["bin", "lib"]
|
||||||
|
omit = [
|
||||||
|
'lib/spack/spack/test/*',
|
||||||
|
'lib/spack/docs/*',
|
||||||
|
'lib/spack/external/*',
|
||||||
|
'share/spack/qa/*',
|
||||||
|
]
|
||||||
|
|
||||||
|
[tool.coverage.report]
|
||||||
|
# Regexes for lines to exclude from consideration
|
||||||
|
exclude_lines = [
|
||||||
|
# Have to re-enable the standard pragma
|
||||||
|
'pragma: no cover',
|
||||||
|
|
||||||
|
# Don't complain about missing debug-only code:
|
||||||
|
'def __repr__',
|
||||||
|
'if self\.debug',
|
||||||
|
|
||||||
|
# Don't complain if tests don't hit defensive assertion code:
|
||||||
|
'raise AssertionError',
|
||||||
|
'raise NotImplementedError',
|
||||||
|
|
||||||
|
# Don't complain if non-runnable code isn't run:
|
||||||
|
'if 0:',
|
||||||
|
'if False:',
|
||||||
|
'if __name__ == .__main__.:',
|
||||||
|
]
|
||||||
ignore_errors = true
|
ignore_errors = true
|
||||||
|
|
||||||
# ignore errors in fake import path for packages
|
[tool.coverage.html]
|
||||||
[[tool.mypy.overrides]]
|
directory = "htmlcov"
|
||||||
module = 'spack.pkg.*'
|
|
||||||
ignore_errors = true
|
|
||||||
ignore_missing_imports = true
|
|
||||||
|
|
||||||
# jinja has syntax in it that requires python3 and causes a parse error
|
|
||||||
# skip importing it
|
|
||||||
[[tool.mypy.overrides]]
|
|
||||||
module = 'jinja2'
|
|
||||||
follow_imports = 'skip'
|
|
||||||
|
Loading…
Reference in New Issue
Block a user