Skip to content

Migrate BYO invocations_ws samples to uv - #1064

Merged
Antriksh Jain (antriksh30) merged 1 commit into
mainfrom
migrate-byo-invocations-ws-to-uv
Oct 12, 2026
Merged

Antriksh Jain (antriksh30) merged 1 commit into
mainfrom
migrate-byo-invocations-ws-to-uv

Conversation

@antriksh30

Copy link
Copy Markdown
Contributor

Summary

  • migrate the five BYO invocations_ws hosted runtimes from requirements files to pyproject.toml, uv.lock, and uv.toml
  • update container builds and local setup to use frozen uv environments while preserving the existing Python 3.12 images and direct dependency declarations
  • keep the three standalone chat clients requirements-based and document their isolated virtual environments
  • remove obsolete Pipecat NLTK prefetch and GUI OpenCV replacement steps; the locked Pipecat graph no longer uses NLTK and already resolves headless OpenCV

Validation

  • uv lock --check and frozen production export for all five projects
  • built all five container images and verified their /app/.venv/bin/python commands
  • Python source compilation and migration artifact-scope checks
  • hosted-agent dependency policy with --resolve
  • git diff --check

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: ec0a8f22-0687-4209-912b-1d5f4c4263f1
@antriksh30
Antriksh Jain (antriksh30) requested a review from a team as a code owner October 12, 2026 10:47
Copilot AI balanced review requested due to automatic review settings October 12, 2026 10:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The migrations consistently preserve dependencies, use frozen locks, and align container and documentation workflows.

0 open findings

What changed in this PR

Migrates five BYO WebSocket runtimes to reproducible uv-managed environments while retaining requirements-based standalone clients.

Changes:

  • Adds pyproject.toml, uv.lock, and uv configuration.
  • Updates containers to install frozen production environments.
  • Revises setup documentation and removes obsolete dependency workarounds.

Paths are relative to samples/python/hosted-agents/bring-your-own/invocations_ws/.

File Description
pipecat-ws-server/​README.md Documents uv setup and corrected client paths.
pipecat-ws-server/​src/​pipecat-ws-server/​Dockerfile Builds and runs from a frozen uv environment.
pipecat-ws-server/​src/​pipecat-ws-server/​requirements.txt Removes the superseded requirements manifest.
pipecat-ws-server/​src/​pipecat-ws-server/​pyproject.toml Declares runtime dependencies.
pipecat-ws-server/​src/​pipecat-ws-server/​uv.lock Locks the complete dependency graph.
pipecat-ws-server/​src/​pipecat-ws-server/​uv.toml Configures certificates and prereleases.
pipecat-webrtc/​README.md Documents uv setup and isolated client environment.
pipecat-webrtc/​src/​pipecat-ws-webrtc/​Dockerfile Uses frozen uv dependencies and removes obsolete workarounds.
pipecat-webrtc/​src/​pipecat-ws-webrtc/​requirements.txt Removes the superseded requirements manifest.
pipecat-webrtc/​src/​pipecat-ws-webrtc/​pyproject.toml Declares runtime dependencies.
pipecat-webrtc/​src/​pipecat-ws-webrtc/​uv.lock Locks the complete dependency graph.
pipecat-webrtc/​src/​pipecat-ws-webrtc/​uv.toml Configures certificates and prereleases.
livekit-server/​README.md Documents uv-based backend setup and client isolation.
livekit-server/​src/​livekit-server/​Dockerfile Installs dependencies and runs tools through .venv.
livekit-server/​src/​livekit-server/​requirements.txt Removes the superseded requirements manifest.
livekit-server/​src/​livekit-server/​pyproject.toml Declares backend dependencies.
livekit-server/​src/​livekit-server/​uv.lock Locks the complete dependency graph.
livekit-server/​src/​livekit-server/​uv.toml Configures certificates and prereleases.
hello-world/​README.md Updates local, E2E, and browser workflows for uv.
hello-world/​src/​hello-world/​Dockerfile Builds and runs from a frozen uv environment.
hello-world/​src/​hello-world/​requirements.txt Removes the runtime requirements manifest.
hello-world/​src/​hello-world/​requirements-dev.txt Replaces development requirements with a uv group.
hello-world/​src/​hello-world/​pyproject.toml Declares runtime and development dependencies.
hello-world/​src/​hello-world/​uv.lock Locks runtime and development dependencies.
hello-world/​src/​hello-world/​uv.toml Configures certificates and prereleases.
duplex-live-agent/​README.md Updates local and E2E workflows for uv.
duplex-live-agent/​src/​duplex-live-agent/​Dockerfile Builds and runs from a frozen uv environment.
duplex-live-agent/​src/​duplex-live-agent/​requirements.txt Removes the superseded requirements manifest.
duplex-live-agent/​src/​duplex-live-agent/​pyproject.toml Declares runtime and development dependencies.
duplex-live-agent/​src/​duplex-live-agent/​uv.lock Locks runtime and development dependencies.
duplex-live-agent/​src/​duplex-live-agent/​uv.toml Configures certificates and prereleases.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@antriksh30
Antriksh Jain (antriksh30) merged commit 6ed20e8 into main Oct 12, 2026
16 checks passed
@antriksh30
Antriksh Jain (antriksh30) deleted the migrate-byo-invocations-ws-to-uv branch October 12, 2026 11:05

This branch was successfully deployed

1 active deployment
L4-validation — 3316a8cd Deployed Oct 12, 2026 by antriksh30 via trusted #498
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants