From 328bdca61c76ab47eeb35ef9a2ea5738fbd00fe9 Mon Sep 17 00:00:00 2001 From: Jamie Pine Date: Mon, 20 Apr 2026 23:33:07 -0700 Subject: [PATCH] =?UTF-8?q?Bump=20version:=200.4.2=20=E2=86=92=200.4.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- CHANGELOG.md | 15 ++++++++++++++- app/package.json | 2 +- backend/__init__.py | 2 +- landing/package.json | 2 +- package.json | 2 +- tauri/package.json | 2 +- tauri/src-tauri/Cargo.lock | 2 +- tauri/src-tauri/Cargo.toml | 2 +- tauri/src-tauri/tauri.conf.json | 2 +- web/package.json | 2 +- 11 files changed, 24 insertions(+), 11 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 50c9f745..37c55d76 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.4.2 +current_version = 0.4.3 commit = True tag = True tag_name = v{new_version} diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ed890c3..47740c00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,18 @@ ## [Unreleased] +## [0.4.3] - 2026-04-20 + +A patch focused on two user-impacting reliability fixes: macOS DMG notarization (unblocks `brew install voicebox` on macOS 15 Sequoia and fixes spurious "app isn't signed" Gatekeeper dialogs on older Intel Macs) and Kokoro Japanese voice initialization on fresh installs. + +### macOS + +- **DMGs are now notarized and stapled** ([#523](https://github.com/jamiepine/voicebox/pull/523)). Tauri's bundler notarizes the `.app` inside the DMG but ships the DMG wrapper itself unnotarized. Gatekeeper rejects that on macOS 15 Sequoia (confirmed by Homebrew Cask CI failing on both arm and intel Sequoia runners) and causes the "the app is not signed" dialog on older Intel Macs when Apple's notarization servers are slow or unreachable ([#509](https://github.com/jamiepine/voicebox/issues/509)). The release workflow now submits each DMG to `notarytool`, staples the ticket, verifies with `spctl`, and overwrites the draft-release asset `tauri-action` uploaded. Adds ~5-10 min per macOS job. + +### Backend + +- **Kokoro Japanese voices no longer crash on fresh installs** ([#521](https://github.com/jamiepine/voicebox/pull/521), fixes [#514](https://github.com/jamiepine/voicebox/issues/514)). `misaki[ja]` pulls in `fugashi`, which needs a MeCab dictionary on disk. The `unidic` package that was being installed ships no data and expects a ~526MB runtime download that `just setup` doesn't run (and which wouldn't survive PyInstaller anyway). Swapped to `unidic-lite`, which bundles a MeCab-compatible dict inside the wheel (~50MB). Collected in `build_binary.py` so frozen builds pick up `unidic_lite/dicdir/`. + ## [0.4.2] - 2026-04-20 This release localizes the entire app. English, Simplified Chinese (zh-CN), Traditional Chinese (zh-TW), and Japanese (ja) are wired up end-to-end across every tab, modal, dialog, and toast — 559 translation keys per locale, parity verified. Plus a batch of reliability fixes: offline-mode now actually stays offline, Chatterbox accepts reference samples it used to reject, MLX Qwen 0.6B points at the right repo, and macOS system audio survives backgrounding. @@ -626,7 +638,8 @@ The first public release of Voicebox — an open-source voice synthesis studio p Tauri v2, React, TypeScript, Tailwind CSS, FastAPI, Qwen3-TTS, Whisper, SQLite -[Unreleased]: https://github.com/jamiepine/voicebox/compare/v0.4.2...HEAD +[Unreleased]: https://github.com/jamiepine/voicebox/compare/v0.4.3...HEAD +[0.4.3]: https://github.com/jamiepine/voicebox/compare/v0.4.2...v0.4.3 [0.4.2]: https://github.com/jamiepine/voicebox/compare/v0.4.1...v0.4.2 [0.4.1]: https://github.com/jamiepine/voicebox/compare/v0.4.0...v0.4.1 [0.4.0]: https://github.com/jamiepine/voicebox/compare/v0.3.0...v0.4.0 diff --git a/app/package.json b/app/package.json index e0ad1de3..926fd26f 100644 --- a/app/package.json +++ b/app/package.json @@ -1,6 +1,6 @@ { "name": "@voicebox/app", - "version": "0.4.2", + "version": "0.4.3", "private": true, "type": "module", "scripts": { diff --git a/backend/__init__.py b/backend/__init__.py index 7b2089a7..14fcb642 100644 --- a/backend/__init__.py +++ b/backend/__init__.py @@ -1,3 +1,3 @@ # Backend package -__version__ = "0.4.1" +__version__ = "0.4.3" diff --git a/landing/package.json b/landing/package.json index 6c4c1f12..b1e37b0e 100644 --- a/landing/package.json +++ b/landing/package.json @@ -1,6 +1,6 @@ { "name": "@voicebox/landing", - "version": "0.4.2", + "version": "0.4.3", "description": "Landing page for voicebox.sh", "scripts": { "dev": "next dev --turbo", diff --git a/package.json b/package.json index 835cd67d..c107244c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "voicebox", - "version": "0.4.2", + "version": "0.4.3", "private": true, "workspaces": [ "app", diff --git a/tauri/package.json b/tauri/package.json index 8648ef40..1b031911 100644 --- a/tauri/package.json +++ b/tauri/package.json @@ -1,7 +1,7 @@ { "name": "@voicebox/tauri", "private": true, - "version": "0.4.2", + "version": "0.4.3", "type": "module", "scripts": { "dev": "vite", diff --git a/tauri/src-tauri/Cargo.lock b/tauri/src-tauri/Cargo.lock index 84e3c762..59b776bc 100644 --- a/tauri/src-tauri/Cargo.lock +++ b/tauri/src-tauri/Cargo.lock @@ -5041,7 +5041,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "voicebox" -version = "0.4.2" +version = "0.4.3" dependencies = [ "base64 0.22.1", "core-foundation-sys", diff --git a/tauri/src-tauri/Cargo.toml b/tauri/src-tauri/Cargo.toml index 0eda106a..dce80daf 100644 --- a/tauri/src-tauri/Cargo.toml +++ b/tauri/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "voicebox" -version = "0.4.2" +version = "0.4.3" description = "A production-quality desktop app for Qwen3-TTS voice cloning and generation" authors = ["you"] license = "" diff --git a/tauri/src-tauri/tauri.conf.json b/tauri/src-tauri/tauri.conf.json index 0d76cc03..91be8612 100644 --- a/tauri/src-tauri/tauri.conf.json +++ b/tauri/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "Voicebox", - "version": "0.4.2", + "version": "0.4.3", "identifier": "sh.voicebox.app", "build": { "beforeDevCommand": "bun run dev", diff --git a/web/package.json b/web/package.json index 7f18beb6..25a2f7c2 100644 --- a/web/package.json +++ b/web/package.json @@ -1,7 +1,7 @@ { "name": "@voicebox/web", "private": true, - "version": "0.4.2", + "version": "0.4.3", "type": "module", "scripts": { "dev": "vite",