-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathpyproject.toml
114 lines (90 loc) · 2.26 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
[build-system]
requires = ['poetry-core>=1.2.0', 'wheel',]
build-backend = 'poetry.core.masonry.api'
[tool.poetry]
name = 'trestlebot'
version = "0.11.0"
description = "trestle-bot assists users in leveraging Compliance-Trestle in automated workflows of for OSCAL formatted compliance content management."
authors = ["Jennifer Power <[email protected]>",]
include = ['LICENSE']
exclude = ['tests/', 'docs/']
license = 'Apache-2.0'
readme = 'README.md'
repository = 'https://github.com/RedHatProductSecurity/trestle-bot'
[tool.poetry.scripts]
trestlebot = "trestlebot.cli.root:root_cmd"
[tool.poetry.dependencies]
python = '^3.8.1'
gitpython = "^3.1.41"
compliance-trestle = "^3.5.0"
github3-py = "^4.0.1"
python-gitlab = "^4.2.0"
ruamel-yaml = "^0.18.5"
pydantic = "^2.0.0"
ssg = {git = "https://github.com/ComplianceasCode/content"}
[tool.poetry.group.dev]
optional = true
[tool.poetry.group.dev.dependencies]
flake8 = "^7.0.0"
black = "^24.3.0"
mypy = "^1.11.0"
isort = "^5.13.2"
safety = "^3.2.8"
flake8-print = "^5.0.0"
pre-commit = "^3.4.0"
mkdocs-material = "^9.5.43"
markdown-include = "^0.8.1"
types-pyyaml = "^6.0.12.20240917"
[tool.poetry.group.tests]
optional = true
[tool.poetry.group.tests.dependencies]
pytest = "^8.3.2"
pytest-cov = "^5.0.0"
pytest-skip-slow = "^0.0.5"
responses = "^0.25.0"
[tool.poetry.group.plugins]
optional = true
[tool.poetry.group.plugins.dependencies]
compliance-trestle-fedramp = "^0.4.0"
[tool.coverage.run]
branch = true
relative_files = true
omit = [
'tests/*',
]
[tool.pytest.ini_options]
minversion = '6.0'
addopts = """
--doctest-modules \
--cov=./ \
--cov-append \
--cov-report html:tests/reports/coverage-html \
--cov-report xml:tests/reports/coverage.xml \
--ignore=docs/
"""
testpaths = [
'tests',
]
[tool.mypy]
plugins = [
"pydantic.mypy"
]
follow_imports = "skip"
warn_redundant_casts = true
disallow_any_generics = true
check_untyped_defs = true
no_implicit_reexport = true
disallow_untyped_defs = true
[tool.pydantic-mypy]
init_forbid_extra = true
init_typed = true
warn_required_dynamic_aliases = true
[[tool.mypy.overrides]]
module = "github3.*"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "ruamel"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "ssg.products"
ignore_missing_imports = true