-
Notifications
You must be signed in to change notification settings - Fork 4
/
pyproject.toml
119 lines (109 loc) · 2.83 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
[tool.poetry]
name = "connect-extension-runner"
version = "0.0.0"
description = "CloudBlue Connect EaaS Extension Runner"
authors = ["CloudBlue LLC"]
license = "Apache-2.0"
packages = [
{ include = "connect" },
]
readme = "./README.md"
homepage = "https://connect.cloudblue.com"
repository = "https://github.com/cloudblue/connect-extension-runner"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Operating System :: OS Independent",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Utilities",
"Topic :: Software Development :: Libraries",
]
[tool.poetry.scripts]
cextrun = 'connect.eaas.runner.main:main'
[tool.poetry.dependencies]
python = ">=3.9,<4"
websockets = "13.*"
connect-openapi-client = ">=29.0,<30"
logzio-python-handler = "^4.1.4"
backoff = "^2.2.1"
connect-eaas-core = ">=33.0,<34"
httpx = ">=0.23,<1"
rich = ">=12"
pyfiglet = "^1.0.2"
devtools = "^0.12.2"
watchfiles = "^0.24"
openpyxl = ">=3.0.0,<4"
lxml = "^4.9.2"
uvloop = "^0.20"
python-socks = {extras = ["asyncio"], version = "^2.5.1"}
[tool.poetry.group.test.dependencies]
pytest = "^8.3"
pytest-cov = "^4.0.0"
pytest-mock = "^3.3.1"
pytest-randomly = "^3.12.0"
coverage = {extras = ["toml"], version = "^5.3"}
flake8 = "^7"
flake8-bugbear = "^22"
flake8-cognitive-complexity = "^0.1"
flake8-commas = "^4.0"
flake8-future-import = "~0.4"
flake8-broken-line = "^1"
flake8-pyproject = "^1.2"
pytest-asyncio = "0.20.*"
pytest-httpx = ">=0.20"
responses = "^0.23.0"
freezegun = "^1.5.1"
flaky = "^3.8"
flake8-isort = "^6.0.0"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.flake8]
exclude = [
".idea",
".vscode",
".git",
"pg_data",
"venv",
"*/settings/*.py",
"*/migrations/*.py"
]
show-source = true
max-line-length = 100
max-cognitive-complexity = 20
ignore = ["FI1", "I100", "W503"]
[tool.coverage.run]
branch = true
[tool.coverage.report]
omit = [
"connect/eaas/runner/constants.py",
"connect/eaas/dataclasses.py",
"connect/eaas/extension.py"
]
exclude_lines = [
"raise NotImplementedError",
"pragma: no cover",
"pragma: no branch"
]
[tool.pytest.ini_options]
testpaths = ["tests"]
log_cli = false
addopts = "-v --cov=connect.eaas.runner --cov-report=term-missing:skip-covered --cov-report=html --cov-report=xml"
python_files = "test_*.py"
junit_family = "xunit2"
asyncio_mode = "strict"
[tool.isort]
src_paths = "*"
sections = ["FUTURE", "STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
known_first_party = ["connect"]
group_by_package = true
multi_line_output = 3
force_grid_wrap = 1
combine_as_imports = true
use_parentheses = true
include_trailing_comma = true
line_length = 100
lines_after_imports = 2