diff --git a/.gitignore b/.gitignore index 64afa0e..1c53a76 100644 --- a/.gitignore +++ b/.gitignore @@ -99,7 +99,7 @@ ipython_config.py # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control. # This is especially recommended for binary packages to ensure reproducibility, and is more # commonly ignored for libraries. -*.lock +*-dev.lock # poetry # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. diff --git a/api/Dockerfile b/api/Dockerfile index 9f6edb2..4b75564 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -2,8 +2,9 @@ FROM python:3.12 WORKDIR /api -RUN apt-get update && apt-get install make +RUN apt-get update && apt-get install make bash COPY Makefile requirements.lock pyproject.toml README.md /api/ + RUN make deps COPY . . diff --git a/api/requirements.lock b/api/requirements.lock new file mode 100644 index 0000000..761a87e --- /dev/null +++ b/api/requirements.lock @@ -0,0 +1,129 @@ +# generated by rye +# use `rye lock` or `rye sync` to update this lockfile +# +# last locked with the following flags: +# pre: false +# features: [] +# all-features: false +# with-sources: false +# generate-hashes: false +# universal: false + +-e file:. +aiohappyeyeballs==2.4.4 + # via aiohttp +aiohttp==3.11.11 + # via api +aiosignal==1.3.2 + # via aiohttp +annotated-types==0.7.0 + # via pydantic +anyio==4.8.0 + # via httpx + # via starlette + # via watchfiles +attrs==24.3.0 + # via aiohttp +certifi==2024.12.14 + # via httpcore + # via httpx + # via requests +charset-normalizer==3.4.1 + # via requests +click==8.1.8 + # via rich-toolkit + # via typer + # via uvicorn +colorama==0.4.6 + # via click + # via uvicorn +dnspython==2.7.0 + # via email-validator +email-validator==2.2.0 + # via fastapi +fastapi==0.115.7 + # via api +fastapi-cli==0.0.7 + # via fastapi +frozenlist==1.5.0 + # via aiohttp + # via aiosignal +h11==0.14.0 + # via httpcore + # via uvicorn +httpcore==1.0.7 + # via httpx +httptools==0.6.4 + # via uvicorn +httpx==0.28.1 + # via fastapi +idna==3.10 + # via anyio + # via email-validator + # via httpx + # via requests + # via yarl +jinja2==3.1.5 + # via fastapi +markdown-it-py==3.0.0 + # via rich +markupsafe==3.0.2 + # via jinja2 +mdurl==0.1.2 + # via markdown-it-py +multidict==6.1.0 + # via aiohttp + # via yarl +propcache==0.2.1 + # via aiohttp + # via yarl +pydantic==2.10.5 + # via api + # via fastapi + # via pydantic-settings +pydantic-core==2.27.2 + # via pydantic +pydantic-settings==2.7.1 + # via api +pygments==2.19.1 + # via rich +python-dotenv==1.0.1 + # via pydantic-settings + # via uvicorn +python-multipart==0.0.20 + # via fastapi +pyyaml==6.0.2 + # via uvicorn +requests==2.32.3 + # via api +rich==13.9.4 + # via rich-toolkit + # via typer +rich-toolkit==0.13.2 + # via fastapi-cli +shellingham==1.5.4 + # via typer +sniffio==1.3.1 + # via anyio +starlette==0.45.2 + # via fastapi +typer==0.15.1 + # via fastapi-cli +typing-extensions==4.12.2 + # via anyio + # via fastapi + # via pydantic + # via pydantic-core + # via rich-toolkit + # via typer +urllib3==2.3.0 + # via requests +uvicorn==0.34.0 + # via fastapi + # via fastapi-cli +watchfiles==1.0.4 + # via uvicorn +websockets==14.2 + # via uvicorn +yarl==1.18.3 + # via aiohttp diff --git a/bot/.gitignore b/bot/.gitignore deleted file mode 100644 index ae8554d..0000000 --- a/bot/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -# python generated files -__pycache__/ -*.py[oc] -build/ -dist/ -wheels/ -*.egg-info - -# venv -.venv diff --git a/bot/Dockerfile b/bot/Dockerfile index dd77b0d..0dbcd7b 100644 --- a/bot/Dockerfile +++ b/bot/Dockerfile @@ -2,7 +2,7 @@ FROM python:3.12 WORKDIR /bot -RUN apt-get update && apt-get install make +RUN apt-get update && apt-get install make bash COPY Makefile requirements.lock pyproject.toml README.md /bot/ RUN make deps diff --git a/bot/requirements.lock b/bot/requirements.lock new file mode 100644 index 0000000..f92edc3 --- /dev/null +++ b/bot/requirements.lock @@ -0,0 +1,66 @@ +# generated by rye +# use `rye lock` or `rye sync` to update this lockfile +# +# last locked with the following flags: +# pre: false +# features: [] +# all-features: false +# with-sources: false +# generate-hashes: false +# universal: false + +-e file:. +aiofiles==24.1.0 + # via aiogram +aiogram==3.17.0 + # via bot +aiohappyeyeballs==2.4.4 + # via aiohttp +aiohttp==3.11.11 + # via aiogram + # via bot +aiosignal==1.3.2 + # via aiohttp +annotated-types==0.7.0 + # via pydantic +attrs==24.3.0 + # via aiohttp +certifi==2024.12.14 + # via aiogram + # via requests +charset-normalizer==3.4.1 + # via requests +frozenlist==1.5.0 + # via aiohttp + # via aiosignal +idna==3.10 + # via requests + # via yarl +magic-filter==1.0.12 + # via aiogram +multidict==6.1.0 + # via aiohttp + # via yarl +propcache==0.2.1 + # via aiohttp + # via yarl +pydantic==2.10.6 + # via aiogram + # via bot + # via pydantic-settings +pydantic-core==2.27.2 + # via pydantic +pydantic-settings==2.7.1 + # via bot +python-dotenv==1.0.1 + # via pydantic-settings +requests==2.32.3 + # via bot +typing-extensions==4.12.2 + # via aiogram + # via pydantic + # via pydantic-core +urllib3==2.3.0 + # via requests +yarl==1.18.3 + # via aiohttp