Skip to content

Commit

Permalink
Fix docs generation build issues
Browse files Browse the repository at this point in the history
  • Loading branch information
markbackman committed Dec 12, 2024
1 parent 7bbc0ee commit 19c178e
Show file tree
Hide file tree
Showing 8 changed files with 34 additions and 62 deletions.
44 changes: 6 additions & 38 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,58 +4,26 @@ build:
os: ubuntu-22.04
tools:
python: '3.12'
apt_packages:
- portaudio19-dev
- python3-dev
- libasound2-dev
jobs:
pre_build:
# Commands to run before the build
- python -m pip install --upgrade pip
- pip install wheel setuptools
post_build:
# Commands to run after the build
- echo "Build completed"

sphinx:
configuration: docs/api/conf.py
fail_on_warning: false # Set to true if you want builds to fail on warnings
fail_on_warning: false

python:
install:
- requirements: docs/api/requirements-base.txt
# Try to install Riva first, fall back to PlayHT if it fails
- requirements: docs/api/requirements-riva.txt || true
- requirements: docs/api/requirements-playht.txt || true
- requirements: docs/api/requirements.txt
- method: pip
path: .
extra_requirements:
- anthropic
- assemblyai
- aws
- azure
- canonical
- cartesia
- daily
- deepgram
- elevenlabs
- fal
- fireworks
- gladia
- google
- grok
- groq
- krisp
- langchain
- livekit
- lmnt
- local
- moondream
- nim
- noisereduce
- openai
- openpipe
- silero
- simli
- soundfile
- websocket
- whisper

search:
ranking:
Expand Down
2 changes: 1 addition & 1 deletion docs/api/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This directory contains the source files for auto-generating Pipecat's server AP
1. Install documentation dependencies:

```bash
pip install -r requirements-base.txt requirements-playht.txt requirements-riva.txt
pip install -r requirements.txt
```

2. Make the build scripts executable:
Expand Down
12 changes: 9 additions & 3 deletions docs/api/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,12 @@
autodoc_mock_imports = [
"riva",
"livekit",
"pyht",
"pyht", # Base PlayHT package
"pyht.async_client", # PlayHT specific imports
"pyht.client",
"pyht.protos",
"pyht.protos.api_pb2",
"pipecat_ai_playht", # PlayHT wrapper
"anthropic",
"assemblyai",
"boto3",
Expand All @@ -63,13 +68,14 @@
"openpipe",
"simli",
"soundfile",
# Add these new mocks
# Existing mocks
"pipecat_ai_krisp",
"pyaudio",
"_tkinter",
"tkinter",
"daily",
"daily_python",
"pydantic.BaseModel", # Mock base pydantic to avoid model conflicts
"pydantic.BaseModel",
"pydantic.Field",
"pydantic._internal._model_construction",
"pydantic._internal._fields",
Expand Down
3 changes: 0 additions & 3 deletions docs/api/requirements-playht.txt

This file was deleted.

3 changes: 0 additions & 3 deletions docs/api/requirements-riva.txt

This file was deleted.

6 changes: 4 additions & 2 deletions docs/api/requirements-base.txt → docs/api/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ pipecat-ai[gladia]
pipecat-ai[google]
pipecat-ai[grok]
pipecat-ai[groq]
pipecat-ai[krisp]
# pipecat-ai[krisp] # Mocked instead
pipecat-ai[langchain]
pipecat-ai[livekit]
pipecat-ai[lmnt]
Expand All @@ -30,7 +30,9 @@ pipecat-ai[moondream]
pipecat-ai[nim]
pipecat-ai[noisereduce]
pipecat-ai[openai]
pipecat-ai[openpipe]
# pipecat-ai[openpipe]
# pipecat-ai[playht] # Mocked due to grpcio conflict with riva
pipecat-ai[riva]
pipecat-ai[silero]
pipecat-ai[simli]
pipecat-ai[soundfile]
Expand Down
24 changes: 13 additions & 11 deletions docs/api/rtd-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,29 @@ echo "Creating test directory: $TEST_DIR"
mkdir -p "$TEST_DIR"
cd "$TEST_DIR"

# Create single virtual environment
# Create virtual environment
python -m venv venv
source venv/bin/activate

echo "Installing base dependencies..."
echo "Installing build dependencies..."
pip install --upgrade pip wheel setuptools
pip install -r "$DOCS_DIR/requirements-base.txt"

# Try to install optional dependencies, but don't fail if they don't work
echo "Installing Riva dependencies..."
pip install -r "$DOCS_DIR/requirements-riva.txt" || echo "Failed to install Riva dependencies"

echo "Installing PlayHT dependencies..."
pip install -r "$DOCS_DIR/requirements-playht.txt" || echo "Failed to install PlayHT dependencies"
echo "Installing documentation dependencies..."
pip install -r "$DOCS_DIR/requirements.txt"

echo "Building documentation..."
cd "$DOCS_DIR"
sphinx-build -b html . "_build/html"

echo "Build complete. Check _build/html directory for output."

# Print summary
echo -e "\n=== Build Summary ==="
echo "Documentation: $DOCS_DIR/_build/html"
echo "Test environment: $TEST_DIR"
echo -e "\nTo view the documentation:"
echo "open $DOCS_DIR/_build/html/index.html"

# Print installed packages for verification
echo "Installed packages:"
pip freeze
echo -e "\n=== Installed Packages ==="
pip freeze | grep -E "sphinx|pipecat"
2 changes: 1 addition & 1 deletion src/pipecat/services/riva.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from typing import AsyncGenerator, Optional

from loguru import logger
from pydantic.main import BaseModel
from pydantic import BaseModel

from pipecat.frames.frames import (
CancelFrame,
Expand Down

0 comments on commit 19c178e

Please sign in to comment.