Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,32 @@ measurement that justified them; see [docs/EVALUATION.md](docs/EVALUATION.md).
Format loosely follows [Keep a Changelog](https://keepachangelog.com/). Release dates use the
repository's local calendar date.

## 0.6.3 - 2026-09-07

### Fixed

- **A downloaded app could not find its own speech detector, and died the first time you spoke.**
Every macOS release before this one carries the fault. The Silero model ships inside the bundle,
but the code looked for it where SwiftPM's generated accessor points — the `.app` root, where a
signed bundle may not keep resources — and then at an absolute path inside whatever build tree
produced the binary. That fallback exists on the machine that compiled it and nowhere else, so
the app worked for anyone who built it and crashed on `fatalError` for anyone who downloaded it,
on the first recording and on every `dnt transcribe`.

Nothing could see it, because the machine that builds is the machine that tests, and the app
launches perfectly well right up until it needs the model. It was found by installing 0.6.2
through Homebrew and transcribing one file with the `dnt` that ships in the bundle.

The lookup now tries the layouts this project actually ships and checks for the resource rather
than for a bundle that merely loads. It returns nothing instead of trapping, so a build genuinely
missing the model reports that instead of killing the process.

### Added

- **`dnt doctor` reports the local speech detector**, beside the opus encoder. Whether it resolves
is a property of how a binary was packaged rather than of the code, so there needs to be
something you can ask without a network round trip.

## 0.6.2 - 2026-09-07

### Fixed
Expand Down
4 changes: 2 additions & 2 deletions Resources/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.6.2</string>
<string>0.6.3</string>
<key>CFBundleVersion</key>
<string>602</string>
<string>603</string>
<key>LSMinimumSystemVersion</key>
<string>14.0</string>
<key>LSUIElement</key>
Expand Down
2 changes: 1 addition & 1 deletion Sources/dnt/Dnt.swift
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ struct Dnt: AsyncParsableCommand {
dnt doctor --probe
dnt logs --follow --level debug
""",
version: "dnt 0.6.2 (c29cbda, 2026-09-06)",
version: "dnt 0.6.3 (d2db0ee, 2026-09-07)",
subcommands: [
Transcribe.self, Providers.self, Doctor.self, HistoryCommand.self, LogsCommand.self,
PromptCommand.self,
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.6.2
0.6.3
4 changes: 2 additions & 2 deletions android/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ android {
// coroutine APIs used here available without desugaring.
minSdk = 26
targetSdk = 35
versionCode = 602
versionName = "0.6.2"
versionCode = 603
versionName = "0.6.3"
// The value is a Java literal, so the quotes are part of it.
buildConfigField("String", "BUILD_COMMIT", "\"$buildCommit\"")
buildConfigField("String", "BUILD_TIMESTAMP", "\"$buildTimestamp\"")
Expand Down
4 changes: 2 additions & 2 deletions ios/project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ settings:
SWIFT_VERSION: "6.0"
DEVELOPMENT_TEAM: 5BR9M56H9W
CODE_SIGN_STYLE: Automatic
MARKETING_VERSION: "0.6.2"
CURRENT_PROJECT_VERSION: "602"
MARKETING_VERSION: "0.6.3"
CURRENT_PROJECT_VERSION: "603"
SWIFT_STRICT_CONCURRENCY: complete

packages:
Expand Down
2 changes: 1 addition & 1 deletion windows/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<RestoreLockedMode Condition="'$(CI)' == 'true'">true</RestoreLockedMode>
<!-- The dev-build version; scripts/stamp-version.sh keeps it current and release builds
override it with -p:Version. -->
<Version>0.6.2</Version>
<Version>0.6.3</Version>
</PropertyGroup>

<!-- A bug report that cannot name the build it came from is a guess. Version alone is not
Expand Down
2 changes: 1 addition & 1 deletion windows/DoNotType.App/app.manifest
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="0.6.2.0" name="DoNotType.App"/>
<assemblyIdentity version="0.6.3.0" name="DoNotType.App"/>

<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
Expand Down
2 changes: 1 addition & 1 deletion windows/DoNotType.Cli/InspectionCommands.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ void Bad(string name, string value)
problems.Add($"{name}: {value}");
}

Out.Line("DoNotType — dnt 0.6.2 (c29cbda, 2026-09-06)");
Out.Line("DoNotType — dnt 0.6.3 (d2db0ee, 2026-09-07)");

Out.Line("\nEnvironment");
Row("os", Environment.OSVersion.VersionString);
Expand Down
2 changes: 1 addition & 1 deletion windows/DoNotType.Cli/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ longer than 90 seconds are split on silence and transcribed concurrently.

private static int Version()
{
Out.Line("dnt 0.6.2 (c29cbda, 2026-09-06)");
Out.Line("dnt 0.6.3 (d2db0ee, 2026-09-07)");
return 0;
}

Expand Down
Loading