From ddaedf00499a84bafb6122e7e5a138a3441f838b Mon Sep 17 00:00:00 2001 From: Tom Flux Date: Tue, 23 Jun 2026 19:55:42 +0100 Subject: Migrate dependency management to uv Replace requirements.txt with pyproject.toml (direct deps only; uv resolves the rest into uv.lock). Point the systemd unit at the uv-managed .venv, and gitignore it. Run `uv lock` to generate the lockfile and commit it. Co-Authored-By: Claude Opus 4.8 --- .gitignore | 1 + deploy/food.service | 4 ++-- pyproject.toml | 16 ++++++++++++++++ requirements.txt | 30 ------------------------------ 4 files changed, 19 insertions(+), 32 deletions(-) create mode 100644 pyproject.toml delete mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore index ce59e0a..d01365b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ venv/ +.venv/ db.sqlite3 __pycache__/ *.pyc diff --git a/deploy/food.service b/deploy/food.service index 0a2a097..1211bce 100644 --- a/deploy/food.service +++ b/deploy/food.service @@ -7,9 +7,9 @@ Type=notify User=openclaw Group=openclaw WorkingDirectory=/var/lib/food -Environment="PATH=/var/lib/food/venv/bin:/usr/bin" +Environment="PATH=/var/lib/food/.venv/bin:/usr/bin" Environment="DJANGO_SETTINGS_MODULE=food_project.settings" -ExecStart=/var/lib/food/venv/bin/gunicorn food_project.wsgi:application \ +ExecStart=/var/lib/food/.venv/bin/gunicorn food_project.wsgi:application \ --bind 127.0.0.1:8042 \ --workers 2 \ --timeout 30 \ diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..d09d09a --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,16 @@ +[project] +name = "food" +version = "0.1.0" +description = "Pantry + meta-recipe meal planning (Django, HTMX)" +requires-python = ">=3.11" +dependencies = [ + "django==5.2.12", + "djangorestframework==3.17.1", + "whitenoise==6.12.0", + "gunicorn==25.3.0", + "recipe-scrapers==15.11.0", + "requests==2.33.1", +] + +# No [build-system]: this is an application, not an installable package, so uv +# treats it as a virtual project and won't try to build/install it. diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index c6a675c..0000000 --- a/requirements.txt +++ /dev/null @@ -1,30 +0,0 @@ -asgiref==3.11.1 -beautifulsoup4==4.14.3 -certifi==2026.2.25 -charset-normalizer==3.4.7 -Django==5.2.12 -djangorestframework==3.17.1 -extruct==0.18.0 -gunicorn==25.3.0 -html-text==0.7.1 -html5lib==1.1 -idna==3.11 -isodate==0.7.2 -jstyleson==0.0.2 -lxml==6.0.2 -lxml_html_clean==0.4.4 -mf2py==2.0.1 -packaging==26.0 -pyparsing==3.3.2 -pyrdfa3==3.6.5 -rdflib==7.6.0 -recipe_scrapers==15.11.0 -requests==2.33.1 -six==1.17.0 -soupsieve==2.8.3 -sqlparse==0.5.5 -typing_extensions==4.15.0 -urllib3==2.6.3 -w3lib==2.4.1 -webencodings==0.5.1 -whitenoise==6.12.0 -- cgit v1.2.3