From 3d4ab7158daaee730c5c5b1df64316b866a7d8c7 Mon Sep 17 00:00:00 2001 From: Mark Backman Date: Wed, 23 Jul 2025 23:17:15 -0400 Subject: [PATCH 1/3] pyproject.toml dependency updates to support better cross compatibility --- pyproject.toml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 3c8c9b704..31323f1bd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,7 @@ dependencies = [ "soxr~=0.5.0", "openai~=1.74.0", # Explicit dependency pins for Python 3.11+ compatibility - "numba>=0.61.0", + "numba>=0.60.0", ] [project.urls] @@ -46,7 +46,7 @@ Website = "https://pipecat.ai" anthropic = [ "anthropic~=0.49.0" ] assemblyai = [ "websockets>=13.1,<15.0" ] aws = [ "aioboto3~=15.0.0", "websockets>=13.1,<15.0" ] -aws-nova-sonic = [ "aws_sdk_bedrock_runtime~=0.0.2" ] +aws-nova-sonic = [ "aws_sdk_bedrock_runtime~=0.0.2; python_version>='3.12'" ] azure = [ "azure-cognitiveservices-speech~=1.42.0"] cartesia = [ "cartesia~=2.0.3", "websockets>=13.1,<15.0" ] cerebras = [] @@ -79,13 +79,13 @@ openai = [ "websockets>=13.1,<15.0" ] openpipe = [ "openpipe~=4.50.0" ] openrouter = [] perplexity = [] -playht = [ "pyht~=0.1.12", "websockets>=13.1,<15.0" ] +playht = [ "pyht>=0.1.6", "websockets>=13.1,<15.0" ] qwen = [] rime = [ "websockets>=13.1,<15.0" ] riva = [ "nvidia-riva-client~=2.21.1" ] sambanova = [] sentry = [ "sentry-sdk~=2.23.1" ] -local-smart-turn = [ "coremltools>=8.0", "transformers", "torch==2.5.0", "torchaudio==2.5.0" ] +local-smart-turn = [ "coremltools>=8.0", "transformers", "torch~=2.5.0", "torchaudio~=2.5.0" ] remote-smart-turn = [] silero = [ "onnxruntime~=1.20.1" ] simli = [ "simli-ai~=0.1.10"] From cfa26524ca26d6616c704063c7a609e149b86d66 Mon Sep 17 00:00:00 2001 From: Mark Backman Date: Thu, 24 Jul 2025 07:44:06 -0400 Subject: [PATCH 2/3] Add support for fastapi>=0.115.6,<0.117.0 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 31323f1bd..02e8ab698 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -97,7 +97,7 @@ together = [] tracing = [ "opentelemetry-sdk>=1.33.0", "opentelemetry-api>=1.33.0", "opentelemetry-instrumentation>=0.54b0" ] ultravox = [ "transformers>=4.48.0", "vllm~=0.7.3" ] webrtc = [ "aiortc~=1.11.0", "opencv-python~=4.11.0.86" ] -websocket = [ "websockets>=13.1,<15.0", "fastapi~=0.115.6" ] +websocket = [ "websockets>=13.1,<15.0", "fastapi>=0.115.6,<0.117.0" ] whisper = [ "faster-whisper~=1.1.1" ] [tool.setuptools.packages.find] From 5b7b4efdc924098ddd7314c73ba938c082655220 Mon Sep 17 00:00:00 2001 From: Mark Backman Date: Thu, 24 Jul 2025 08:04:22 -0400 Subject: [PATCH 3/3] Add broader version support for stable core dependencies, up to the next major version --- CHANGELOG.md | 14 ++++++++++++++ pyproject.toml | 16 ++++++++-------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c27d7a596..b05ee5708 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Dependency compatibility improvements: Relaxed version constraints for core + dependencies to support broader version ranges while maintaining stability: + + - `aiohttp`, `Markdown`, `nltk`, `numpy`, `Pillow`, `pydantic`, `openai`, + `numba`: Now support up to the next major version (e.g. `numpy>=1.26.4,<3`) + - `pyht`: Relaxed to `>=0.1.6` to resolve `grpcio` conflicts with + `nvidia-riva-client` + - `fastapi`: Updated to support versions `>=0.115.6,<0.117.0` + - `torch`/`torchaudio`: Changed from exact pinning (`==2.5.0`) to compatible + range (`~=2.5.0`) + - `aws_sdk_bedrock_runtime`: Added Python 3.12+ constraint via environment + marker + - `numba`: Reduced minimum version to `0.60.0` for better compatibility + - Changed `NeuphonicHttpTTSService` to use a POST based request instead of the `pyneuphonic` package. This removes a package requirement, allowing Neuphonic to work with more services. diff --git a/pyproject.toml b/pyproject.toml index 02e8ab698..0c5be3a27 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,22 +20,22 @@ classifiers = [ "Topic :: Scientific/Engineering :: Artificial Intelligence" ] dependencies = [ - "aiohttp~=3.11.12", + "aiohttp>=3.11.12,<4", "audioop-lts~=0.2.1; python_version>='3.13'", "docstring_parser~=0.16", "loguru~=0.7.3", - "Markdown~=3.7", - "nltk>=3.9.1", - "numpy>=1.26.4", - "Pillow~=11.1.0", + "Markdown>=3.7,<4", + "nltk>=3.9.1,<4", + "numpy>=1.26.4,<3", + "Pillow>=11.1.0,<12", "protobuf~=5.29.3", - "pydantic~=2.10.6", + "pydantic>=2.10.6,<3", "pyloudnorm~=0.1.1", "resampy~=0.4.3", "soxr~=0.5.0", - "openai~=1.74.0", + "openai>=1.74.0,<2", # Explicit dependency pins for Python 3.11+ compatibility - "numba>=0.60.0", + "numba>=0.60.0,<1", ] [project.urls]