Files
Edu/services/data-ana/pyproject.toml
SpecialX ca3780aa24 feat(data-ana): 完整实现 data-ana 数据分析服务
包含 CDC consumer、analytics/mastery/warning service、grpc server、repository、ClickHouse DDL 等
2026-07-10 19:09:27 +08:00

41 lines
1.3 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[project]
name = "data-ana-service"
version = "1.0.0"
description = "数据分析服务 - ClickHouse 宽表 + CDC + 掌握度算法 + 预警"
requires-python = ">=3.12"
dependencies = [
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"clickhouse-connect>=0.7.0",
"pydantic>=2.9.0",
"pydantic-settings>=2.5.0",
"opentelemetry-api>=1.27.0",
"opentelemetry-sdk>=1.27.0",
"opentelemetry-exporter-otlp>=1.27.0",
"opentelemetry-instrumentation-fastapi>=0.48b0",
"prometheus-client>=0.20.0",
"structlog>=24.4.0",
# CDC 链路:消费 Debezium 写入 Kafka 的 MySQL binlog 变更事件
"aiokafka>=0.11.0",
# RedisDataScope 缓存 + 事件去重 + 预警去重位图
"redis>=5.0.0",
# gRPCAnalyticsService 12 RPC + HealthService端口 50055
"grpcio>=1.66.0",
"grpcio-health-checking>=1.66.0",
# protobuf 运行时buf generate 生成的 stub 依赖)
"protobuf>=5.28.0",
]
[tool.ruff]
line-length = 100
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "UP", "B", "SIM"]
[tool.ruff.lint.per-file-ignores]
# gRPC servicer 方法必须用 PascalCaseproto 契约约定N802 不适用
"src/data_ana/grpc_server.py" = ["N802"]
# FastAPI 标准模式Depends/Query 在参数默认值中调用B008 不适用
"src/data_ana/main.py" = ["B008"]