1
- [build-system ]
2
- requires = [" setuptools" , " wheel" ]
3
-
4
- [tool .poetry ]
1
+ [project ]
5
2
name = ' exabgp'
6
3
version = ' 5.0.0'
7
4
description = ' BGP swiss army knife'
8
- authors = [
' Thomas Mangin <[email protected] >' ]
9
- readme = ' README.md'
10
- repository = ' https://github.com/exa-networks/exabgp'
11
- homepage = ' https://github.com/exa-networks/exabgp'
12
- documentation = ' https://github.com/Exa-Networks/exabgp/wiki'
13
- license = ' BSD-3-Clause'
5
+ authors = [
6
+ {
name =
" Thomas Mangin" ,
email =
" [email protected] " },
7
+ ]
8
+ license = { 'file' = ' LICENCE.txt' }
9
+ requires-python = " >=3.8.1,<=3.13"
14
10
keywords = [
15
11
' bgp' ,
16
12
' ddos-protection' ,
@@ -32,45 +28,40 @@ classifiers = [
32
28
' Programming Language :: Python :: 3.7' ,
33
29
' Topic :: Internet' ,
34
30
]
35
- include = [" *.txt" , " *.rst" ]
36
-
37
- # [[tool.poetry.source]]
38
- # name = 'private'
39
- # url = 'http://example.com/simple'
40
-
41
- [tool .poetry .dependencies ]
42
- python = " >=3.8.1,<3.13"
43
- # pygments-yang-lexer = "^0.2"
44
- # pyang = "^2.3.2"
45
- # pyangbind="^0.8.1"
46
-
47
- # Optional dependencies (development)
48
- [tool .poetry .dev-dependencies ]
49
- bandit = { version = " ^1.7.4" }
50
- black = { version = " ^24.1" }
51
- coveralls = { version = " ^3.3.1" }
52
- # dephell = { version= "^0.8.3", optional = true }
53
- flake8 = { version = " ^6.0.0" }
54
- flake8-bugbear = { version = " ^22.12.6" }
55
- flakehell = { version = " ^0.9.0" }
56
- isort = { version = " ^5.11.4" }
57
- pex = { version = " ^2.1.120" }
58
- psutil = { version = " ^5.9.4" }
59
- pudb = { version = " ^2024.1" }
60
- pytest = { version = " ^7.2.0" }
61
- pytest-cov = { version = " ^4.0.0" }
62
- wheel = { version = " ^0.38.4" }
63
- mistune = { version = " ^2.0.4" , optional = true }
64
-
65
- [tool .poetry .extras ]
66
- debug = [" pudb" ]
67
- developer = [" pudb" , " flake8" , " coveralls" , " pytest" , " pytest-cov" , " psutil" ]
68
-
69
- [tool .poetry .scripts ]
31
+ readme = ' README.md'
32
+ dependencies = []
33
+
34
+
35
+ [project .urls ]
36
+ Repository = ' https://github.com/exa-networks/exabgp'
37
+ Homepage = ' https://github.com/exa-networks/exabgp'
38
+ Documentation = ' https://github.com/Exa-Networks/exabgp/wiki'
39
+ Issues = " https://github.com/exa-networks/exabgp/issues"
40
+
41
+
42
+ [project .scripts ]
70
43
exabgp = ' exabgp.application.main:main'
71
44
exabgp-cli = ' exabgp.application.cli:main'
72
45
exabgp-healthcheck = ' exabgp.application.healthcheck:main'
73
46
47
+
48
+ [tool .uv ]
49
+ environments = [" sys_platform == 'darwin'" , " sys_platform == 'linux'" ]
50
+ dev-dependencies = [
51
+ " ruff" ,
52
+ " pytest" ,
53
+ " pytest-cov" ,
54
+ " coveralls" ,
55
+ " flake8" ,
56
+ " psutil" ,
57
+ ]
58
+
59
+
60
+ [build-system ]
61
+ requires = [" setuptools" , " wheel" ]
62
+ # include = ["*.txt", "*.rst"]
63
+
64
+
74
65
[tool .ruff ]
75
66
line-length = 120
76
67
@@ -79,61 +70,17 @@ quote-style = "single"
79
70
indent-style = " space"
80
71
docstring-code-format = true
81
72
82
- [tool .black ]
83
- line-length = 120
84
- target-version = [
85
- ' py36' ,
86
- ' py37' ,
87
- ' py38' ,
88
- ' py39' ,
89
- ' py310' ,
90
- ' py311' ,
91
- ' py312' ,
92
- ' py313' ,
93
- ]
94
- skip_string_normalization = ' 1'
95
- include = ' \.pyi?$'
96
- exclude = '''
97
- /(
98
- \.eggs
99
- | \.git
100
- | \.hg
101
- | \.mypy_cache
102
- | \.tox
103
- | \.venv
104
- | _build
105
- | buck-out
106
- | build
107
- | dist
108
- | tests/data
109
- )/
110
- '''
111
-
112
- [tool .flakehell ]
113
- max-line-length = 120
114
- show-source = true
115
-
116
- format = " grouped"
117
-
118
- [tool .flakehell .plugins ]
119
- pyflakes = [" +*" , " -F401" ]
120
- flake8-bandit = [" -*" , " +S1??" ]
121
- "flake8-*" = [" +*" ]
122
- flake8-docstrings = [" -*" ]
123
-
124
- # [tool.dephell.main]
125
- # from = 'poetry'
126
- # to = 'requirements.txt'
127
73
128
- [flake8 ]
74
+ [tool . flake8 ]
129
75
max-line-length = 120
130
76
show-source = true
131
-
132
77
max-complexity = 18
133
78
statistics = true
134
79
exclude = ' .git,.tox,__pycache__,build,dist,tests/*,src/exabgp/vendoring/*,'
135
-
136
80
select = ' B,C,E,F,W,T4,B9'
81
+ variable-rgx = " [a-z_][a-z0-9_]{0,30}$"
82
+ ignore = ' E222,E231,E241,E131,E203,E266,E501,W503,F403,F401,'
83
+
137
84
# E131 continuation line unaligned for hanging indent
138
85
# E203 whitespace before ':'
139
86
# E222 multiple spaces after operator
@@ -146,10 +93,40 @@ select = 'B,C,E,F,W,T4,B9'
146
93
# F401 imported but unused
147
94
# F403
148
95
# the last , is required otherwise the last error ignore is not applied
149
- ignore = ' E222,E231,E241,E131,E203,E266,E501,W503,F403,F401,'
150
- variable-rgx = " [a-z_][a-z0-9_]{0,30}$"
96
+
151
97
152
98
# pycodestyle (formerly called pep8)
153
- [pycodestyle ]
154
- max_line_length = 120
155
- ignore = ' W191'
99
+ # [tool.pycodestyle]
100
+ # max_line_length = 120
101
+ # ignore = 'W191'
102
+
103
+
104
+ # [tool.black]
105
+ # line-length = 120
106
+ # target-version = [
107
+ # 'py36',
108
+ # 'py37',
109
+ # 'py38',
110
+ # 'py39',
111
+ # 'py310',
112
+ # 'py311',
113
+ # 'py312',
114
+ # 'py313',
115
+ # ]
116
+ # skip_string_normalization = '1'
117
+ # include = '\.pyi?$'
118
+ # exclude = '''
119
+ # /(
120
+ # \.eggs
121
+ # | \.git
122
+ # | \.hg
123
+ # | \.mypy_cache
124
+ # | \.tox
125
+ # | \.venv
126
+ # | _build
127
+ # | buck-out
128
+ # | build
129
+ # | dist
130
+ # | tests/data
131
+ # )/
132
+ # '''
0 commit comments