-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathpyproject.toml
More file actions
59 lines (48 loc) · 1.48 KB
/
pyproject.toml
File metadata and controls
59 lines (48 loc) · 1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
[tool.uv.workspace]
members = ["hugr-py"]
[tool.uv]
dev-dependencies = [
"pre-commit >=3.6.2,<4",
"pytest ~=9.0",
"pytest-cov ~=7.0",
"pytest-xdist ~= 3.8",
"maturin >=1.7.0,<2",
"mypy >=1.9.0,<2",
"ruff >=0.6.2,<0.7",
"toml >=0.10.0,<0.11",
"syrupy ~=5.1",
"types-zstd >= 1.5.6.6",
"pytket >= 1.34.0",
]
[tool.pytest.ini_options]
addopts = "--doctest-modules --ignore=test_files"
filterwarnings = "ignore::DeprecationWarning:lark.*"
[tool.mypy]
# TODO: Fix lints and enable this
#strict = true
exclude = '''(?x)(
^test_files/ # Test files
)'''
[tool.coverage.report]
exclude_also = [
# Don't complain about missing coverage on typing imports
"if TYPE_CHECKING:",
# Don't complain if tests don't hit defensive assertion code:
"raise AssertionError",
"raise NotImplementedError",
"raise InternalGuppyError",
# Don't complain about abstract methods, they aren't run:
"@abstractmethod",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.maturin]
# Maturin is not the build system for the workspace (it is only used for `hugr-py`).
# We mirror the `hugr-py/pyproject.toml` config here so `maturin develop` still works
# from the root of the workspace.
module-name = "hugr._hugr"
python-source = "hugr-py/src/"
manifest-path = "hugr-py/Cargo.toml"
# "extension-module" tells pyo3 we want to build an extension module (skips linking against libpython.so)
features = ["pyo3/extension-module"]