From 68655b58f49e74b4e4d594fcd661d459873af185 Mon Sep 17 00:00:00 2001 From: OpenClaw Bot Date: Tue, 17 Feb 2026 18:17:26 +0800 Subject: [PATCH] refactor: use uv for dependency management --- Dockerfile | 11 ++++++++--- backend/pyproject.toml | 31 +++++++++++++++++++++++++++++++ backend/requirements.txt | 9 --------- 3 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 backend/pyproject.toml delete mode 100644 backend/requirements.txt diff --git a/Dockerfile b/Dockerfile index 18b1e4e..06fb3b7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,14 +2,19 @@ FROM python:3.11-slim WORKDIR /app +# Install uv +RUN pip install uv + # Install system deps RUN apt-get update && apt-get install -y \ ffmpeg \ && rm -rf /var/lib/apt/lists/* -# Install Python deps -COPY backend/requirements.txt . -RUN pip install --no-cache-dir -r requirements.txt +# Copy project files +COPY backend/pyproject.toml backend/requirements.txt ./ + +# Install dependencies using uv +RUN uv pip install --system -r requirements.txt # Copy code COPY backend/ ./backend/ diff --git a/backend/pyproject.toml b/backend/pyproject.toml new file mode 100644 index 0000000..f5cc122 --- /dev/null +++ b/backend/pyproject.toml @@ -0,0 +1,31 @@ +[project] +name = "insightflow-backend" +version = "0.3.0" +description = "InsightFlow Backend - Knowledge Graph Platform" +requires-python = ">=3.11" +dependencies = [ + "fastapi>=0.115.0", + "uvicorn[standard]>=0.32.0", + "python-multipart>=0.0.17", + "oss2>=2.18.6", + "alibabacloud-tea-openapi>=0.3.12", + "alibabacloud-tingwu20230930>=2.0.2", + "httpx>=0.27.2", + "pydantic>=2.9.2", + "python-dotenv>=1.0.1", +] + +[project.optional-dependencies] +dev = [ + "pytest>=8.0.0", + "black>=24.0.0", + "ruff>=0.3.0", +] + +[tool.black] +line-length = 100 +target-version = ['py311'] + +[tool.ruff] +line-length = 100 +select = ["E", "F", "I"] diff --git a/backend/requirements.txt b/backend/requirements.txt deleted file mode 100644 index 8a12786..0000000 --- a/backend/requirements.txt +++ /dev/null @@ -1,9 +0,0 @@ -fastapi==0.115.0 -uvicorn[standard]==0.32.0 -python-multipart==0.0.17 -oss2==2.18.6 -alibabacloud-tea-openapi==0.3.12 -alibabacloud-tingwu20230930==2.0.2 -httpx==0.27.2 -pydantic==2.9.2 -python-dotenv==1.0.1