This repository has been archived by the owner on May 11, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
105 lines (92 loc) · 2.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
[tool.poetry]
name = "opime-notify"
version = "1.0.2"
description = "Wotaku tools for opime"
authors = ["KAWAI Shun <[email protected]>"]
license = "MIT"
packages = [
{ include = "opime_notify", from = "src/" },
]
include = [
"src/opime_notify/py.typed"
]
[tool.poetry.dependencies]
python = "^3.9"
python-dotenv = "^0.19.2"
click = "^8.0.4"
line-bot-sdk = "^2.1.0"
rich = "^11.2.0"
beautifulsoup4 = "^4.10.0"
gspread = "^5.2.0"
oauth2client = "^4.1.3"
[tool.poetry.dev-dependencies]
flake8 = "^4.0.1"
pyproject-flake8 = "^0.0.1-alpha.2"
black = "^22.1.0"
mypy = "^0.931"
pre-commit = "^2.17.0"
poethepoet = "^0.13.1"
isort = "^5.10.1"
pytest = "^7.0.1"
pytest-cov = "^3.0.0"
autoflake = "^1.4"
types-requests = "^2.27.11"
types-beautifulsoup4 = "^4.10.14"
requests-mock = "^1.9.3"
[tool.poetry.scripts]
opime-notify = "opime_notify.main:cli"
opime-notify-realtime = "opime_notify.main:realtime"
send-line = "opime_notify.cli.send_line:cli"
fetch-schedule = "opime_notify.cli.fetch_schedule:cli"
[tool.poe.tasks.test]
cmd = "pytest --cov=src/ --cov-report=html --cov-report=term --cov-report=xml $target"
args = [
{ name="target", default="tests/", options=["-t", "--target"], help="target directory"}
]
help = "run test"
[tool.poe.tasks.realtest]
cmd = "pytest --cov=src/ --cov-report=html -m LINE tests/"
[tool.poe.tasks.lint]
sequence = [
{ cmd = "pflake8 src/ tests/" },
{ cmd = "mypy src/" },
]
ignore_fail = "return_non_zero"
help = "run lint"
[tool.poe.tasks.format]
sequence = [
{ cmd = "autoflake -ir --remove-all-unused-imports --ignore-init-module-imports src/ tests/" },
{ cmd = "isort src/ tests/" },
{ cmd = "black src/ tests/" },
"lint"
]
help = "run formatter"
[tool.flake8]
max-line-length = 88
max-complexity = 10
[tool.isort]
profile = "black"
[tool.mypy]
python_version = 3.9
[[tool.mypy.overrides]]
module = [
"linebot",
"linebot.models",
"linebot.exceptions",
"gspread",
"gspread.utils",
"gspread.exceptions",
"oauth2client.service_account"
]
ignore_missing_imports = true
[tool.pytest.ini_options]
addopts = [
"-m", "not LINE",
"--strict-markers"
]
markers = [
"LINE: mark test as send LINE Message"
]
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"