-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
28 lines (24 loc) · 954 Bytes
/
Copy pathpyproject.toml
File metadata and controls
28 lines (24 loc) · 954 Bytes
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
[project]
name = "shortube"
version = "1.0.0"
description = "AI-Powered YouTube Shorts Studio — desktop app"
requires-python = ">=3.11"
[tool.pytest.ini_options]
testpaths = ["tests"]
markers = [
"e2e: end-to-end smoke tests running a real Remotion render (requires Node.js; gated by SHORTUBE_E2E=1)",
"network: tests requiring live network/API access",
]
[tool.ruff]
line-length = 100
target-version = "py311"
exclude = ["remotion", ".opencode"]
[tool.ruff.lint]
# ASYNC230 (blocking calls in async functions) is still deferred for
# shortube/voice.py — see the per-file ignore below.
select = ["E", "F", "I", "UP", "SIM", "B", "DTZ", "PIE", "PLW1510", "S110", "F841", "PERF402", "ASYNC230", "BLE001"]
ignore = ["E501"]
[tool.ruff.lint.per-file-ignores]
# voice.py still runs file I/O inside its async generation path; fixing it
# requires an async-safe rewrite of that function (tracked as an issue).
"shortube/voice.py" = ["ASYNC230"]