pipecatcloud 0.4.4__tar.gz → 0.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/CHANGELOG.md +17 -0
  2. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/PKG-INFO +3 -3
  3. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/pyproject.toml +9 -9
  4. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/deploy_utils.py +1 -0
  5. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/api.py +1 -0
  6. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/deploy.py +8 -3
  7. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/PKG-INFO +3 -3
  8. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/requires.txt +1 -1
  9. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/uv.lock +345 -748
  10. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.github/workflows/format.yml +0 -0
  11. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.github/workflows/publish-pypi.yml +0 -0
  12. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.github/workflows/publish-test.yml +0 -0
  13. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.github/workflows/tests.yml +0 -0
  14. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.gitignore +0 -0
  15. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/.pre-commit-config.yaml +0 -0
  16. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/LICENSE +0 -0
  17. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/README.md +0 -0
  18. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/pipecat-cloud.png +0 -0
  19. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/pytest.ini +0 -0
  20. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/scripts/fix-ruff.sh +0 -0
  21. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/scripts/pre-commit.sh +0 -0
  22. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/setup.cfg +0 -0
  23. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/__init__.py +0 -0
  24. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/__main__.py +0 -0
  25. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/__version__.py +0 -0
  26. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/__init__.py +0 -0
  27. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/async_utils.py +0 -0
  28. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/auth_utils.py +0 -0
  29. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/build_utils.py +0 -0
  30. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/console_utils.py +0 -0
  31. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/_utils/regions.py +0 -0
  32. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/agent.py +0 -0
  33. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/__init__.py +0 -0
  34. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/api.py +0 -0
  35. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/__init__.py +0 -0
  36. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/agent.py +0 -0
  37. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/auth.py +0 -0
  38. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/build.py +0 -0
  39. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/docker.py +0 -0
  40. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/organizations.py +0 -0
  41. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/regions.py +0 -0
  42. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/commands/secrets.py +0 -0
  43. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/config.py +0 -0
  44. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/cli/entry_point.py +0 -0
  45. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/config.py +0 -0
  46. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/constants.py +0 -0
  47. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/exception.py +0 -0
  48. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/py.typed +0 -0
  49. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/session.py +0 -0
  50. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud/smallwebrtc/session_manager.py +0 -0
  51. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/SOURCES.txt +0 -0
  52. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/dependency_links.txt +0 -0
  53. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/entry_points.txt +0 -0
  54. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/src/pipecatcloud.egg-info/top_level.txt +0 -0
  55. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/__init__.py +0 -0
  56. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/conftest.py +0 -0
  57. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_agent_sessions.py +0 -0
  58. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_agent_stop.py +0 -0
  59. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_api_client.py +0 -0
  60. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_auth.py +0 -0
  61. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_config_file.py +0 -0
  62. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_deployment_status.py +0 -0
  63. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_docker_commands.py +0 -0
  64. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_krisp_viva.py +0 -0
  65. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_pat_auth.py +0 -0
  66. {pipecatcloud-0.4.4 → pipecatcloud-0.5.0}/tests/test_regions.py +0 -0
@@ -5,6 +5,23 @@ All notable changes to **Pipecat Cloud** will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.5.0] - 2026-04-17
9
+
10
+ ### Changed
11
+
12
+ - Minimum Python version bumped from 3.10 to 3.11, matching Pipecat 1.0's
13
+ supported range (3.11-3.14). Users on Python 3.10 will continue to receive
14
+ the previous release via pip/uv version resolution.
15
+
16
+ - The `pipecatcloud[pipecat]` optional dependency now requires `pipecat-ai>=1.0.0`
17
+ (previously `>=0.0.79`).
18
+
19
+ - **`pcc deploy --force` now forces a new deployment** even if your
20
+ configuration hasn't changed. Previously, `--force` only skipped the
21
+ confirmation prompt. Use this when you want to pick up a new image
22
+ behind the same tag (e.g. `:latest`) or restart your agent instances.
23
+ `--yes` remains available for non-interactive/CI usage.
24
+
8
25
  ## [0.4.4] - 2026-04-10
9
26
 
10
27
  ### Added
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pipecatcloud
3
- Version: 0.4.4
3
+ Version: 0.5.0
4
4
  Summary: Cloud hosting for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Website, https://docs.pipecat.daily.co/
7
7
  Keywords: pipecat,pipecat-ai,voice,ai,llm
8
- Requires-Python: >=3.10
8
+ Requires-Python: >=3.11
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: aiohttp<4.0.0,>=3.11.12
@@ -18,7 +18,7 @@ Requires-Dist: synchronicity<1.0.0,>=0.11
18
18
  Requires-Dist: toml~=0.10.2
19
19
  Requires-Dist: questionary~=2.1.0
20
20
  Provides-Extra: pipecat
21
- Requires-Dist: pipecat-ai>=0.0.79; extra == "pipecat"
21
+ Requires-Dist: pipecat-ai>=1.0.0; extra == "pipecat"
22
22
  Dynamic: license-file
23
23
 
24
24
  <h1><div align="center">
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  name = "pipecatcloud"
7
7
  dynamic = ["version"]
8
- requires-python = ">=3.10"
8
+ requires-python = ">=3.11"
9
9
  description = "Cloud hosting for Pipecat AI applications"
10
10
  license = { text = "BSD 2-Clause License" }
11
11
  readme = "README.md"
@@ -23,17 +23,17 @@ dependencies = [
23
23
  ]
24
24
 
25
25
  [project.optional-dependencies]
26
- pipecat = ["pipecat-ai>=0.0.79"]
26
+ pipecat = ["pipecat-ai>=1.0.0"]
27
27
 
28
28
  [dependency-groups]
29
29
  dev = [
30
- "build~=1.2.2",
31
- "grpcio-tools~=1.67.1",
32
- "pre-commit~=4.2.0",
33
- "pyright~=1.1.402",
34
- "pytest~=8.4.1",
35
- "pytest-asyncio~=1.0.0",
36
- "ruff~=0.12.1",
30
+ "build~=1.4.0",
31
+ "grpcio-tools~=1.78.0",
32
+ "pre-commit~=4.5.1",
33
+ "pyright>=1.1.404,<1.2",
34
+ "pytest>=9.0.0,<10",
35
+ "pytest-asyncio>=1.0.0,<2",
36
+ "ruff>=0.12.11,<1",
37
37
  "setuptools~=78.1.1",
38
38
  "setuptools_scm~=8.3.1",
39
39
  ]
@@ -333,6 +333,7 @@ class DeployConfigParams:
333
333
  build_config: BuildConfig = field(factory=BuildConfig) # Cloud build configuration
334
334
  agent_profile: Optional[str] = None
335
335
  krisp_viva: KrispVivaConfig = field(factory=KrispVivaConfig)
336
+ force_redeploy: bool = False
336
337
 
337
338
  def __attrs_post_init__(self):
338
339
  if self.image is not None and ":" not in self.image:
@@ -414,6 +414,7 @@ class _API:
414
414
  "krispViva": {
415
415
  "audioFilter": deploy_config.krisp_viva.audio_filter,
416
416
  },
417
+ "forceRedeploy": deploy_config.force_redeploy or None,
417
418
  }
418
419
 
419
420
  # Use either build_id (cloud build) or image (user-provided)
@@ -346,6 +346,10 @@ async def _deploy(params: DeployConfigParams, org, force: bool = False):
346
346
  # Close the live display before starting the new polling phase
347
347
  live.stop()
348
348
 
349
+ # Surface API warning (e.g. when identical config was deployed without --force)
350
+ if result and result.get("warning"):
351
+ console.print(f"[yellow]Warning: {result['warning']}[/yellow]")
352
+
349
353
  """
350
354
  # 3. Poll status until healthy
351
355
  """
@@ -556,11 +560,11 @@ def create_deploy_command(app: typer.Typer):
556
560
  help="Region for service deployment",
557
561
  rich_help_panel="Deployment Configuration",
558
562
  ),
559
- skip_confirm: bool = typer.Option(
563
+ force: bool = typer.Option(
560
564
  False,
561
565
  "--force",
562
566
  "-f",
563
- help="Force deployment / skip confirmation",
567
+ help="Force a new deployment even if config hasn't changed",
564
568
  rich_help_panel="Additional Options",
565
569
  ),
566
570
  yes: bool = typer.Option(
@@ -632,7 +636,7 @@ def create_deploy_command(app: typer.Typer):
632
636
  org = organization or config.get("org")
633
637
 
634
638
  # Combine automation flags
635
- auto_yes = yes or skip_confirm
639
+ auto_yes = yes or force
636
640
 
637
641
  # Compose deployment config from CLI options and config file (if provided)
638
642
  # Order of precedence:
@@ -653,6 +657,7 @@ def create_deploy_command(app: typer.Typer):
653
657
  )
654
658
  partial_config.enable_krisp = krisp or partial_config.enable_krisp
655
659
  partial_config.agent_profile = profile or partial_config.agent_profile
660
+ partial_config.force_redeploy = force
656
661
 
657
662
  # Override build config from CLI args
658
663
  if build_dir:
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pipecatcloud
3
- Version: 0.4.4
3
+ Version: 0.5.0
4
4
  Summary: Cloud hosting for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Website, https://docs.pipecat.daily.co/
7
7
  Keywords: pipecat,pipecat-ai,voice,ai,llm
8
- Requires-Python: >=3.10
8
+ Requires-Python: >=3.11
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: aiohttp<4.0.0,>=3.11.12
@@ -18,7 +18,7 @@ Requires-Dist: synchronicity<1.0.0,>=0.11
18
18
  Requires-Dist: toml~=0.10.2
19
19
  Requires-Dist: questionary~=2.1.0
20
20
  Provides-Extra: pipecat
21
- Requires-Dist: pipecat-ai>=0.0.79; extra == "pipecat"
21
+ Requires-Dist: pipecat-ai>=1.0.0; extra == "pipecat"
22
22
  Dynamic: license-file
23
23
 
24
24
  <h1><div align="center">
@@ -9,4 +9,4 @@ toml~=0.10.2
9
9
  questionary~=2.1.0
10
10
 
11
11
  [pipecat]
12
- pipecat-ai>=0.0.79
12
+ pipecat-ai>=1.0.0