diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d010a45e7c..ea4c4c857c 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -103,7 +103,7 @@ repos: - <<: *uv-managed-hook id: mypy name: mypy static type checker - entry: uv run --group dev --frozen --isolated mypy + entry: uv run --group typing-distributed --frozen --isolated mypy types_or: [python, pyi] pass_filenames: false diff --git a/pyproject.toml b/pyproject.toml index 709d55625a..73dc550447 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,9 +55,12 @@ typing = [ "mypy[faster-cache]>=1.13.0", "typing-extensions>=4.11.0", "types-cffi>=1.16.0", - "mpi4py>=4.0.0", "scipy-stubs>=1.15.3.0" ] +typing-distributed = [ + "mpi4py>=3.1.5", + "pymetis>2022.1" +] # -- Standard project description options (PEP 621) -- [project] diff --git a/uv.lock b/uv.lock index 58d57b43f0..b131ed661c 100644 --- a/uv.lock +++ b/uv.lock @@ -1605,7 +1605,6 @@ dev = [ { name = "coverage", extra = ["toml"] }, { name = "esbonio" }, { name = "icon4py-testing" }, - { name = "mpi4py" }, { name = "mypy", extra = ["faster-cache"] }, { name = "myst-parser" }, { name = "nox" }, @@ -1667,12 +1666,15 @@ test = [ { name = "pytest-xdist", extra = ["psutil"] }, ] typing = [ - { name = "mpi4py" }, { name = "mypy", extra = ["faster-cache"] }, { name = "scipy-stubs" }, { name = "types-cffi" }, { name = "typing-extensions" }, ] +typing-distributed = [ + { name = "mpi4py" }, + { name = "pymetis" }, +] [package.metadata] requires-dist = [ @@ -1708,7 +1710,6 @@ dev = [ { name = "coverage", extras = ["toml"], specifier = ">=7.5.0" }, { name = "esbonio", specifier = ">=0.16.0" }, { name = "icon4py-testing", editable = "model/testing" }, - { name = "mpi4py", specifier = ">=4.0.0" }, { name = "mypy", extras = ["faster-cache"], specifier = ">=1.13.0" }, { name = "myst-parser", specifier = ">=4.0.0" }, { name = "nox", git = "https://github.com/wntrblm/nox.git?rev=aa09595437608dfe21eb776d8a4bcc0bd5f9916b" }, @@ -1770,12 +1771,15 @@ test = [ { name = "pytest-xdist", extras = ["psutil"], specifier = ">=3.5.0" }, ] typing = [ - { name = "mpi4py", specifier = ">=4.0.0" }, { name = "mypy", extras = ["faster-cache"], specifier = ">=1.13.0" }, { name = "scipy-stubs", specifier = ">=1.15.3.0" }, { name = "types-cffi", specifier = ">=1.16.0" }, { name = "typing-extensions", specifier = ">=4.11.0" }, ] +typing-distributed = [ + { name = "mpi4py", specifier = ">=3.1.5" }, + { name = "pymetis", specifier = ">2022.1" }, +] [[package]] name = "icon4py-atmosphere-advection"