generated from ImperialCollegeLondon/poetry_template_2
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpyproject.toml
87 lines (77 loc) · 2.27 KB
/
pyproject.toml
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
[tool.poetry]
name = "FROG"
version = "2.1.0rc1"
description = "A graphical user interface for controlling and monitoring an interferometer device."
authors = [
"Alex Dewar <[email protected]>",
"Diego Alonso Álvarez <[email protected]>",
"Dan Cummins <[email protected]>",
"Callum West <[email protected]>",
"James Turner <[email protected]>",
"Imperial College London RSE Team <[email protected]>",
]
[tool.poetry.dependencies]
python = ">=3.13,<3.14"
PySide6 = "^6.8.1"
matplotlib = "^3.10.0"
platformdirs = "^4.2.2"
pypubsub = "^4.0.3"
pyyaml = "^6.0"
schema = "^0.7.7"
pyserial = "^3.5"
beautifulsoup4 = "^4.12.3"
python-statemachine = "<2.4.0"
numpy = "^2.2.1"
decorator = "^5.1.1"
pycsvy = "^0.2.3"
frozendict = "^2.4.6"
crc = "^7.1.0"
ntplib = "^0.4.0"
[tool.poetry.group.dev.dependencies]
pytest = "^8.3"
pytest-cov = "^6.0.0"
pytest-mock = "^3.14.0"
pre-commit = "^4.0.1"
pyinstaller = "^6.11.1"
types-pyyaml = "^6.0.12.20241230"
types-beautifulsoup4 = "^4.12.0.20240511"
pytest-qt = "^4.4.0"
types-decorator = "^5.1.8.20240310"
pydot = "^3.0.4"
ruff = "^0.9.1"
freezegun = "^1.5.1"
mypy = "^1.14.1"
pytest-xdist = { extras = ["psutil"], version = "^3.6.1" }
[tool.poetry.group.docs.dependencies]
mkdocs = "^1.6.1"
mkdocstrings = "^0.27.0"
mkdocstrings-python = "^1.13.0"
mkdocs-material = "^9.5.49"
mkdocs-gen-files = "^0.5.0"
mkdocs-literate-nav = "^0.6.1"
mkdocs-section-index = "^0.3.9"
[tool.ruff]
target-version = "py313"
lint.select = [
"D", # pydocstyle
"E", # pycodestyle
"F", # Pyflakes
"I", # isort
"UP", # pyupgrade
"RUF", # ruff
]
lint.pydocstyle.convention = "google"
[tool.mypy]
# Some of the docs scripts give errors, but we don't care
exclude = "docs"
ignore_missing_imports = true
# Allows Type[T] to refer to abstract classes, which is not otherwise supported.
# See https://github.com/python/mypy/issues/4717
disable_error_code = "type-abstract"
[tool.pytest.ini_options]
addopts = "-v -p no:warnings -n auto --cov=frog --cov-report=html:htmlcov/coverage --doctest-modules --ignore=site/ --ignore=docs/"
[tool.coverage.report]
exclude_lines = ["if __name__ == .__main__.:"]
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"