Some checks are pending
ci/woodpecker/push/woodpecker Pipeline is running
CI test step in pipelines #41/#43/#44 (commitsdb103df,06ede26,552f5a1) failed during collection with ModuleNotFoundError: fakeredis on test_blocklist.py, test_cursor.py, test_risk_counters.py. The bridge tests use fakeredis.aioredis to mock Redis but the dep wasn't pinned in pyproject. Locally it was installed manually, so 67 kevin tests pass via .venv but CI never installed it. Unblocks the trading-bot-service rebuild that should ship the PositionInfo.ticker fix the bridge pod is crash-looping on, and also unblocks the dashboard rebuild (last pushed 2026-02-25, so none of the Meet Kevin UI is live yet).
45 lines
1.4 KiB
TOML
45 lines
1.4 KiB
TOML
[project]
|
|
name = "trading-bot"
|
|
version = "0.1.0"
|
|
requires-python = ">=3.12"
|
|
dependencies = [
|
|
"sqlalchemy[asyncio]>=2.0",
|
|
"asyncpg>=0.29",
|
|
"redis>=5.0",
|
|
"pydantic>=2.0",
|
|
"pydantic-settings>=2.0",
|
|
"opentelemetry-sdk>=1.20",
|
|
"opentelemetry-exporter-prometheus>=0.45b",
|
|
"opentelemetry-api>=1.20",
|
|
"alembic>=1.13",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
api = ["fastapi>=0.110", "uvicorn[standard]>=0.27", "websockets>=12.0", "webauthn>=2.0", "pyjwt[crypto]>=2.8", "alpaca-py>=0.21"]
|
|
news = ["feedparser>=6.0", "praw>=7.7", "asyncpraw>=7.7", "httpx>=0.27"]
|
|
sentiment = ["transformers>=4.38", "torch>=2.2", "ollama>=0.1"]
|
|
trading = ["alpaca-py>=0.21", "pytz>=2024.1", "yfinance>=0.2", "httpx>=0.27"]
|
|
backtester = ["numpy>=1.26", "pandas>=2.2"]
|
|
meet_kevin = ["yt-dlp>=2025.12", "feedparser>=6.0", "anthropic>=0.40", "httpx>=0.27"]
|
|
dev = ["pytest>=8.0", "pytest-asyncio>=0.23", "pytest-cov>=4.1", "ruff>=0.3", "mypy>=1.8", "httpx>=0.27", "fakeredis>=2.20"]
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=70.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.setuptools.packages.find]
|
|
include = ["shared*", "services*", "backtester*", "scripts*", "tests*"]
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|
|
testpaths = ["tests"]
|
|
markers = ["integration: marks tests requiring docker services (redis, postgres)"]
|
|
|
|
[tool.ruff]
|
|
line-length = 120
|
|
target-version = "py312"
|
|
|
|
[tool.mypy]
|
|
python_version = "3.12"
|
|
warn_return_any = true
|
|
warn_unused_configs = true
|