-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathpyproject.toml
More file actions
82 lines (73 loc) · 1.82 KB
/
Copy pathpyproject.toml
File metadata and controls
82 lines (73 loc) · 1.82 KB
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
[project]
name = "web-monitor"
version = "2.4.8"
description = "Web任务系统"
requires-python = ">=3.11,<3.12"
dependencies = [
"aiohttp>=3.9.0",
"requests>=2.31.0",
"aiosqlite>=0.19.0",
"aiomysql>=0.3.2",
"pydantic>=2.5.0",
"apscheduler>=3.10.0",
"pyyaml>=6.0.0",
"ruamel.yaml>=0.18.0",
"aiosmtplib>=3.0.0",
"fastapi>=0.104.0",
"uvicorn[standard]>=0.24.0",
"jinja2>=3.1.0",
"python-multipart>=0.0.6",
"itsdangerous>=2.1.0",
"beautifulsoup4>=4.12.0",
"certifi>=2024.0.0",
"pillow>=10.0.0",
"rsa>=4.9",
"pycryptodome>=3.19.0",
]
[project.optional-dependencies]
# 浏览器签到依赖:iKuuu、雨云等任务使用(Docker slim 镜像不安装此组)
rainyun = [
"selenium>=4.27.0",
"ddddocr>=1.5.0,<1.6.0",
"opencv-python-headless>=4.8.0",
]
dev = [
"pytest>=7.4.0",
"pytest-asyncio>=0.21.0",
"black>=23.11.0",
"ruff>=0.1.6",
]
docs = [
"mkdocs>=1.5.0",
"mkdocs-material>=9.5.0",
"mkdocs-minify-plugin>=0.8.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src"]
[tool.ruff]
line-length = 100
target-version = "py311"
exclude = [".git", ".venv"]
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "UP"]
ignore = ["E501"]
[tool.ruff.lint.per-file-ignores]
# 监控模块在文件末尾 import register_* 以避免循环依赖
"src/monitors/*.py" = ["E402"]
# 青龙 CLI 需先 import _runner 设置 sys.path
"src/ql/__main__.py" = ["E402"]
# Selenium 常用 expected_conditions as EC 的惯例
"src/tasks/rainyun/**/*.py" = ["N812"]
[tool.black]
line-length = 100
target-version = ["py311"]
[[tool.uv.index]]
name = "aliyun"
url = "https://mirrors.aliyun.com/pypi/simple/"
default = true
[tool.pytest.ini_options]
testpaths = ["src/tests"]
pythonpath = ["."]