-
Notifications
You must be signed in to change notification settings - Fork 65
/
Copy pathpyproject.toml
90 lines (74 loc) · 2.74 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
88
89
[tool.poetry]
name = "toqito"
version = "1.0.5"
description = "Python tools for the study of quantum information."
authors = [
"Toqito Contributors <https://github.com/vprusso/toqito/graphs/contributors>"
]
maintainers = [
"Toqito Contributors <https://github.com/vprusso/toqito/graphs/contributors>"
]
readme = "README.md"
homepage = "https://vprusso.github.io/toqito/"
repository = "https://github.com/vprusso/toqito"
keywords = ["quantum information", "quantum computing", "nonlocal games"]
[tool.poetry.dependencies]
python = ">=3.10,<3.12"
cvxpy = "1.4.1"
cvxopt = "1.3.2"
more-itertools = "10.1.0"
numpy = "1.26.2"
scipy = "1.11.4"
#scs = "3.2.4.post1"
picos = "2.4.17"
[tool.poetry.dev-dependencies]
distlib = "0.3.8"
flake8 = "6.1.0"
flake8-docstrings = "1.7.0"
ipython = "8.18.1"
isort = "5.13.2"
myst-parser = "2.0.0"
pep8 = "1.7.1"
ruff = "0.1.8"
pylint = "3.0.3"
pytest = "7.4.3"
pytest-cov = "4.1.0"
coverage = "7.3.3"
mypy = "1.7.1"
setuptools = ">65.5.1"
sphinx = "7.2.6"
sphinx_rtd_theme = "2.0.0"
sphinxcontrib-bibtex = "2.6.1"
sympy = "1.12"
[build-system]
requires = ["setuptools","poetry>=0.12"]
build-backend = "poetry.masonry.api"
[tool.ruff]
# exclude = ["__init__.py"]
line-length = 120
target-version = "py311"
[tool.ruff.lint]
select = ["I", "E", "W", "D", "PL"]
# ruff configuration
# E, W -- pycodestyle
# D -- pydocstyle
# I -- isort
# PL -- pylint
# Rules considered over other incompatible ones
exclude = ["docs/conf.py", "setup.py"]
ignore = ["D407", "D203", "D213", "D416", "PLR0912", "PLR0911", "PLR0915", "PLR2004"]
# Rules Ignored
# D407 - Ignored because ==== under a section heading is considered as a missing underline.
# pydocstyle considers ----- an underline.
# D212 and D211 specially selected due to following incompatibilities
# warning: `one-blank-line-before-class` (D203) and `no-blank-line-before-class` (D211) are incompatible. Ignoring `one-blank-line-before-class`.
# warning: `multi-line-summary-first-line` (D212) and `multi-line-summary-second-line` (D213) are incompatible. Ignoring `multi-line-summary-second-line`.
# D416 was adding a semicolon after some section headings when ruff's automated --fix was was used
# As this was not added evenly after all section headings, we ignore this.
# PLR0912 -- Checks for functions or methods with too many branches. The default number is 12.
# PLR0911 -- Checks for functions or methods with too many return statements. The default number is 6.
# PLR0915 -- Checks for functions or methods with too many statements. The default number is 50.
# PLR2004 -- Checks if an equality or an inequality is compared to a variable or a num (prefers variable pre)
[tool.ruff.lint.per-file-ignores]
"__init__.py" = ["I001"]
# I001 - skip checking Import block is un-sorted or un-formatted