[project] # 宿主项目:骨架(public/)+ 内置插件(src/plugins/)+ 配置(config/)+ 构建配置。 # 网关本体与 chongming-* 工具包都是独立发布的依赖,本文件只声明宿主自己需要的依赖。 name = "{{project_name}}" version = "0.1.0" description = "{{app_name}} — chongming 网关项目" readme = "README.md" requires-python = ">=3.12" dependencies = [ # —— 网关本体(含 fastapi / granian / zenoh / chongming-worker 等传递依赖)—— "chongming-gateway", # —— public 骨架(exe 入口)自己的依赖 —— "granian[reload,uvloop]>=2.8.4", "gunicorn", "httptools", "module-bank", "uvicorn", "uvloop", # 内置插件(src/plugins/)专属依赖写在这下面,并同步 plugins_deps.toml(打包收集清单); # 示例插件无需额外包 ] [dependency-groups] dev = [ "chongming-cli", # build / gen_plugin / gen_models / build_plugin / migrate_plugin "greenlet>=3.5.6", # SQLAlchemy 异步(sqlite/postgres 插件)需要 "nuitka[onefile]", # Nuitka 打包(onefile extra 带 zstandard 压缩) "patchelf; sys_platform == 'linux'", # Nuitka standalone/onefile 在 Linux 必需 "pyarmor", # --encrypt 时的混淆 "pyinstaller", "ruff", ] [tool.uv] # 宿主项目自身不出包(无 Python 包),uv sync 只装依赖与 dev 工具 package = false # 需要本地联调 chongming-gateway 源码时取消注释(路径指向网关源码目录), # 联调结束恢复按发布版依赖并 uv lock --upgrade-package chongming-gateway: # [tool.uv.sources] # chongming-gateway = { path = "../chongming-zenoh/utils/gateway", editable = true } [[tool.uv.index]] url = "http://124.71.68.6:3000/api/packages/chongming/pypi/simple/" [[tool.uv.index]] url = "https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple"