Added dependency locking

This commit is contained in:
2026-07-16 14:45:10 +08:00
parent 59f38f067f
commit 4ce95d8365
3 changed files with 192 additions and 18 deletions
+14 -6
View File
@@ -24,19 +24,27 @@ jobs:
run: |
python -m venv .venv
.venv/bin/pip install -r requirements-dev.txt
- name: Unit tests
- name: Check kaya-core
run: |
.venv/bin/pip install packages/kaya-core packages/kaya-rsgi
.venv/bin/python -m mypy -p kaya.core
.venv/bin/python -m mypy -p kaya.rsgi
.venv/bin/python -m unittest discover -s packages/kaya-core/tests
.venv/bin/python -m unittest discover -s packages/kaya-rsgi/tests
- name: Publish artifacts
- name: Check kaya-rsgi
run: |
.venv/bin/python -m mypy -p kaya.core
.venv/bin/python -m unittest discover -s packages/kaya-core/tests
- name: Publish kaya-core artifacts
env:
TWINE_REPOSITORY_URL: ${{ vars.PYPI_REGISTRY_URL }}
TWINE_USERNAME: ${{ vars.PUBLISHER_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PUBLISHER_TOKEN }}
run: |
.venv/bin/pyproject-build packages/kaya-core
.venv/bin/twine upload --repository gitea packages/kaya-core/dist/*.whl packages/kaya-core/dist/*.tar.gz
- name: Publish kaya-rsgi artifacts
env:
TWINE_REPOSITORY_URL: ${{ vars.PYPI_REGISTRY_URL }}
TWINE_USERNAME: ${{ vars.PUBLISHER_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PUBLISHER_TOKEN }}
run: |
.venv/bin/pyproject-build packages/kaya-rsgi
.venv/bin/twine upload --repository gitea packages/kaya-core/dist/*.whl packages/kaya-core/dist/*.tar.gz packages/kaya-rsgi/dist/*.whl packages/kaya-rsgi/dist/*.tar.gz
.venv/bin/twine upload --repository gitea packages/kaya-rsgi/dist/*.whl packages/kaya-rsgi/dist/*.tar.gz
+8
View File
@@ -0,0 +1,8 @@
kaya-core @ file:./packages/kaya-core
kaya-rsgi @ file:./packages/kaya-rsgi
build
mypy
ipdb
twine
httpx
httpx-ws
+170 -12
View File
@@ -1,17 +1,175 @@
#
# Development dependencies for the Kaya monorepo.
# Install with:
# pip install -r requirements-dev.txt
# This file is autogenerated by pip-compile with Python 3.14
# by the following command:
#
# pip-compile --allow-unsafe --extra-index-url=https://pypi.org/simple --index-url=https://gitea.woggioni.net/api/packages/woggioni/pypi/simple --output-file=requirements-dev.txt requirements-dev.in
#
--index-url https://gitea.woggioni.net/api/packages/woggioni/pypi/simple
--extra-index-url https://pypi.org/simple
build
mypy
ipdb
twine
httpx
httpx-ws
granian
pwo
typing-extensions
anyio==4.14.2
# via
# httpx
# httpx-ws
ast-serialize==0.6.0
# via mypy
asttokens==3.0.2
# via stack-data
build==1.5.0
# via -r requirements-dev.in
certifi==2026.6.17
# via
# httpcore
# httpx
# requests
cffi==2.1.0
# via cryptography
charset-normalizer==3.4.9
# via requests
click==8.4.2
# via granian
cryptography==49.0.0
# via secretstorage
decorator==5.3.1
# via
# ipdb
# ipython
docutils==0.23
# via readme-renderer
executing==2.2.1
# via stack-data
granian==2.7.9
# via kaya-rsgi
h11==0.16.0
# via
# httpcore
# wsproto
httpcore==1.0.9
# via
# httpx
# httpx-ws
httpx==0.28.1
# via
# -r requirements-dev.in
# httpx-ws
httpx-ws==0.9.0
# via -r requirements-dev.in
id==1.6.1
# via twine
idna==3.18
# via
# anyio
# httpx
# requests
ipdb==0.13.13
# via -r requirements-dev.in
ipython==9.15.0
# via ipdb
ipython-pygments-lexers==1.1.1
# via ipython
jaraco-classes==3.4.0
# via keyring
jaraco-context==6.1.2
# via keyring
jaraco-functools==4.6.0
# via keyring
jedi==0.20.0
# via ipython
jeepney==0.9.0
# via
# keyring
# secretstorage
file:./packages/kaya-core
# via
# -r requirements-dev.in
# kaya-rsgi
file:./packages/kaya-rsgi
# via -r requirements-dev.in
keyring==25.7.0
# via twine
librt==0.13.0
# via mypy
markdown-it-py==4.2.0
# via rich
matplotlib-inline==0.2.2
# via ipython
mdurl==0.1.2
# via markdown-it-py
more-itertools==11.1.0
# via
# jaraco-classes
# jaraco-functools
mypy==2.3.0
# via -r requirements-dev.in
mypy-extensions==1.1.0
# via mypy
nh3==0.3.6
# via readme-renderer
packaging==26.2
# via
# build
# twine
parso==0.8.7
# via jedi
pathspec==1.1.1
# via mypy
pexpect==4.9.0
# via ipython
prompt-toolkit==3.0.52
# via ipython
psutil==7.2.2
# via ipython
ptyprocess==0.7.0
# via pexpect
pure-eval==0.2.3
# via stack-data
pwo==0.1.2
# via
# kaya-core
# kaya-rsgi
pycparser==3.0
# via cffi
pygments==2.20.0
# via
# ipython
# ipython-pygments-lexers
# readme-renderer
# rich
pyproject-hooks==1.2.0
# via build
readme-renderer==45.0
# via twine
requests==2.34.2
# via
# requests-toolbelt
# twine
requests-toolbelt==1.0.0
# via twine
rfc3986==2.0.0
# via twine
rich==15.0.0
# via twine
secretstorage==3.5.0
# via keyring
stack-data==0.6.3
# via ipython
traitlets==5.15.1
# via
# ipython
# matplotlib-inline
twine==6.2.0
# via -r requirements-dev.in
typing-extensions==4.16.0
# via
# kaya-core
# mypy
# pwo
urllib3==2.7.0
# via
# id
# requests
# twine
wcwidth==0.8.2
# via prompt-toolkit
wsproto==1.3.2
# via httpx-ws