chore(deps): update ghcr.io/remsky/kokoro-fastapi-gpu docker tag to v0.9.0 #131
Open
renovate-bot
wants to merge 1 commit from
renovate/ghcr.io-remsky-kokoro-fastapi-gpu-0.x into main
pull from: renovate/ghcr.io-remsky-kokoro-fastapi-gpu-0.x
merge into: ops:main
ops:main
ops:renovate/gitlab-19.x
ops:renovate/node-feature-discovery-0.x
ops:renovate/ghcr.io-mogenius-helm-charts-renovate-operator-5.x
ops:renovate/docker.io-binwiederhier-ntfy-2.x
ops:renovate/ghcr.io-scanopy-scanopy-server-0.x
ops:renovate/ghcr.io-diced-zipline-4.x
ops:renovate/ghcr.io-prometheus-community-charts-prometheus-operator-crds-32.x
ops:renovate/ghcr.io-rommapp-romm-5.x
ops:renovate/ghcr.io-paperless-ngx-paperless-ngx-3.x
ops:renovate/admonstrator-paperless-ai-next-2026.x
ops:renovate/ghcr.io-perfectra1n-kubesearch-mcp-1.x
ops:renovate/registry.erwanleboucher.dev-eleboucher-charts-memini-0.x
ops:renovate/ghcr.io-prymitive-karma-0.x
ops:renovate/sentry-34.x
ops:renovate/loki-7.x
ops:renovate/ghcr.io-stacklok-toolhive-toolhive-operator-crds-0.x
ops:renovate/ghcr.io-stacklok-toolhive-toolhive-operator-0.x
ops:renovate/ghcr.io-mogenius-helm-charts-renovate-operator-6.x
ops:renovate/docker.io-healthchecks-healthchecks-5.x
ops:renovate/ghcr.io-atuinsh-atuin-18.x
ops:renovate/uv_build-0.x
ops:renovate/ghcr.io-home-operations-kromgo-0.x
ops:renovate/ghcr.io-home-operations-charts-echo-0.x
ops:renovate/ghcr.io-siderolabs-installer-1.13.x
ops:renovate/gitlab-9.x
ops:renovate/ghcr.io-ellite-wallos-5.x
ops:renovate/gitlab-10.x
ops:renovate/tailscale-operator-1.x
ops:renovate/ghcr.io-goauthentik-server-2026.x
ops:renovate/kube-prometheus-stack-92.x
ops:renovate/containers.podman-1.x
ops:renovate/ghcr.io-helmforgedev-helm-kubernetes-mcp-server-1.x
ops:renovate/ghcr.io-gethomepage-homepage-2.x
ops:renovate/ghcr.io-sysadminsmedia-homebox-0.x
ops:renovate/codefloe.com-crowci-crow-2.x
ops:renovate/ghcr.io-spegel-org-helm-charts-spegel-0.x
ops:renovate/external-secrets-2.x
ops:renovate/kube-prometheus-stack-87.x
ops:renovate/code.forgejo.org-forgejo-helm-forgejo-17.x
ops:renovate/forgejo-1.x
ops:renovate/cilium-1.x
ops:renovate/gitlab-agent-2.x
ops:renovate/python-3.x
ops:renovate/registry.gitlab.com-fmd-foss-fmd-server-0.x
ops:renovate/ghcr.io-gotson-komga-1.x
ops:renovate/open-webui-17.x
ops:renovate/ghcr.io-archivebox-archivebox-0.x
ops:renovate/ghcr.io-muety-wakapi-2.x
ops:renovate/ghcr.io-controlplaneio-fluxcd-charts-flux-operator-0.x
ops:renovate/quay.io-oauth2-proxy-oauth2-proxy-7.x
ops:renovate/external-dns-1.x
ops:renovate/plugin-barman-cloud-0.x
ops:renovate/reloader-2.x
ops:renovate/longhorn-1.x
ops:renovate/cloudnative-pg-0.x
ops:renovate/nvidia-device-plugin-0.x
ops:renovate/goldilocks-11.x
ops:renovate/quay.io-jetstack-charts-trust-manager-0.x
ops:renovate/lscr.io-linuxserver-faster-whisper-3.x
ops:renovate/goldilocks-10.x
ops:renovate/ghcr.io-sissbruecker-linkding-1.x
ops:renovate/ghcr.io-navidrome-navidrome-0.x
ops:renovate/authentik-2026.x
ops:renovate/random-3.x
ops:renovate/mirror.gcr.io-envoyproxy-gateway-helm-1.x
ops:renovate/johly-airtrail-3.x
ops:renovate/nvidia-gpu-exporter-2.x
ops:renovate/metrics-server-3.x
ops:renovate/altinity-clickhouse-operator-0.x
ops:renovate/ghcr.io-usememos-memos-0.x
ops:renovate/ghcr.io-siderolabs-kubelet-1.x
ops:renovate/kubernetes.core-6.x
ops:renovate/quay.io-jetstack-charts-cert-manager-1.x
ops:renovate/ghcr.io-siderolabs-kubelet-1.34.x
ops:renovate/ghcr.io-siderolabs-charts-talos-cloud-controller-manager-0.x
ops:renovate/crowci-0.x-lockfile
ops:renovate/quay.io-thanos-thanos-0.x
ops:renovate/open-webui-15.x
ops:renovate/mail-5.x
ops:renovate/cert-manager-webhook-pdns-3.x
ops:renovate/bluesky-pds-0.x
ops:renovate/promtail-6.x
ops:renovate/loki-6.x
ops:renovate/github.com-imusmanmalik-cert-manager-mixin-1.x
ops:renovate/lock-file-maintenance
ops:renovate/bitwarden-secrets-1.x
ops:renovate/ruby-4.x
ops:renovate/plausible-analytics-3.x
ops:renovate/sops-1.x
ops:renovate/plausible-analytics-2.x
ops:renovate/ghcr.io-gethomepage-homepage-1.x
ops:renovate/ingress-nginx-4.x
ops:renovate/ghcr.io-rommapp-romm-4.x
ops:renovate/gabehf-koito-0.x
ops:renovate/willshersystems.sshd-0.x
ops:renovate/ghcr.io-prometheus-community-charts-prometheus-operator-crds-30.x
No reviewers
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
ops/homelab!131
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "renovate/ghcr.io-remsky-kokoro-fastapi-gpu-0.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
v0.6.0→v0.9.0Release Notes
remsky/Kokoro-FastAPI (ghcr.io/remsky/kokoro-fastapi-gpu)
v0.9.0Compare Source
Added
POST /dev/tunespeaks with the tuned voice (passes through to/v1/audio/speech) or returns the.ptviareturn_voice_pack=true,ALLOW_LOCAL_VOICE_SAVING=true, saves it as<name>_tunedwithsave_voice=<name>.ENABLE_INNO_TUNER=true. See docs/inno-tune.md._innosuffix:af_amelia_inno,af_goodall_inno,am_price_inno,bm_atten_inno.normalization_options.remove_emoji, off by default: drop emoji instead of reading their names (#353).normalization_options.caps_normalization, on by default: all-caps names and headers read as words, short acronyms (FBI) still spelled.Changed
DEFAULT_VOICEapplies to requests that omit a voice, not just warmup. Reported asdefault_voiceon/v1/audio/voices.normalization_optionsfield;DEFAULT_VOICEpreselected.Fixed
3,497as thousands not a year (#259);MP3,B2B,v1.0,COVID-19read as written;.5as zero point five; long digit runs no longer stall or 500.3.5 GHz,1 min(withunit_normalization),DVDs/DVD's,12:30:15 pmread correctly.--reads as a dash and no longer fuses words or drops word timestamps (#249).v0.8.2Compare Source
Added
MODEL_AUTO_UNLOAD_TIMEOUT_SECONDS, default off) to release VRAM. Reloads on the next request./dev/modelreports load/idle state andPOST /dev/reloadpre-warms the model, both behindALLOW_DEV_UNLOAD./v1/audio/voicesentries carry the per-voice grades from VOICES.md, where graded; added in web player dropdown w/ hover for the target quality and training duration.Normalize texttoggle in settings, off sends input as written (#391, #523 by @webdevsamran).Changed
etc.,Dr., and CJK punctuation split more accurately (#308, adapts #415 by @lionel-rowe).ENABLE_MIOPEN=truerestores it (#518 by @s-kerdel).api/or set defaults already baked into the image (DOWNLOAD_MODEL,PYTHONPATH, etc).Fixed
DEFAULT_VOICE_CODEnow applies on the speech endpoints and/dev/generate_from_phonemes(#514, #515 by @Christian-Sidak, #516).start-*.shhonourHOST/PORT, soHOST=::binds IPv6-only (#408, reported by @felixls).v0.8.1Compare Source
Fixed
/v1/audio/voices/combineaccepts weighted syntax (af_bella(2)+af_sky(1)), matching the speech endpoints (#285).MAX_INPUT_LENGTH(default 1_000_000) caps characters of text per request.MAX_TOTAL_PAUSE_S(default 300) caps total[pause:Ns]/ SSML<break>silence per request.start-cpu.ps1etc) no longer need a C++ toolchain:pyopenjtalk-plus(a drop-in fork with prebuilt Windows wheels) replacespyopenjtalkon win32 only (#508, proposed by @siliconfps). Needs a recentuv. Linux, macOS, and Docker are unchanged.Changed
WEB_CONCURRENCY(uvicorn worker count) indocs/configuration.mdfor parallel model loads/concurrency (#115, #358).v0.8.0Compare Source
Added
/v1/audio/speechand/dev/captioned_speech(#294). Opt in per request withallow_voice_tags: true; disable server-wide withENABLE_VOICE_TAGS=false.[voice:name]tags switch speaker mid-text.voice_aliasesmapping for named weighted voice mixes, with optional per-aliasrate./dev/captioned_speechtimestamps carry the resolvedvoiceper word; the field is absent unlessallow_voice_tagsis on, so existing responses are unchanged.POST /dev/dialoguefor ordered multi-speaker turns.ENABLE_SSML=false.ssml: trueon/v1/audio/speechand/dev/captioned_speechtranslates and speaks in one call. Requiresallow_voice_tags: true, since the translation emits[voice:]and[rate:]spans.POST /dev/ssmlreturns the translated tokens as text instead, for inspecting them before synthesis.return_timingon/v1/audio/speech: per-chunk{text, start, end}JSON sidecar next to the download (powers the web reader).MAX_PAUSE_DURATION_S(default 60) caps a single[pause:Ns]tag or SSML<break>.docs/, versioned alongside the code.Changed
uv run, which resolves startup permission failures on Unraid and similar hosts.[rate:]tags scale the speaking voice's alias rate instead of replacing it, so a voice calibrated to 0.8 stays proportionally slower under[rate:1.1]. Matches how SSML engines treat rate..envkeys warn at startup instead of refusing to boot.Fixed
Removed
ffmpegfrom all images (~600MB); audio encoding already runs through PyAV's bundled copy.pydubdependency.voicefrom the speech parser and unusedVoiceCombineRequestschema.ui/) code cruft; superseded by the web player since ~v0.2.0/debug/session_pools.OUTPUT_DIR,OUTPUT_DIR_SIZE_LIMIT_MB,SAMPLE_RATEsettings, never read.v0.7.2Compare Source
Security
fastapi>=0.128.8,starlette>=1.3.1to close CVE-2025-62727 (quadraticRangeheader parsing inFileResponse, reachable through the audio download path) (#500).Changed
allow_credentialsnow defaults off. Starlette 1.x echoes the caller's origin withallow-credentials: truewhere 0.47 returned*; nothing here uses cookies or auth, so this keeps the prior behavior.response_formatdocs (correctly) now listaacas supported.Fixed
v0.7.1Compare Source
Added
/v1/download/{filename}takes an optional?name=save-as name (sanitized, stored extension kept) and sets it inContent-Disposition. Omitting it keeps the previous name.Changed
Content-Dispositionis now built byFileResponserather than by hand, so the filename comes back quoted (filename="x.mp3") instead of bare. The name itself is unchanged when?name=is omitted.prefers-reduced-motion.Fixed
{voice}_{timestamp}.{format}, not the temp name (#338). Covers right-click "Save audio as" too, sinceContent-Dispositionoutranks the link'sdownloadattribute.MEDIA_ERR_ABORTEDis told apart from a real error.v0.7.0Compare Source
Added
AGENTS.mdcontributor guidelines, plusSKILL.mdnotes for the API, benchmarks, and web areas.Changed / Optimizations
requests,python-dotenv, cappedtransformers<6COPY --excludeCompressed image sizes + new bases:
python:3.10-slim->python:3.12-slimcuda:12.6.3-cudnn-runtime->cuda:12.6.3-basecuda:12.8.1-cudnn-runtime->cuda:12.8.1-baseFixed
.dockerignoreFixed pycache ignore pattern to**/to ensure nested .pyc/etc stay out of build contexts.pydubimports from the audio services._find_filerejects lookups that escape its search roots (../sequences, absolute paths) to avoid unintentional exposure of files outside the voices/models/web dirs. Symlinks placed inside those dirs resolve as before.NUMBER_PATTERNno longer swallows hyphens meant as range separators, added version-number handling (2.0.1renders as "two point zero point one" instead of being split).Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate.
8425cb520etoa1b6ceaf86chore(deps): update ghcr.io/remsky/kokoro-fastapi-gpu docker tag to v0.7.1to chore(deps): update ghcr.io/remsky/kokoro-fastapi-gpu docker tag to v0.9.0View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.