[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "surugaya-common" version = "0.1.0" description = "Shared contracts (Redis keys, future models) for jp_surugaya services" requires-python = ">=3.12" dependencies = [ "pydantic>=2.0.0,<3.0.0", "redis==8.0.0", ] # playwright 仅作为可选 extra:只有解析器/浏览器工具需要它,核心安装保持 light。 # 范围取 jp_surugaya(>=1.54,<2) 与 worker(>=1.43) 的交集,确保 workspace 解析到单一 playwright。 [project.optional-dependencies] browser = ["playwright>=1.54.0,<2.0.0"] [tool.hatch.build.targets.wheel] packages = ["src/surugaya_common"] # 保持 surugaya_common core 轻量:仅 stdlib + pydantic + redis(==8.0.0,与 API 和 worker 对齐)。 # playwright 只允许出现在上面的 [browser] extra 中,core 安装绝不引入。 # 不要在此加入 fastapi/opencv/numpy/pyautogui/pillow。