-
Notifications
You must be signed in to change notification settings - Fork 47
/
pyproject.toml
118 lines (107 loc) · 2.67 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
[tool.poetry]
name = "karmabot"
version = "3.2.0"
authors = ["PyBites <[email protected]>", "Patrick-Oliver Groß <[email protected]>"]
classifiers = [
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Communications :: Chat",
]
description = "PyBites Karmabot - A Python based Slack Chatbot for Community interaction"
homepage = "https://github.com/PyBites-Open-Source/karmabot"
keywords = ["karmabot"]
license = "MIT"
maintainers = ["Patrick-Oliver Groß <[email protected]>"]
readme = "README.md"
repository = "https://github.com/PyBites-Open-Source/karmabot"
[tool.poetry.dependencies]
SQLAlchemy = "^2.0.1"
feedparser = "^6.0.10"
freezegun = "^1.2.2"
humanize = "^4.5.0"
importlib-metadata = "^3.7.3"
psycopg2-binary = "^2.9.5"
pyjokes = "^0.6.0"
python = "^3.10"
python-dotenv = "^0.21.1"
requests = "^2.31.0"
slack-bolt = "^1.6.1"
slack-sdk = "^3.7.0"
[tool.poetry.scripts]
karmabot = "karmabot.main:main"
[tool.poetry.group.dev.dependencies]
black = "24.3.0"
codecov = "^2.1.13"
coverage = {extras = ["toml"], version = "^7.2.1"}
flake8 = "^6.0.0"
flake8-bandit = "^4.1.1"
flake8-blind-except = "^0.2.1"
flake8-bugbear = "^23.1.20"
flake8-builtins = "^2.1.0"
flake8-debugger = "^4.1.2"
flake8-logging-format = "^0.9.0"
flake8-use-fstring = "^1.4"
isort = "^5.12.0"
mypy = "^0.991"
nox = "^2022.11.21"
pre-commit = "^3.0.3"
pytest = "^7.2.1"
pytest-cov = "^4.0.0"
pytest-mock = "^3.10.0"
safety = "^2.3.5"
[tool.coverage.paths]
source = ["src", "*/site-packages"]
[tool.coverage.run]
branch = true
omit = [
"src/karmabot/__main__.py",
"src/karmabot/__init__.py",
"src/karmabot/main.py",
"src/karmabot/db/__all_models.py",
"src/karmabot/db/modelsbase.py",
]
source = ["karmabot"]
[tool.coverage.report]
show_missing = true
[tool.black]
exclude = '''
(
/(
\.eggs # exclude a few common directories in the
| \.git # root of the project
| \.hg
| \.mypy_cache
| \.nox
| \.venv
| _build
| buck-out
| build
| dist
)
)
'''
include = '\.pyi?$'
line-length = 88
target-version = ["py310", "py311"]
[tool.isort]
known_third_party = "dotenv,feedparser,humanize,pyjokes,pytest,requests,sqlalchemy,freezegun,slack_bolt,slack_sdk"
profile = "black"
[tool.mypy]
ignore_missing_imports = true
mypy_path = "src,tests"
pretty = true
show_column_numbers = true
show_error_codes = true
show_error_context = true
[[tool.mypy.overrides]]
ignore_missing_imports = true
module = [
"freezegun",
"requests",
]
[build-system]
build-backend = "poetry.core.masonry.api"
requires = ["poetry_core"]