[project]
name = "olc"
version = "0.1.0"
description = "Overload Control Library"
authors = [
    { name = "Your Name", email = "you@example.com" }
]
requires-python = ">=3.11"
# 基础功能依赖
dependencies = [
    "cacheout (>=0.16.0)",
    "blinker (>=1.9.0)",
    "schedule (>=1.2.2)"
]

[project.optional-dependencies]
# 适配fastapi框架依赖
fastapi = [
    "fastapi (>=0.100.0)",
    "starlette (>=0.27.0)",
]

# 默认集群流控redis依赖
redis = [
    "redis (>=5.1.0,<8)"
]

# 默认远程访问依赖
requests = [
    "requests (>=2.31.0)",
]
# 默认加解密依赖
cryptography = [
    "cryptography (>=48.0.0)",
]

all = [
    "redis (>=5.1.0)",
    "requests (>=2.31.0)",
    "cryptography (>=48.0.0)",
]

[build-system]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"

[tool.black]
target-version = ["py311"]