forked from Exa-Networks/exabgp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
129 lines (115 loc) · 3.21 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
123
124
125
126
127
128
129
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = 'exabgp'
version = '5.0.0'
description = 'BGP swiss army knife'
authors = [
'Thomas Mangin <[email protected]>'
]
readme = 'README.md'
repository = 'https://github.com/exa-networks/exabgp'
homepage = 'https://github.com/exa-networks/exabgp'
documentation = 'https://github.com/Exa-Networks/exabgp/wiki'
license = 'BSD-3-Clause'
keywords = ['bgp', 'ddos-protection', 'health-check', 'flowspec', 'bgp-ls', 'mpls', 'vpls']
classifiers = [
'Development Status :: 5 - Production/Stable',
'Environment :: Console',
'Intended Audience :: System Administrators',
'Intended Audience :: Telecommunications Industry',
'License :: OSI Approved :: BSD License',
'Operating System :: POSIX',
'Operating System :: MacOS :: MacOS X',
'Programming Language :: Python',
'Programming Language :: Python :: 3.7',
'Topic :: Internet',
]
include = ["*.txt", "*.rst"]
# packages = [
# { include = "my_package" },
# { include = "my_other_package", format = "sdist" },
# ]
# include = ["CHANGELOG.md"]
# exclude = ["my_package/excluded.py"]
# [[tool.poetry.source]]
# name = 'private'
# url = 'http://example.com/simple'
[tool.poetry.dependencies]
python = "~3.6 || ~3.7 || ^3.8" # Compatible python versions must be declared here
pyang = "^2.4.0"
pyangbind = {git = "https://github.com/ahmet2mir/pyangbind.git"} # https://github.com/robshakir/pyangbind/pull/233/files
pygments-yang-lexer = "^0.2"
# Optional dependencies (development)
[tool.poetry.dev-dependencies]
bandit = "^1.7.0"
black = "^20.8b1"
coverage = "^5.4"
coveralls = "^2.1.2"
dephell = "^0.8.3"
flake8 = "^3.8.3"
flake8-bugbear = "^20.11.1"
flakehell = "^0.9.0"
isort = "^5.7.0"
nose = "^1.3.7"
pex = { version="^2.1.28", python = ">=3.6,<3.10" }
psutil = "^5.7.2"
pudb = "^2019.2"
pytest = "^6.2.2"
wheel = "^0.35.1"
[tool.poetry.scripts]
exabgp = 'exabgp.application.main:main'
exabgpcli = 'exabgp.application.cli:main'
exabgp-cli = 'exabgp.application.cli:main'
exabgp-healthcheck = 'exabgp.application.healthcheck:main'
[tool.black]
line-length = 120
target-version = ['py36', 'py37', 'py38']
skip_string_normalization = '1'
include = '\.pyi?$'
exclude = '''
/(
\.eggs
| \.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
| tests/data
)/
'''
[tool.flakehell]
max-line-length = 120
show-source = true
format = "grouped"
[tool.flakehell.plugins]
pyflakes = ["+*", "-F401"]
flake8-bandit = ["-*", "+S1??"]
"flake8-*" = ["+*"]
flake8-docstrings = ["-*"]
[tool.dephell.main]
from = 'poetry'
to = 'requirements.txt'
[flake8]
max-line-length = 120
show-source = true
max-complexity = 18
statistics = true
exclude = '.git,.tox,__pycache__,build,dist,tests/*,lib/exabgp/vendoring/*,'
select = 'B,C,E,F,W,T4,B9'
# E222 multiple spaces after operator
# E231 missing whitespace after ','
# E241 multiple spaces after ':'
# E131 continuation line unaligned for hanging indent
# the last , is required otherwise the last error ignore is not applied
ignore = 'E222,E231,E241,E131,E203,E266,E501,W503,F403,F401,'
variable-rgx = "[a-z_][a-z0-9_]{0,30}$"
# pycodestyle (formerly called pep8)
[pycodestyle]
max_line_length = 120
ignore = 'W191'