mirror of
https://github.com/remsky/Kokoro-FastAPI.git
synced 2025-04-13 09:39:17 +00:00
ci: update dependency installation and testing commands; add ebooklib and html2text dependencies
This commit is contained in:
parent
cf72e4ed2b
commit
58cc7c898a
5 changed files with 36 additions and 11 deletions
8
.github/workflows/ci.yml
vendored
8
.github/workflows/ci.yml
vendored
|
@ -28,12 +28,8 @@ jobs:
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
uv sync --all-extras --dev
|
uv pip install -e .[test]
|
||||||
|
|
||||||
- name: Lint with ruff
|
- name: Run Tests
|
||||||
run: |
|
|
||||||
uv run ruff check .
|
|
||||||
|
|
||||||
- name: Test API and UI
|
|
||||||
run: |
|
run: |
|
||||||
uv run pytest api/tests/ ui/tests/ --asyncio-mode=auto --cov=api --cov=ui --cov-report=term-missing
|
uv run pytest api/tests/ ui/tests/ --asyncio-mode=auto --cov=api --cov=ui --cov-report=term-missing
|
||||||
|
|
6
.gitignore
vendored
6
.gitignore
vendored
|
@ -71,3 +71,9 @@ EXTERNAL_UV_DOCUMENTATION*
|
||||||
# Docker
|
# Docker
|
||||||
Dockerfile*
|
Dockerfile*
|
||||||
docker-compose*
|
docker-compose*
|
||||||
|
examples/assorted_checks/River_of_Teet_-_Sarah_Gailey.epub
|
||||||
|
examples/ebook_test/chapter_to_audio.py
|
||||||
|
examples/ebook_test/chapters_to_audio.py
|
||||||
|
examples/ebook_test/parse_epub.py
|
||||||
|
examples/ebook_test/River_of_Teet_-_Sarah_Gailey.epub
|
||||||
|
examples/ebook_test/River_of_Teet_-_Sarah_Gailey.txt
|
||||||
|
|
|
@ -24,13 +24,13 @@ services:
|
||||||
gradio-ui:
|
gradio-ui:
|
||||||
# image: ghcr.io/remsky/kokoro-fastapi:latest-ui
|
# image: ghcr.io/remsky/kokoro-fastapi:latest-ui
|
||||||
# Uncomment below (and comment out above) to build from source instead of using the released image
|
# Uncomment below (and comment out above) to build from source instead of using the released image
|
||||||
# build:
|
build:
|
||||||
# context: ./ui
|
context: ../../ui
|
||||||
ports:
|
ports:
|
||||||
- "7860:7860"
|
- "7860:7860"
|
||||||
volumes:
|
volumes:
|
||||||
- ./ui/data:/app/ui/data
|
- ../../ui/data:/app/ui/data
|
||||||
- ./ui/app.py:/app/app.py # Mount app.py for hot reload
|
- ../../ui/app.py:/app/app.py # Mount app.py for hot reload
|
||||||
environment:
|
environment:
|
||||||
- GRADIO_WATCH=True # Enable hot reloading
|
- GRADIO_WATCH=True # Enable hot reloading
|
||||||
- PYTHONUNBUFFERED=1 # Ensure Python output is not buffered
|
- PYTHONUNBUFFERED=1 # Ensure Python output is not buffered
|
||||||
|
|
|
@ -31,6 +31,8 @@ dependencies = [
|
||||||
"loguru==0.7.3",
|
"loguru==0.7.3",
|
||||||
"transformers==4.47.1",
|
"transformers==4.47.1",
|
||||||
"openai>=1.59.6",
|
"openai>=1.59.6",
|
||||||
|
"ebooklib>=0.18",
|
||||||
|
"html2text>=2024.2.26",
|
||||||
]
|
]
|
||||||
|
|
||||||
[project.optional-dependencies]
|
[project.optional-dependencies]
|
||||||
|
@ -47,7 +49,6 @@ test = [
|
||||||
"pytest-asyncio==0.23.5",
|
"pytest-asyncio==0.23.5",
|
||||||
"gradio>=5",
|
"gradio>=5",
|
||||||
"openai>=1.59.6",
|
"openai>=1.59.6",
|
||||||
"ruff>=0.2.2",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.uv]
|
[tool.uv]
|
||||||
|
|
22
uv.lock
generated
22
uv.lock
generated
|
@ -397,6 +397,16 @@ wheels = [
|
||||||
{ url = "https://files.pythonhosted.org/packages/a7/f9/e014eb5740dfc6ebe6105f4c38890f361e5b0e1537a9f04bb4f34432efb9/dlinfo-1.2.1-py3-none-any.whl", hash = "sha256:a97d7cc66d997b4ac491f0e8068eb324790994834951a9beb5a4619835b361d9", size = 3559 },
|
{ url = "https://files.pythonhosted.org/packages/a7/f9/e014eb5740dfc6ebe6105f4c38890f361e5b0e1537a9f04bb4f34432efb9/dlinfo-1.2.1-py3-none-any.whl", hash = "sha256:a97d7cc66d997b4ac491f0e8068eb324790994834951a9beb5a4619835b361d9", size = 3559 },
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "ebooklib"
|
||||||
|
version = "0.18"
|
||||||
|
source = { registry = "https://pypi.org/simple" }
|
||||||
|
dependencies = [
|
||||||
|
{ name = "lxml" },
|
||||||
|
{ name = "six" },
|
||||||
|
]
|
||||||
|
sdist = { url = "https://files.pythonhosted.org/packages/e8/1d/90bb33317d756c25b40bb55312dda30a94afb691755763fc00976250c82b/EbookLib-0.18.tar.gz", hash = "sha256:38562643a7bc94d9bf56e9930b4927e4e93b5d1d0917f697a6454db5a1c1a533", size = 115484 }
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "exceptiongroup"
|
name = "exceptiongroup"
|
||||||
version = "1.2.2"
|
version = "1.2.2"
|
||||||
|
@ -571,6 +581,12 @@ wheels = [
|
||||||
{ url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761", size = 58259 },
|
{ url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761", size = 58259 },
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "html2text"
|
||||||
|
version = "2024.2.26"
|
||||||
|
source = { registry = "https://pypi.org/simple" }
|
||||||
|
sdist = { url = "https://files.pythonhosted.org/packages/1a/43/e1d53588561e533212117750ee79ad0ba02a41f52a08c1df3396bd466c05/html2text-2024.2.26.tar.gz", hash = "sha256:05f8e367d15aaabc96415376776cdd11afd5127a77fce6e36afc60c563ca2c32", size = 56527 }
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "httpcore"
|
name = "httpcore"
|
||||||
version = "1.0.7"
|
version = "1.0.7"
|
||||||
|
@ -771,7 +787,9 @@ source = { editable = "." }
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{ name = "aiofiles" },
|
{ name = "aiofiles" },
|
||||||
{ name = "click" },
|
{ name = "click" },
|
||||||
|
{ name = "ebooklib" },
|
||||||
{ name = "fastapi" },
|
{ name = "fastapi" },
|
||||||
|
{ name = "html2text" },
|
||||||
{ name = "loguru" },
|
{ name = "loguru" },
|
||||||
{ name = "munch" },
|
{ name = "munch" },
|
||||||
{ name = "numpy" },
|
{ name = "numpy" },
|
||||||
|
@ -806,14 +824,17 @@ test = [
|
||||||
{ name = "pytest" },
|
{ name = "pytest" },
|
||||||
{ name = "pytest-asyncio" },
|
{ name = "pytest-asyncio" },
|
||||||
{ name = "pytest-cov" },
|
{ name = "pytest-cov" },
|
||||||
|
{ name = "ruff" },
|
||||||
]
|
]
|
||||||
|
|
||||||
[package.metadata]
|
[package.metadata]
|
||||||
requires-dist = [
|
requires-dist = [
|
||||||
{ name = "aiofiles", specifier = "==23.2.1" },
|
{ name = "aiofiles", specifier = "==23.2.1" },
|
||||||
{ name = "click", specifier = ">=8.0.0" },
|
{ name = "click", specifier = ">=8.0.0" },
|
||||||
|
{ name = "ebooklib", specifier = ">=0.18" },
|
||||||
{ name = "fastapi", specifier = "==0.115.6" },
|
{ name = "fastapi", specifier = "==0.115.6" },
|
||||||
{ name = "gradio", marker = "extra == 'test'", specifier = ">=5" },
|
{ name = "gradio", marker = "extra == 'test'", specifier = ">=5" },
|
||||||
|
{ name = "html2text", specifier = ">=2024.2.26" },
|
||||||
{ name = "httpx", marker = "extra == 'test'", specifier = "==0.26.0" },
|
{ name = "httpx", marker = "extra == 'test'", specifier = "==0.26.0" },
|
||||||
{ name = "loguru", specifier = "==0.7.3" },
|
{ name = "loguru", specifier = "==0.7.3" },
|
||||||
{ name = "munch", specifier = "==4.0.0" },
|
{ name = "munch", specifier = "==4.0.0" },
|
||||||
|
@ -830,6 +851,7 @@ requires-dist = [
|
||||||
{ name = "python-dotenv", specifier = "==1.0.1" },
|
{ name = "python-dotenv", specifier = "==1.0.1" },
|
||||||
{ name = "regex", specifier = "==2024.11.6" },
|
{ name = "regex", specifier = "==2024.11.6" },
|
||||||
{ name = "requests", specifier = "==2.32.3" },
|
{ name = "requests", specifier = "==2.32.3" },
|
||||||
|
{ name = "ruff", marker = "extra == 'test'", specifier = ">=0.2.2" },
|
||||||
{ name = "scipy", specifier = "==1.14.1" },
|
{ name = "scipy", specifier = "==1.14.1" },
|
||||||
{ name = "soundfile", specifier = "==0.13.0" },
|
{ name = "soundfile", specifier = "==0.13.0" },
|
||||||
{ name = "sqlalchemy", specifier = "==2.0.27" },
|
{ name = "sqlalchemy", specifier = "==2.0.27" },
|
||||||
|
|
Loading…
Add table
Reference in a new issue