Skip to content

TransFlow v1.6.2

Latest

Choose a tag to compare

@Cyronlee Cyronlee released this 22 Apr 07:04

TransFlow v1.6.2

Fix translation and speaker-diarization toggles to take effect immediately without needing to switch languages or restart listening.

Bug Fixes

  • Translation toggle now works reliably mid-session — Previously, turning translation ON during an active transcription would silently drop all translations until the user switched source language. Root cause: .translationTask wasn't re-firing because equivalent TranslationSession.Configuration values were coalesced by SwiftUI. Now uses Configuration.invalidate() (Apple's documented re-trigger mechanism) and keeps the configuration alive across toggle off/on cycles.
  • Speaker diarization toggle now works mid-session — Toggling "Speaker Diarization" during listening used to only flip the setting; the diarization service is instantiated at startListening time, so the new value had no effect until a full restart. The toggle now restarts the pipeline when active.
  • Switching translation target language now restarts the pipeline — Ensures the new language pair is fully ready before the next utterance, matching the behavior of switching the source language.

Improvements

  • Centralized translation and diarization toggle flows in the view model (enableTranslation, disableTranslation, setTranslationTargetLanguage, setDiarizationEnabled), eliminating concurrent-Task races across the UI, global hotkeys, and command bar.
  • More informative logs around translation configuration lifecycle (Invalidating existing configuration / Creating new configuration) for easier diagnosis.

System Requirements

  • macOS 15.0 or later
  • Apple Silicon (arm64) or Intel (x86_64)