-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
122 lines (100 loc) · 2.8 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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
[tool.poetry]
name = "sphinx-emf"
# Don't miss updates in docs/conf.py, docs/changelog.rst and sphinx_emf/setup.py when updating
version = "0.2.0"
description = "Connect Sphinx-Needs to EMF models."
authors = ["team useblocks <[email protected]>"]
license = "MIT"
readme = "README.rst"
repository = "http://github.com/useblocks/sphinx-emf"
documentation = "https://sphinx-emf.readthedocs.io/"
classifiers = [
'Development Status :: 4 - Beta',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Topic :: Documentation',
'Topic :: Utilities',
'Framework :: Sphinx :: Extension',
]
packages = [{ include = "sphinx_emf" }]
[tool.poetry.dependencies]
python = ">=3.7.2,<3.11"
click = "^8.1.3"
Jinja2 = "^3.1.2"
pydantic = "^1.8.2"
pyecore = "^0.13"
Sphinx = ">=4.0"
sphinx-needs = "^1.0.2"
sphinxcontrib-plantuml = "^0.24" # needed as it is no dependency of sphinx-needs (but still mandatory)
typing-extensions = "^4.4.0"
[tool.poetry.group.dev.dependencies]
pre-commit = "^2"
# test
nox = "^2022.8.7"
nox-poetry = "^1.0.1"
pytest = "^7"
pytest-xdist = "*" # parallelisation
# mypy
docutils-stubs = "^0.0.22"
mypy = "^0.960"
types-setuptools = "^57.4.14"
# formatting
black = "^22.3"
isort = "^5.7.0"
# linting
bandit = "^1.7.4"
prospector = "1.7.7"
pylint = "^2.15.3"
pyroma = "^4.0"
vulture = "^2.6"
[tool.poetry.group.docs.dependencies]
esbonio = { version = "^0.14.1", optional = true }
sphinx-immaterial = "^0.10.0"
sphinx_design = "^0.3.0"
sphinxcontrib-programoutput = "^0.17"
autodoc-pydantic = "^1.8.0"
[tool.poetry.extras]
docs = ["esbonio", "sphinx-rtd-theme"]
[tool.poetry.scripts]
sphinx-emf-cli = "sphinx_emf.cli:run"
[tool.pytest.ini_options]
asyncio_mode = "auto"
[tool.vulture]
# currently ignored by prospector, see https://github.com/PyCQA/prospector/issues/505
paths = ["coon_and_friends", "docs", "tests"]
exclude = ["docs/conf.py"]
[tool.black]
line-length = 120
preview = true
[tool.isort]
profile = "black"
multi_line_output = 3
line_length = 120
force_sort_within_sections = true
sort_relative_in_force_sorted_sections = true
lines_after_imports = 2
[tool.bandit]
[tool.mypy]
strict = false
show_error_codes = true
implicit_reexport = true
files = "sphinx_emf"
ignore_missing_imports = true
namespace_packages = true
[[tool.mypy.overrides]]
# any module that should be ignored by mypy
module = []
ignore_errors = true
[build-system]
requires = [
"setuptools",
"poetry_core>=1.0.8",
] # setuptools for deps like plantuml
build-backend = "poetry.core.masonry.api"