wip: use uv more fully

waiting for https://github.com/astral-sh/uv/issues/2744
This commit is contained in:
Bryce 2024-04-01 20:14:53 -07:00
parent ce37e60b11
commit f8130f8e1c
3 changed files with 38 additions and 116 deletions

View File

@ -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)

View File

@ -5,7 +5,6 @@ mkdocs-click
mkdocstrings[python]
mypy
ruff
pip-tools
pytest
pytest-asyncio
pytest-randomly

View File

@ -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