From 10252f70be2b562f7e7bbbd5a9e0067c98163655 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2026 11:39:56 +0000 Subject: [PATCH 1/3] chore: release main --- .github/.release-please-manifest.json | 22 ++++++++++---------- CHANGELOG.md | 22 ++++++++++++++++++++ packages/deepctl-cmd-billing/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-billing/pyproject.toml | 2 +- packages/deepctl-cmd-keys/CHANGELOG.md | 13 ++++++++++++ packages/deepctl-cmd-keys/pyproject.toml | 2 +- packages/deepctl-cmd-mcp/CHANGELOG.md | 7 +++++++ packages/deepctl-cmd-mcp/pyproject.toml | 2 +- packages/deepctl-cmd-members/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-members/pyproject.toml | 2 +- packages/deepctl-cmd-models/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-models/pyproject.toml | 2 +- packages/deepctl-cmd-projects/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-projects/pyproject.toml | 2 +- packages/deepctl-cmd-read/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-read/pyproject.toml | 2 +- packages/deepctl-cmd-requests/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-requests/pyproject.toml | 2 +- packages/deepctl-cmd-usage/CHANGELOG.md | 14 +++++++++++++ packages/deepctl-cmd-usage/pyproject.toml | 2 +- packages/deepctl-core/CHANGELOG.md | 8 +++++++ packages/deepctl-core/pyproject.toml | 2 +- pyproject.toml | 2 +- src/deepctl/__init__.py | 2 +- 24 files changed, 171 insertions(+), 23 deletions(-) diff --git a/.github/.release-please-manifest.json b/.github/.release-please-manifest.json index 1ae5e6e..2819f40 100644 --- a/.github/.release-please-manifest.json +++ b/.github/.release-please-manifest.json @@ -1,13 +1,13 @@ { - ".": "0.2.27", - "packages/deepctl-core": "0.2.15", + ".": "0.3.0", + "packages/deepctl-core": "0.2.16", "packages/deepctl-shared-utils": "0.1.12", "packages/deepctl-telemetry": "0.0.6", "packages/deepctl-cmd-api": "0.0.2", "packages/deepctl-cmd-login": "0.1.17", - "packages/deepctl-cmd-projects": "0.1.13", + "packages/deepctl-cmd-projects": "0.2.0", "packages/deepctl-cmd-transcribe": "0.1.12", - "packages/deepctl-cmd-usage": "0.1.13", + "packages/deepctl-cmd-usage": "0.2.0", "packages/deepctl-cmd-debug": "0.1.12", "packages/deepctl-cmd-debug-audio": "0.1.13", "packages/deepctl-cmd-debug-browser": "0.1.12", @@ -15,19 +15,19 @@ "packages/deepctl-cmd-debug-probe": "0.0.2", "packages/deepctl-cmd-debug-toolkit": "0.1.0", "packages/deepctl-cmd-ffprobe": "0.0.2", - "packages/deepctl-cmd-mcp": "0.1.14", + "packages/deepctl-cmd-mcp": "0.1.15", "packages/deepctl-cmd-update": "0.2.6", "packages/deepctl-cmd-plugin": "0.1.12", "packages/deepctl-cmd-skills": "0.0.7", "packages/deepctl-cmd-init": "0.0.4", - "packages/deepctl-cmd-models": "0.0.2", + "packages/deepctl-cmd-models": "0.1.0", "packages/deepctl-cmd-speak": "0.0.4", - "packages/deepctl-cmd-keys": "0.0.3", - "packages/deepctl-cmd-read": "0.0.2", + "packages/deepctl-cmd-keys": "0.1.0", + "packages/deepctl-cmd-read": "0.1.0", "packages/deepctl-cmd-listen": "0.0.14", - "packages/deepctl-cmd-requests": "0.0.2", - "packages/deepctl-cmd-billing": "0.0.2", - "packages/deepctl-cmd-members": "0.0.3", + "packages/deepctl-cmd-requests": "0.1.0", + "packages/deepctl-cmd-billing": "0.1.0", + "packages/deepctl-cmd-members": "0.1.0", "packages/deepctl-cmd-completion": "0.0.3", "packages/deepctl-plugin-example": "0.1.12" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 56ad86a..08c76ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [0.3.0](https://github.com/deepgram/cli/compare/v0.2.27...v0.3.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** cap mcp <2 (fixes broken dg mcp), commit uv.lock, require twine >=7 ([#95](https://github.com/deepgram/cli/issues/95)) ([997cd36](https://github.com/deepgram/cli/commit/997cd36f64c95d8afadb4b9fb86673153169ce1f)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **deps:** raise root dependency floors to the versions this release publishes ([c0b0023](https://github.com/deepgram/cli/commit/c0b0023e2395a65f444e5cdc9487cabd9ae2ea22)) +* exit 1, not 2, when a command crashes or is misused ([914e132](https://github.com/deepgram/cli/commit/914e132951c64f37ceab49f363ff93d567326de7)) +* keep exit 2 when Ctrl-C interrupts a running command ([b0e80e2](https://github.com/deepgram/cli/commit/b0e80e2b35484654dbb5afaae6db32d0eba8bdfe)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) +* **release:** bump pypi-publish action to v1.14.2 for Metadata-Version 2.5 ([#94](https://github.com/deepgram/cli/issues/94)) ([582cd83](https://github.com/deepgram/cli/commit/582cd831c11a1924c30f5f82e6dbe3767ccbdbad)) +* send root error and interrupt output to stderr, not stdout ([f4b7c48](https://github.com/deepgram/cli/commit/f4b7c48a2155942c0ff7865079fd016397d40482)) +* **web:** repair broken Heap snippet, upgrade astro 6→7, clear all 20 npm alerts ([#96](https://github.com/deepgram/cli/issues/96)) ([11928fe](https://github.com/deepgram/cli/commit/11928feaf5106885663bb577e252c24c3d866fd9)) + ## [0.2.27](https://github.com/deepgram/cli/compare/v0.2.26...v0.2.27) (2026-08-17) diff --git a/packages/deepctl-cmd-billing/CHANGELOG.md b/packages/deepctl-cmd-billing/CHANGELOG.md index d0f75d8..8da686f 100644 --- a/packages/deepctl-cmd-billing/CHANGELOG.md +++ b/packages/deepctl-cmd-billing/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-billing-v0.0.2...deepctl-cmd-billing-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.2](https://github.com/deepgram/cli/compare/deepctl-cmd-billing-v0.0.1...deepctl-cmd-billing-v0.0.2) (2026-03-23) diff --git a/packages/deepctl-cmd-billing/pyproject.toml b/packages/deepctl-cmd-billing/pyproject.toml index 1d5cd82..3fd445f 100644 --- a/packages/deepctl-cmd-billing/pyproject.toml +++ b/packages/deepctl-cmd-billing/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-billing" -version = "0.0.2" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "Billing command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-keys/CHANGELOG.md b/packages/deepctl-cmd-keys/CHANGELOG.md index fd25d69..caf6df6 100644 --- a/packages/deepctl-cmd-keys/CHANGELOG.md +++ b/packages/deepctl-cmd-keys/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-keys-v0.0.3...deepctl-cmd-keys-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.3](https://github.com/deepgram/cli/compare/deepctl-cmd-keys-v0.0.2...deepctl-cmd-keys-v0.0.3) (2026-03-29) diff --git a/packages/deepctl-cmd-keys/pyproject.toml b/packages/deepctl-cmd-keys/pyproject.toml index 3f88c6e..7a98b69 100644 --- a/packages/deepctl-cmd-keys/pyproject.toml +++ b/packages/deepctl-cmd-keys/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-keys" -version = "0.0.3" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "API keys management command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-mcp/CHANGELOG.md b/packages/deepctl-cmd-mcp/CHANGELOG.md index a846759..06dc9ae 100644 --- a/packages/deepctl-cmd-mcp/CHANGELOG.md +++ b/packages/deepctl-cmd-mcp/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.1.15](https://github.com/deepgram/cli/compare/deepctl-cmd-mcp-v0.1.14...deepctl-cmd-mcp-v0.1.15) (2026-08-19) + + +### Bug Fixes + +* **deps:** cap mcp <2 (fixes broken dg mcp), commit uv.lock, require twine >=7 ([#95](https://github.com/deepgram/cli/issues/95)) ([997cd36](https://github.com/deepgram/cli/commit/997cd36f64c95d8afadb4b9fb86673153169ce1f)) + ## [0.1.14](https://github.com/deepgram/cli/compare/deepctl-cmd-mcp-v0.1.13...deepctl-cmd-mcp-v0.1.14) (2026-05-12) diff --git a/packages/deepctl-cmd-mcp/pyproject.toml b/packages/deepctl-cmd-mcp/pyproject.toml index 9781cfe..df89294 100644 --- a/packages/deepctl-cmd-mcp/pyproject.toml +++ b/packages/deepctl-cmd-mcp/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-mcp" -version = "0.1.14" # x-release-please-version +version = "0.1.15" # x-release-please-version description = "MCP proxy command for deepctl — connects to Deepgram's developer API" readme = "README.md" authors = [{ name = "Deepgram", email = "devrel@deepgram.com" }] diff --git a/packages/deepctl-cmd-members/CHANGELOG.md b/packages/deepctl-cmd-members/CHANGELOG.md index e175a6f..cef90dc 100644 --- a/packages/deepctl-cmd-members/CHANGELOG.md +++ b/packages/deepctl-cmd-members/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-members-v0.0.3...deepctl-cmd-members-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.3](https://github.com/deepgram/cli/compare/deepctl-cmd-members-v0.0.2...deepctl-cmd-members-v0.0.3) (2026-03-29) diff --git a/packages/deepctl-cmd-members/pyproject.toml b/packages/deepctl-cmd-members/pyproject.toml index 0b5116e..87a8d1b 100644 --- a/packages/deepctl-cmd-members/pyproject.toml +++ b/packages/deepctl-cmd-members/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-members" -version = "0.0.3" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "Members management command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-models/CHANGELOG.md b/packages/deepctl-cmd-models/CHANGELOG.md index 981fd24..e867369 100644 --- a/packages/deepctl-cmd-models/CHANGELOG.md +++ b/packages/deepctl-cmd-models/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-models-v0.0.2...deepctl-cmd-models-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.2](https://github.com/deepgram/cli/compare/deepctl-cmd-models-v0.0.1...deepctl-cmd-models-v0.0.2) (2026-03-23) diff --git a/packages/deepctl-cmd-models/pyproject.toml b/packages/deepctl-cmd-models/pyproject.toml index 18852e0..9f025c3 100644 --- a/packages/deepctl-cmd-models/pyproject.toml +++ b/packages/deepctl-cmd-models/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-models" -version = "0.0.2" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "Models command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-projects/CHANGELOG.md b/packages/deepctl-cmd-projects/CHANGELOG.md index 732a458..d987524 100644 --- a/packages/deepctl-cmd-projects/CHANGELOG.md +++ b/packages/deepctl-cmd-projects/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.2.0](https://github.com/deepgram/cli/compare/deepctl-cmd-projects-v0.1.13...deepctl-cmd-projects-v0.2.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.1.13](https://github.com/deepgram/cli/compare/deepctl-cmd-projects-v0.1.12...deepctl-cmd-projects-v0.1.13) (2026-08-17) diff --git a/packages/deepctl-cmd-projects/pyproject.toml b/packages/deepctl-cmd-projects/pyproject.toml index c7d7258..93ab69c 100644 --- a/packages/deepctl-cmd-projects/pyproject.toml +++ b/packages/deepctl-cmd-projects/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-projects" -version = "0.1.13" # x-release-please-version +version = "0.2.0" # x-release-please-version description = "Projects command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-read/CHANGELOG.md b/packages/deepctl-cmd-read/CHANGELOG.md index fa652a2..aef021b 100644 --- a/packages/deepctl-cmd-read/CHANGELOG.md +++ b/packages/deepctl-cmd-read/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-read-v0.0.2...deepctl-cmd-read-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.2](https://github.com/deepgram/cli/compare/deepctl-cmd-read-v0.0.1...deepctl-cmd-read-v0.0.2) (2026-03-23) diff --git a/packages/deepctl-cmd-read/pyproject.toml b/packages/deepctl-cmd-read/pyproject.toml index beeb51c..0e58d4f 100644 --- a/packages/deepctl-cmd-read/pyproject.toml +++ b/packages/deepctl-cmd-read/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-read" -version = "0.0.2" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "Read (text intelligence) command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-requests/CHANGELOG.md b/packages/deepctl-cmd-requests/CHANGELOG.md index 2cce535..4a985f2 100644 --- a/packages/deepctl-cmd-requests/CHANGELOG.md +++ b/packages/deepctl-cmd-requests/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.1.0](https://github.com/deepgram/cli/compare/deepctl-cmd-requests-v0.0.2...deepctl-cmd-requests-v0.1.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.0.2](https://github.com/deepgram/cli/compare/deepctl-cmd-requests-v0.0.1...deepctl-cmd-requests-v0.0.2) (2026-03-23) diff --git a/packages/deepctl-cmd-requests/pyproject.toml b/packages/deepctl-cmd-requests/pyproject.toml index 5bde238..55f73b4 100644 --- a/packages/deepctl-cmd-requests/pyproject.toml +++ b/packages/deepctl-cmd-requests/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-requests" -version = "0.0.2" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "Requests history command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-cmd-usage/CHANGELOG.md b/packages/deepctl-cmd-usage/CHANGELOG.md index d9180df..218b372 100644 --- a/packages/deepctl-cmd-usage/CHANGELOG.md +++ b/packages/deepctl-cmd-usage/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.2.0](https://github.com/deepgram/cli/compare/deepctl-cmd-usage-v0.1.13...deepctl-cmd-usage-v0.2.0) (2026-08-19) + + +### ⚠ BREAKING CHANGES + +* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* dependency floors that let dg update skip this release, and exit-code + error-stream correctness ([#102](https://github.com/deepgram/cli/issues/102)) ([fd1e8a4](https://github.com/deepgram/cli/commit/fd1e8a4a2b34a85c37729fd80690c93b28c92281)) +* **deps:** raise deepctl-core floor to 0.2.16 in the eight packages that import get_status_console ([98f9e91](https://github.com/deepgram/cli/commit/98f9e912682aff85836dbef40ee65391bb579fae)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.1.13](https://github.com/deepgram/cli/compare/deepctl-cmd-usage-v0.1.12...deepctl-cmd-usage-v0.1.13) (2026-08-17) diff --git a/packages/deepctl-cmd-usage/pyproject.toml b/packages/deepctl-cmd-usage/pyproject.toml index 6feffd4..c58eaa6 100644 --- a/packages/deepctl-cmd-usage/pyproject.toml +++ b/packages/deepctl-cmd-usage/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-cmd-usage" -version = "0.1.13" # x-release-please-version +version = "0.2.0" # x-release-please-version description = "Usage command for deepctl" readme = "README.md" license = "MIT" diff --git a/packages/deepctl-core/CHANGELOG.md b/packages/deepctl-core/CHANGELOG.md index 9caf7aa..2e3c284 100644 --- a/packages/deepctl-core/CHANGELOG.md +++ b/packages/deepctl-core/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.2.16](https://github.com/deepgram/cli/compare/deepctl-core-v0.2.15...deepctl-core-v0.2.16) (2026-08-19) + + +### Bug Fixes + +* correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) +* **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + ## [0.2.15](https://github.com/deepgram/cli/compare/deepctl-core-v0.2.14...deepctl-core-v0.2.15) (2026-08-17) diff --git a/packages/deepctl-core/pyproject.toml b/packages/deepctl-core/pyproject.toml index 9f520d6..f577ebe 100644 --- a/packages/deepctl-core/pyproject.toml +++ b/packages/deepctl-core/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl-core" -version = "0.2.15" # x-release-please-version +version = "0.2.16" # x-release-please-version description = "Core components for deepctl" readme = "README.md" license = "MIT" diff --git a/pyproject.toml b/pyproject.toml index a3c377e..6de5755 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deepctl" -version = "0.2.27" # x-release-please-version +version = "0.3.0" # x-release-please-version description = "Official Deepgram CLI for speech recognition and audio intelligence" readme = "README.md" license = "MIT" diff --git a/src/deepctl/__init__.py b/src/deepctl/__init__.py index d9b31f8..ca4367c 100644 --- a/src/deepctl/__init__.py +++ b/src/deepctl/__init__.py @@ -1,7 +1,7 @@ """deepctl - Official command-line interface for Deepgram's speech recognition API.""" -__version__ = "0.2.27" # x-release-please-version +__version__ = "0.3.0" # x-release-please-version __author__ = "Deepgram" __email__ = "devrel@deepgram.com" __license__ = "MIT" From 454026a0010701090a2fc77e5e0a0e925d0ef902 Mon Sep 17 00:00:00 2001 From: Greg Holmes Date: Wed, 19 Aug 2026 13:04:47 +0100 Subject: [PATCH 2/3] chore: sync uv.lock and raise root floors to the versions this release publishes Two edits the release PR needs before it can go green and deliver correctly. uv.lock: release-please rewrote `version = ...` in 11 pyproject.toml files, which stales the lock's pinned workspace members. Every test job starts with `uv sync --locked`, so all 16 failed in ~10s before running a test. This is the recurring eff5291 wall and it fires on every release until release.yml regenerates the lock itself. Root floors: the eight command packages landed on minor bumps rather than the patches the floors in #102 were computed against, because the #102 merge commit carried `fix!:` plus the BREAKING CHANGE footer and its first-parent diff spans all eight package pyproject.toml files -- so release-please attributed the break to each of them. keys/members/models/read/requests/ billing went to 0.1.0 and projects/usage to 0.2.0, leaving root's floors below what publishes. Delivery still worked this cycle (each floor sits above the version currently on PyPI, so pip is forced to upgrade), but it re-seeded exactly the staleness #102 set out to fix: next cycle a user on 0.1.0 would satisfy `>=0.0.4` and pip would skip the upgrade. Floors now match the manifest exactly. Verified: `uv lock --check` and `uv sync --locked` clean, `make check` clean (ruff + mypy, 115 files), 1094 passed / 6 skipped, and every root floor equal to its manifest version for all 17 packages publishing a new version. --- pyproject.toml | 16 ++++++++-------- uv.lock | 22 +++++++++++----------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 6de5755..0f0a29c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,9 +37,9 @@ dependencies = [ "deepgram-sdk>=7.7.0,<8", "deepctl-core>=0.2.16", "deepctl-cmd-login>=0.1.17", - "deepctl-cmd-projects>=0.1.14", + "deepctl-cmd-projects>=0.2.0", "deepctl-cmd-transcribe>=0.1.10", - "deepctl-cmd-usage>=0.1.14", + "deepctl-cmd-usage>=0.2.0", "deepctl-cmd-mcp>=0.1.15", "deepctl-cmd-api>=0.0.1", "deepctl-cmd-debug>=0.1.10", @@ -53,14 +53,14 @@ dependencies = [ "deepctl-cmd-plugin>=0.1.10", "deepctl-cmd-skills>=0.0.7", "deepctl-cmd-init>=0.0.1", - "deepctl-cmd-models>=0.0.3", + "deepctl-cmd-models>=0.1.0", "deepctl-cmd-speak>=0.0.4", - "deepctl-cmd-keys>=0.0.4", - "deepctl-cmd-read>=0.0.3", + "deepctl-cmd-keys>=0.1.0", + "deepctl-cmd-read>=0.1.0", "deepctl-cmd-listen>=0.0.14", - "deepctl-cmd-requests>=0.0.3", - "deepctl-cmd-billing>=0.0.3", - "deepctl-cmd-members>=0.0.4", + "deepctl-cmd-requests>=0.1.0", + "deepctl-cmd-billing>=0.1.0", + "deepctl-cmd-members>=0.1.0", "deepctl-cmd-completion>=0.0.1", "deepctl-shared-utils>=0.1.10", "deepctl-telemetry>=0.0.6", diff --git a/uv.lock b/uv.lock index 599a533..94ba75a 100644 --- a/uv.lock +++ b/uv.lock @@ -855,7 +855,7 @@ wheels = [ [[package]] name = "deepctl" -version = "0.2.27" +version = "0.3.0" source = { editable = "." } dependencies = [ { name = "click" }, @@ -1052,7 +1052,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-billing" -version = "0.0.2" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-billing" } dependencies = [ { name = "click" }, @@ -1288,7 +1288,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-keys" -version = "0.0.3" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-keys" } dependencies = [ { name = "click" }, @@ -1360,7 +1360,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-mcp" -version = "0.1.14" +version = "0.1.15" source = { editable = "packages/deepctl-cmd-mcp" } dependencies = [ { name = "click" }, @@ -1400,7 +1400,7 @@ provides-extras = ["dev"] [[package]] name = "deepctl-cmd-members" -version = "0.0.3" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-members" } dependencies = [ { name = "click" }, @@ -1419,7 +1419,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-models" -version = "0.0.2" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-models" } dependencies = [ { name = "click" }, @@ -1455,7 +1455,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-projects" -version = "0.1.13" +version = "0.2.0" source = { editable = "packages/deepctl-cmd-projects" } dependencies = [ { name = "click" }, @@ -1476,7 +1476,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-read" -version = "0.0.2" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-read" } dependencies = [ { name = "click" }, @@ -1495,7 +1495,7 @@ requires-dist = [ [[package]] name = "deepctl-cmd-requests" -version = "0.0.2" +version = "0.1.0" source = { editable = "packages/deepctl-cmd-requests" } dependencies = [ { name = "click" }, @@ -1601,7 +1601,7 @@ provides-extras = ["dev"] [[package]] name = "deepctl-cmd-usage" -version = "0.1.13" +version = "0.2.0" source = { editable = "packages/deepctl-cmd-usage" } dependencies = [ { name = "click" }, @@ -1624,7 +1624,7 @@ requires-dist = [ [[package]] name = "deepctl-core" -version = "0.2.15" +version = "0.2.16" source = { editable = "packages/deepctl-core" } dependencies = [ { name = "click" }, From bb3126f525ec5e3d3df4bb11799132c3b2029644 Mon Sep 17 00:00:00 2001 From: Greg Holmes Date: Wed, 19 Aug 2026 13:09:16 +0100 Subject: [PATCH 3/3] chore: note 0.3.0 behavior changes and drop the duplicated breaking bullet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-applies the prose from 21b8333 and e327a5e, which release-please discarded when it regenerated this PR, updated for 0.3.0 and for the changes that landed since: * The generated `⚠ BREAKING CHANGES` list carried the exit-code paragraph twice. The footer exists both on 914e132 and on the #102 merge commit (whose body is the PR description, where the footer was repeated as insurance against a squash), and both touch root paths, so release-please emitted it once per commit. Deduped to one. The eight command packages list it once each and are unaffected. * `### Behavior changes` now covers usage errors exiting 1, interrupt staying 2, and error/cancellation output moving from stdout to stderr, alongside the yaml/csv and `keys` items from the original prose. Framed as additions to the breaking entry above rather than restating it. * `### Previously unreleased` reads 0.2.26 -> 0.3.0, and records that the pip floor repair is what makes this release actually arrive. * deepctl-core keeps its three behavior notes, with the `get_status_console()` entry now naming the `>=0.2.16` floor its importers need. Mirrored into the release PR body so the published notes and the committed changelog say the same thing. --- CHANGELOG.md | 24 +++++++++++++++++++++++- packages/deepctl-core/CHANGELOG.md | 7 +++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 08c76ce..0dbb602 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,6 @@ ### ⚠ BREAKING CHANGES -* `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. * `dg` now exits non-zero when a command fails: 1 for errors (including crashes and usage errors), 2 for user interrupt, 0 on success. Every command previously exited 0 regardless of outcome, so scripts and CI steps that ignored the exit code will surface failures they were silently swallowing. No command that succeeds changes its exit code. ### Bug Fixes @@ -22,6 +21,29 @@ * send root error and interrupt output to stderr, not stdout ([f4b7c48](https://github.com/deepgram/cli/commit/f4b7c48a2155942c0ff7865079fd016397d40482)) * **web:** repair broken Heap snippet, upgrade astro 6→7, clear all 20 npm alerts ([#96](https://github.com/deepgram/cli/issues/96)) ([11928fe](https://github.com/deepgram/cli/commit/11928feaf5106885663bb577e252c24c3d866fd9)) + +### Behavior changes + +Alongside the exit-code change above, upgrading to 0.3.0 changes these: + +* The full exit-code contract is now enforced end to end: `0` = success, `1` = error, `2` = user interrupt. Crashes **and usage errors** (bad flag, unknown command, bare `dg`) exit `1`; `2` is reserved for cancellation, so Ctrl-C during a running command and Ctrl-D at a prompt both still exit `2`. +* Error and cancellation messages are written to **stderr** instead of stdout. `dg -o json …` therefore keeps stdout machine-readable when a command fails — previously a failure printed `Error: …` prose to stdout, so a script piping stdout into `jq` parsed the error text instead of JSON. Successful commands still write their payload to stdout. +* `-o yaml` and `-o csv` no longer drop square-bracketed text from values. Output was passed through a renderer that read `[...]` as style markup and deleted it, so an API key comment of `[ci] runner` was emitted as `runner`. Long values are also no longer hard-wrapped mid-field. +* `dg keys --delete KEY_ID` now asks for confirmation on stderr instead of always reporting `Cancelled by user` without deleting. In a non-interactive context it exits `1` and tells you to pass `--yes`. +* `dg keys --create --dry-run` now reports what it would create. It previously failed with an internal `TypeError`. + +### Previously unreleased + +0.2.27 was tagged on 2026-08-17 but never reached PyPI — its publish step failed with `InvalidDistribution: Invalid distribution metadata: '2.5' is not a valid metadata version`, which [#94](https://github.com/deepgram/cli/issues/94) and [#95](https://github.com/deepgram/cli/issues/95) then fixed. PyPI therefore goes straight from 0.2.26 to 0.3.0, and this release is the first published build to include the 0.2.27 changes: + +* SDK 7.7.0 — Flux TTS controls, Flux STT fix, listen redact/numerals ([#92](https://github.com/deepgram/cli/issues/92)) ([50d96cf](https://github.com/deepgram/cli/commit/50d96cf8950c9f180619e0e2dbd41931d1a63ef6)) +* **speak:** default to Flux TTS (`flux-alexis-en`) instead of Aura 2 ([#89](https://github.com/deepgram/cli/issues/89)) ([5a0b698](https://github.com/deepgram/cli/commit/5a0b6981755d58cb5a1725150bf437c81c792433)). This changes the default model for `dg speak`, so synthesised audio differs unless you pass an `aura-*` model explicitly. +* **mcp:** swallow broken/closed-pipe on dg mcp startup notifications and error path ([#88](https://github.com/deepgram/cli/issues/88)) ([b24396e](https://github.com/deepgram/cli/commit/b24396ec3c53197b1f9e5e610c57a298926f9031)) + +Six packages tagged in that cycle also reach PyPI for the first time here: `deepctl-cmd-listen` 0.0.14, `deepctl-cmd-login` 0.1.17, `deepctl-cmd-skills` 0.0.7, `deepctl-cmd-speak` 0.0.4, `deepctl-cmd-update` 0.2.6 and `deepctl-telemetry` 0.0.6. + +Because 0.2.27 never published, `dg update` on pip also had to be repaired for this release to arrive at all: root's inter-package dependency floors were lower than the versions being published, so pip's default `only-if-needed` strategy left most sub-packages stale and `dg --version` reported the new number while the fixes never landed. Floors now match the published versions exactly. + ## [0.2.27](https://github.com/deepgram/cli/compare/v0.2.26...v0.2.27) (2026-08-17) diff --git a/packages/deepctl-core/CHANGELOG.md b/packages/deepctl-core/CHANGELOG.md index 2e3c284..3645b15 100644 --- a/packages/deepctl-core/CHANGELOG.md +++ b/packages/deepctl-core/CHANGELOG.md @@ -8,6 +8,13 @@ * correct web command examples, document Flux TTS/STT, and honor -o json across account commands ([#97](https://github.com/deepgram/cli/issues/97)) ([55984ec](https://github.com/deepgram/cli/commit/55984ecbc306f24c61568c3aeea59556f96b2707)) * **keys:** honor -o json so stdout stays parseable (completes the [#97](https://github.com/deepgram/cli/issues/97) sweep) ([#101](https://github.com/deepgram/cli/issues/101)) ([e430a77](https://github.com/deepgram/cli/commit/e430a77609cbf701f52fc454907ee2ddb99dbd07)) + +### Behavior changes + +* Commands now map their result status to a process exit code (`error` → `1`, `cancelled` → `2`, otherwise `0`), and `BaseCommand.exit_code_for()` exposes that mapping. Exit codes were previously discarded, so every command exited `0`. +* `-o yaml` and `-o csv` payloads are written verbatim; the renderer no longer interprets `[...]` as markup or wraps long values. +* New `get_status_console()` returns the shared stderr console for status output. Commands should use it instead of declaring their own. Packages that import it require `deepctl-core>=0.2.16`. + ## [0.2.15](https://github.com/deepgram/cli/compare/deepctl-core-v0.2.14...deepctl-core-v0.2.15) (2026-08-17)