From f8130f8e1c9c5f961d691c1a137a7aada5e05ab3 Mon Sep 17 00:00:00 2001 From: Bryce Date: Mon, 1 Apr 2024 20:14:53 -0700 Subject: [PATCH] wip: use uv more fully waiting for https://github.com/astral-sh/uv/issues/2744 --- Makefile | 9 +-- requirements-dev.in | 1 - requirements-dev.txt | 144 ++++++++++--------------------------------- 3 files changed, 38 insertions(+), 116 deletions(-) diff --git a/Makefile b/Makefile index 860bffb..dfed770 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ venv_name = $(venv_prefix)-$(python_version) pyenv_instructions=https://github.com/pyenv/pyenv#installation pyenv_virt_instructions=https://github.com/pyenv/pyenv-virtualenv#pyenv-virtualenv - +# waiting for https://github.com/astral-sh/uv/issues/2744 to be resolved init: require_pyenv ## Setup a dev environment for local development. @pyenv install $(python_version) -s @echo -e "\033[0;32m ✔️ 🐍 $(python_version) installed \033[0m" @@ -27,6 +27,7 @@ init: require_pyenv ## Setup a dev environment for local development. @echo -e "The following commands are available to run in the Makefile:\n" @make -s help +req-init: requirements init ## Alias of `make requirements && make init` af: autoformat ## Alias for `autoformat` autoformat: ## Run the autoformatter. @@ -76,8 +77,8 @@ build-dev-image: run-dev: build-dev-image docker run -it -v $$HOME/.cache/huggingface:/root/.cache/huggingface -v $$HOME/.cache/torch:/root/.cache/torch -v `pwd`/outputs:/outputs imaginairy-dev /bin/bash -requirements: ## Freeze the requirements.txt file - pip-compile setup.py requirements-dev.in --output-file=requirements-dev.txt --upgrade --resolver=backtracking +requirements: ## Update the frozen requirements.txt file + uv pip compile setup.py requirements-dev.in --output-file=requirements-dev.txt --upgrade require_pyenv: @if ! [ -x "$$(command -v pyenv)" ]; then\ @@ -231,7 +232,7 @@ vendorize_facexlib: sed -i '' '/from \.version import __gitsha__, __version__/d' ./imaginairy/vendored/facexlib/__init__.py make af -vendorize: ## vendorize a github repo. `make vendorize REPO=git@github.com:openai/CLIP.git PKG=clip` +vendorize: # vendorize a github repo. `make vendorize REPO=git@github.com:openai/CLIP.git PKG=clip` mkdir -p ./downloads -cd ./downloads && git clone $(REPO) $(PKG) cd ./downloads/$(PKG) && git fetch && git checkout $(COMMIT) diff --git a/requirements-dev.in b/requirements-dev.in index 7af9247..eeb96ca 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -5,7 +5,6 @@ mkdocs-click mkdocstrings[python] mypy ruff -pip-tools pytest pytest-asyncio pytest-randomly diff --git a/requirements-dev.txt b/requirements-dev.txt index d827529..e067751 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,9 +1,5 @@ -# -# This file is autogenerated by pip-compile with Python 3.10 -# by the following command: -# -# pip-compile --output-file=requirements-dev.txt requirements-dev.in setup.py -# +# This file was autogenerated by uv via the following command: +# uv pip compile setup.py requirements-dev.in --output-file=requirements-dev.txt annotated-types==0.6.0 # via pydantic antlr4-python3-runtime==4.9.3 @@ -14,8 +10,6 @@ anyio==4.3.0 # starlette babel==2.14.0 # via mkdocs-material -build==1.1.1 - # via pip-tools certifi==2024.2.2 # via # httpcore @@ -27,59 +21,48 @@ click==8.1.7 # via # click-help-colors # click-shell - # imaginAIry (setup.py) # mkdocs # mkdocs-click # mkdocstrings - # pip-tools # uvicorn click-help-colors==0.9.4 - # via imaginAIry (setup.py) click-shell==2.1 - # via imaginAIry (setup.py) colorama==0.4.6 # via # griffe # mkdocs-material coverage==7.4.4 - # via -r requirements-dev.in -diffusers==0.27.0 - # via imaginAIry (setup.py) +diffusers==0.27.2 einops==0.7.0 - # via imaginAIry (setup.py) exceptiongroup==1.2.0 # via # anyio # pytest fastapi==0.110.0 - # via imaginAIry (setup.py) -filelock==3.13.1 +filelock==3.13.3 # via # diffusers # huggingface-hub # torch # transformers -fsspec==2024.2.0 +fsspec==2024.3.1 # via # huggingface-hub # torch -ftfy==6.1.3 - # via - # imaginAIry (setup.py) - # open-clip-torch +ftfy==6.2.0 + # via open-clip-torch ghp-import==2.1.0 # via mkdocs -griffe==0.42.0 +griffe==0.42.1 # via mkdocstrings-python h11==0.14.0 # via # httpcore # uvicorn -httpcore==1.0.4 +httpcore==1.0.5 # via httpx httpx==0.27.0 - # via -r requirements-dev.in -huggingface-hub==0.21.4 +huggingface-hub==0.22.2 # via # diffusers # open-clip-torch @@ -91,12 +74,11 @@ idna==3.6 # anyio # httpx # requests -importlib-metadata==7.0.2 +importlib-metadata==7.1.0 # via diffusers iniconfig==2.0.0 # via pytest jaxtyping==0.2.28 - # via imaginAIry (setup.py) jinja2==3.1.3 # via # mkdocs @@ -104,17 +86,15 @@ jinja2==3.1.3 # mkdocstrings # torch kornia==0.7.2 - # via imaginAIry (setup.py) -kornia-rs==0.1.1 +kornia-rs==0.1.2 # via kornia -markdown==3.5.2 +markdown==3.6 # via # mkdocs # mkdocs-autorefs # mkdocs-click # mkdocs-material # mkdocstrings - # mkdocstrings-python # pymdown-extensions markupsafe==2.1.5 # via @@ -132,44 +112,33 @@ mkdocs==1.5.3 mkdocs-autorefs==1.0.1 # via mkdocstrings mkdocs-click==0.8.1 - # via -r requirements-dev.in -mkdocs-material==9.5.13 - # via -r requirements-dev.in +mkdocs-material==9.5.16 mkdocs-material-extensions==1.3.1 # via mkdocs-material -mkdocstrings[python]==0.24.1 - # via - # -r requirements-dev.in - # mkdocstrings-python -mkdocstrings-python==1.9.0 +mkdocstrings==0.24.1 + # via mkdocstrings-python +mkdocstrings-python==1.8.0 # via mkdocstrings mpmath==1.3.0 # via sympy mypy==1.9.0 - # via -r requirements-dev.in mypy-extensions==1.0.0 # via mypy networkx==3.2.1 # via torch numpy==1.24.4 # via - # -c tests/constraints.txt # diffusers - # imaginAIry (setup.py) # jaxtyping # opencv-python # scipy # torchvision # transformers omegaconf==2.3.0 - # via imaginAIry (setup.py) open-clip-torch==2.24.0 - # via imaginAIry (setup.py) opencv-python==4.9.0.80 - # via imaginAIry (setup.py) packaging==24.0 # via - # build # huggingface-hub # kornia # mkdocs @@ -180,29 +149,21 @@ paginate==0.5.6 # via mkdocs-material pathspec==0.12.1 # via mkdocs -pillow==10.2.0 +pillow==10.3.0 # via # diffusers - # imaginAIry (setup.py) # torchvision -pip-tools==7.4.1 - # via -r requirements-dev.in platformdirs==4.2.0 # via # mkdocs # mkdocstrings pluggy==1.4.0 # via pytest -protobuf==5.26.0 - # via - # imaginAIry (setup.py) - # open-clip-torch +protobuf==5.26.1 + # via open-clip-torch psutil==5.9.8 - # via imaginAIry (setup.py) pydantic==2.6.4 - # via - # fastapi - # imaginAIry (setup.py) + # via fastapi pydantic-core==2.16.3 # via pydantic pygments==2.17.2 @@ -212,23 +173,14 @@ pymdown-extensions==10.7.1 # mkdocs-material # mkdocstrings pyparsing==3.1.2 - # via imaginAIry (setup.py) -pyproject-hooks==1.0.0 - # via - # build - # pip-tools pytest==8.1.1 # via - # -r requirements-dev.in # pytest-asyncio # pytest-randomly # pytest-sugar -pytest-asyncio==0.23.5.post1 - # via -r requirements-dev.in +pytest-asyncio==0.23.6 pytest-randomly==3.15.0 - # via -r requirements-dev.in pytest-sugar==1.0.0 - # via -r requirements-dev.in python-dateutil==2.9.0.post0 # via ghp-import pyyaml==6.0.1 @@ -253,24 +205,18 @@ requests==2.31.0 # via # diffusers # huggingface-hub - # imaginAIry (setup.py) # mkdocs-material # responses # transformers responses==0.25.0 - # via -r requirements-dev.in -ruff==0.3.3 - # via -r requirements-dev.in +ruff==0.3.5 safetensors==0.4.2 # via # diffusers - # imaginAIry (setup.py) # timm # transformers scipy==1.12.0 - # via - # imaginAIry (setup.py) - # torchdiffeq + # via torchdiffeq sentencepiece==0.2.0 # via open-clip-torch six==1.16.0 @@ -284,55 +230,39 @@ starlette==0.36.3 sympy==1.12 # via torch termcolor==2.4.0 - # via - # imaginAIry (setup.py) - # pytest-sugar + # via pytest-sugar timm==0.9.16 - # via - # imaginAIry (setup.py) - # open-clip-torch + # via open-clip-torch tokenizers==0.15.2 # via transformers tomli==2.0.1 # via - # build # mypy - # pip-tools - # pyproject-hooks # pytest -torch==2.2.1 +torch==2.2.2 # via - # imaginAIry (setup.py) # kornia # open-clip-torch # timm # torchdiffeq # torchvision torchdiffeq==0.2.3 - # via imaginAIry (setup.py) -torchvision==0.17.1 +torchvision==0.17.2 # via - # imaginAIry (setup.py) # open-clip-torch # timm tqdm==4.66.2 # via # huggingface-hub - # imaginAIry (setup.py) # open-clip-torch # transformers -transformers==4.38.2 - # via imaginAIry (setup.py) +transformers==4.39.2 typeguard==2.13.3 # via jaxtyping -types-pillow==10.2.0.20240311 - # via -r requirements-dev.in -types-psutil==5.9.5.20240311 - # via -r requirements-dev.in -types-requests==2.31.0.20240311 - # via -r requirements-dev.in +types-pillow==10.2.0.20240331 +types-psutil==5.9.5.20240316 +types-requests==2.31.0.20240402 types-tqdm==4.66.0.20240106 - # via -r requirements-dev.in typing-extensions==4.10.0 # via # anyio @@ -348,19 +278,11 @@ urllib3==2.2.1 # requests # responses # types-requests -uvicorn==0.28.0 - # via imaginAIry (setup.py) +uvicorn==0.29.0 watchdog==4.0.0 # via mkdocs wcwidth==0.2.13 # via ftfy wheel==0.43.0 - # via - # -r requirements-dev.in - # pip-tools zipp==3.18.1 # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# pip -# setuptools