Skip to content

Commit 2b5743a

Browse files
committed
Add Poetry file
1 parent 31f1a85 commit 2b5743a

File tree

1 file changed

+182
-0
lines changed

1 file changed

+182
-0
lines changed

pyproject.toml

Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
[tool.poetry]
2+
name = "python3-saml"
3+
version = "1.15.0"
4+
description = "Saml Python Toolkit. Add SAML support to your Python software using this library"
5+
license = "Apache-2.0"
6+
authors = ["SAML-Toolkits <contact@iamdigitalservices.com>"]
7+
maintainers = ["Sixto Martin <sixto.martin.garcia@gmail.com>"]
8+
readme = "README.md"
9+
homepage = "https://saml.info"
10+
repository = "https://github.com/SAML-Toolkits/python3-saml"
11+
documentation = "https://pysaml2.readthedocs.io"
12+
keywords = [
13+
"saml",
14+
"saml2",
15+
"sso",
16+
"xmlsec",
17+
"federation",
18+
"identity",
19+
]
20+
classifiers = [
21+
"Topic :: Software Development :: Build Tools",
22+
"Topic :: Software Development :: Libraries :: Python Modules",
23+
]
24+
packages = [
25+
{ include = "onelogin", from = "src" },
26+
{ include = "onelogin/saml2", from = "src" },
27+
]
28+
29+
include = [
30+
{ path = "src/onelogin/saml2/schemas"},
31+
{ path = "tests", format = "sdist" }
32+
]
33+
34+
[tool.poetry.urls]
35+
"Bug Tracker" = "https://github.com/SAML-Toolkits/python3-saml/issues"
36+
37+
[tool.poetry.dependencies]
38+
python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
39+
lxml = ">=4.6.5, !=4.7.0"
40+
xmlsec = ">=1.3.9"
41+
isodate = ">=0.6.1"
42+
43+
#[tool.poetry.group.dev]
44+
#optional = true
45+
46+
#[tool.poetry.group.dev.dependencies]
47+
#black = "*"
48+
#isort = {version = "^5.10.1", extras = ["pyproject"]}
49+
flake8 = { version = ">=3.6.0, <=5.0.0", optional = true}
50+
#Flake8-pyproject = "^1.1.0.post0"
51+
#flake8-bugbear = "^22.8.23"
52+
#flake8-logging-format = "^0.7.5"
53+
ipdb = { version = "^0.13.9", optional = true}
54+
#[tool.poetry.group.test.dependencies]
55+
freezegun= { version = ">=0.3.11, <=1.1.0", optional = true}
56+
pytest = { version = ">=4.6.11", optional = true}
57+
coverage = { version = ">=4.5.2", optional = true}
58+
#pylint = ">=1.9.4"
59+
60+
[tool.poetry.extras]
61+
test = ["flake8", "ipdb", "freezegun", "pytest", "coverage"]
62+
63+
#[tool.poetry.group.test]
64+
#optional = true
65+
66+
#[tool.poetry.group.coverage]
67+
#optional = true
68+
69+
#[tool.poetry.group.coverage.dependencies]
70+
#coverage = ">=4.5.2"
71+
#pytest-cov = "*"
72+
73+
#[tool.poetry.group.docs]
74+
#optional = true
75+
76+
#[tool.poetry.group.docs.dependencies]
77+
#sphinx = "*"
78+
79+
[build-system]
80+
requires = ["poetry>=1.1.15"]
81+
build-backend = "poetry.core.masonry.api"
82+
83+
[tool.pytest.ini_options]
84+
minversion = "4.6.11"
85+
addopts = "-ra -vvv"
86+
testpaths = [
87+
"tests",
88+
]
89+
pythonpath = [
90+
"tests",
91+
]
92+
93+
[tool.coverage.run]
94+
branch = true
95+
source = ["src/onelogin/saml2"]
96+
ignore_errors = true
97+
98+
[tool.coverage.report]
99+
exclude_lines = [
100+
"pragma: no cover",
101+
"def __repr__",
102+
"def __str__",
103+
"raise AssertionError",
104+
"raise NotImplementedError",
105+
"if __name__ == .__main__.:",
106+
"if TYPE_CHECKING:",
107+
"if typing.TYPE_CHECKING:",
108+
]
109+
110+
[tool.coverage.html]
111+
directory = "cov_html"
112+
113+
[tool.flake8]
114+
max-line-length = 210
115+
max-complexity = 22
116+
count = true
117+
show-source = true
118+
statistics = true
119+
disable-noqa = false
120+
# 'ignore' defaults to: E121,E123,E126,E226,E24,E704,W503,W504
121+
extend-ignore = [
122+
'B904',
123+
'B006',
124+
'B950',
125+
'B017',
126+
'C901',
127+
'E501',
128+
'E731',
129+
]
130+
per-file-ignores = [
131+
'__init__.py:F401',
132+
]
133+
# 'select' defaults to: E,F,W,C90
134+
extend-select = [
135+
# * Default warnings reported by flake8-bugbear (B) -
136+
# https://github.com/PyCQA/flake8-bugbear#list-of-warnings
137+
'B',
138+
# * The B950 flake8-bugbear opinionated warnings -
139+
# https://github.com/PyCQA/flake8-bugbear#opinionated-warnings
140+
'B9',
141+
]
142+
extend-exclude = [
143+
'.github', '.gitlab',
144+
'.Python', '.*.pyc', '.*.pyo', '.*.pyd', '.*.py.class', '*.egg-info',
145+
'venv*', '.venv*', '.*_cache',
146+
'lib', 'lib64', '.*.so',
147+
'build', 'dist', 'sdist', 'wheels',
148+
]
149+
150+
[tool.black]
151+
line-length = 200
152+
extend-exclude = '''
153+
# A regex preceded with ^/ will apply only to files and directories
154+
# in the root of the project.
155+
(
156+
\.pytest_cache
157+
)
158+
'''
159+
160+
[tool.isort]
161+
profile = 'black'
162+
# The 'black' profile means:
163+
# multi_line_output = 3
164+
# include_trailing_comma = true
165+
# force_grid_wrap = 0
166+
# use_parentheses = true
167+
# ensure_newline_before_comments = true
168+
# line_length = 88
169+
line_length = 200 # override black provile line_length
170+
force_single_line = true # override black profile multi_line_output
171+
star_first = true
172+
group_by_package = true
173+
force_sort_within_sections = true
174+
lines_after_imports = 2
175+
honor_noqa = true
176+
atomic = true
177+
ignore_comments = true
178+
skip_gitignore = true
179+
src_paths = [
180+
'src',
181+
'tests',
182+
]

0 commit comments

Comments
 (0)