v3.6.0 #77
svdC1
announced in
Announcements
v3.6.0
#77
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
This release hardens the
Modal-hosted deploy and adds new host compute modes.It makes host data durable against a mid-write preemption, adds an offload-less
GPU host and a non-preemptible CPU host, adds a
modal logscommand, and reworksthe image-version pin into a single deploy-time option applied across every image
command. It also fixes a
Windowscrash in themodalCLI, several volume-syncinefficiencies, a stop that could not delete the volume, and a host-mode toggle
that silently did nothing
Breaking Changes
The image-version pin is renamed. The
MIRUMOJI_VERSIONconfig key becomesMIRUMOJI_IMAGE_VERSIONand the--versioncommand flag becomes--image-version, with no compatibility alias, so update any script orconfig that pinned an image version
The global
mirumoji --version(which prints the installed packageversion) is unchanged
Added
Launcher→ An offload-less GPU host. SettingMIRUMOJI_HOST_ON_GPU=1(or passing
--host-on-gpu) runs the whole host on a GPU with thelocalwhisper backend in-process, on the
MIRUMOJI_MODAL_GPUtype, so there is asingle always-warm app and no on-demand offload worker
Launcher→ A non-preemptible CPU host.MIRUMOJI_HOST_NONPREEMPTIBLE=1(or
--nonpreemptible) runs the host on guaranteed capacity at a 3x price, soa spot reclaim never restarts it mid-job. It cannot be combined with a GPU host,
which
Modaldoes not allowLauncher→ Amirumoji modal logscommand that fetches the hosted app'srecent logs (
--tail) or live-follows them (--follow, stopped withCtrl+C)
Launcher→--image-versionis honored by every image command (up,pull,render,build,modal deploy), andbuildnow checks out thematching
v<version>source tagChanged
Launcher→ The image-version pin is a single deploy-time option resolvedin one place (flag, then config, then shell, then the installed version) and
is never injected into a container. See the breaking note above for the
MIRUMOJI_VERSION/--versionrenameFixed
Launcher→ AFix-SRT(or any media write) could survive a mid-writeModalpreemption as a database row whose media file was missing. Media writesare now atomic (written to a temporary sibling and renamed into place) and the
background volume sync is ordered, so the volume never holds a row referencing a
file that has not been mirrored yet
Launcher→ ThemodalCLI could crash partway through onWindowswhenits output held a character the legacy
cp1252console could not encode (a boxborder or a Japanese filename), so
download-dataand log fetching could fail.Its subprocesses now encode their output as
utf-8Launcher→mirumoji modal down --volumecould not delete the datavolume once the app had stopped or failed to stop. A stop failure is now a
warning, so the volume is still deleted
Launcher→ The host volume sync thrashed theFUSElayer, re-copying atranscription's growing scratch audio and the streamed-back converted video many
times over. Transient scratch is no longer mirrored, and the offload worker's
result is written atomically, so each file is copied once
This discussion was created from the release v3.6.0.
All reactions