mypy: move configuration to pyproject.toml (#24802)
This moves our `mypy` configuration from `.mypy.ini` to `.pyproject.toml` and increases the minimum `mypy` version in the tests. - [x] move `mypy` configuration to `pyproject.toml` - [x] remove `.mypy.ini` - [x] ensure that `mypy` version .900 or higher is used in tests
This commit is contained in:
@@ -12,3 +12,47 @@ known_archspec = "archspec"
|
||||
known_llnl = "llnl"
|
||||
src_paths = "lib"
|
||||
honor_noqa = true
|
||||
|
||||
[tool.mypy]
|
||||
python_version = 3.7
|
||||
files = ['lib/spack/llnl/**/*.py', 'lib/spack/spack/**/*.py']
|
||||
mypy_path = ['bin', 'lib/spack', 'lib/spack/external', 'var/spack/repos/builtin']
|
||||
|
||||
# This and a generated import file allows supporting packages
|
||||
namespace_packages = true
|
||||
|
||||
# To avoid re-factoring all the externals, ignore errors and missing imports
|
||||
# globally, then turn back on in spack and spack submodules
|
||||
ignore_errors = true
|
||||
ignore_missing_imports = true
|
||||
|
||||
[[tool.mypy.overrides]]
|
||||
module = 'spack.*'
|
||||
ignore_errors = false
|
||||
ignore_missing_imports = false
|
||||
|
||||
[[tool.mypy.overrides]]
|
||||
module = 'packages.*'
|
||||
ignore_errors = false
|
||||
ignore_missing_imports = false
|
||||
|
||||
[[tool.mypy.overrides]]
|
||||
module = 'llnl.*'
|
||||
ignore_errors = false
|
||||
ignore_missing_imports = false
|
||||
|
||||
[[tool.mypy.overrides]]
|
||||
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'
|
||||
|
Reference in New Issue
Block a user