[build-system] requires = [ "cython >= 3.0.2", "meson >= 1.1.0", "meson-python >= 0.15.0", "numpy >= 1.23", "setuptools_scm", ] build-backend = "mesonpy" [project] name = "python-mumps" description = "Bindings and Python interface for the MUMPS sparse solver" readme = "README.md" authors = [ {name = "Python-MUMPS authors", email = "authors@kwant-project.org"} ] license = {file = "LICENSE"} homepage = "https://gitlab.kwant-project.org/kwant/python-mumps" repository = "https://gitlab.kwant-project.org/kwant/python-mumps" classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "Intended Audience :: Developers", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering", "Operating System :: POSIX", "Operating System :: Unix", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows" ] requires-python = ">= 3.9" dependencies = [ "numpy >= 1.23", "scipy >= 1.8", ] dynamic = ["version"] [project.urls] homepage = "https://gitlab.kwant-project.org/kwant/python-mumps" [tool.ruff.pydocstyle] convention = "numpy" [tool.ruff.flake8-quotes] docstring-quotes = "double" [tool.black] line-length = 88 [tool.codespell] ignore-words-list = "groth,coo" [tool.pixi.project] channels = ["conda-forge"] platforms = ["linux-64"] [tool.pixi.pypi-dependencies] python-mumps = { path = ".", editable = true } [tool.pixi.dependencies] mumps-seq = ">=5.7.3,<6" scipy = ">=1.14.1,<2" numpy = ">=2.1.1,<3" setuptools_scm = ">=8.1.0,<9" meson-python = ">=0.16.0,<0.17" compilers = ">=1.7.0,<2" ninja = ">=1.12.1,<2" cython = ">=3.0.11,<4" pytest = ">=8.3.2,<9" git = "*" [tool.pixi.feature.publish.dependencies] uv = ">=0.4.5" twine = ">=5.1.1" [tool.pixi.feature.precommit.dependencies] pre-commit = "*" git = "*" [tool.pixi.feature.develop.dependencies] ipykernel = ">=6.29.0" [tool.pixi.pypi-options] no-build-isolation = ["python-mumps"] [tool.pixi.environments] default = { features = ["develop", "publish", "precommit"], solve-group = "default" } precommit = { features = ["precommit"], no-default-feature = true } publish = { features = ["publish"] } [tool.pixi.tasks] test = { cmd = "python -P -m pytest --import-mode=importlib --pyargs mumps", clean-env = true } [tool.pixi.feature.precommit.tasks] check = "pre-commit run --all-files" pre-commit = "pre-commit"