Repository navigation
v0.20.9
Changed
- The bundle carries the agent, not its build tree. Staging ran
pnpm install --prodinside the copy, which resolved every dependency of
every workspace package: 32,077 files and 524MB, where the shipped CLI runs
dist/— 771 files that already have every JavaScript dependency inlined. What
a bundle cannot carry is a native module, so the stage now copies exactly the
packages esbuild markedexternal, read off the build's own metafile. The tree
is 1,289 files and 205MB, and that number is not about disk: NSIS extracts
file by file, so installing was minutes ofExtract: agent\app\node_modules\@smithy\core\…and is now seconds. Verified by
running the staged agent, not by trusting the copy —initializeand
session/newboth answered from the trimmed tree.
Fixed
- The installer carries the app's icon.
bundle.windowswas empty, so NSIS
drew its own defaults while installing — the title bar, the Add/Remove Programs
entry and the uninstaller showed Tauri's mark rather than this app's.
bundle.iconhad always covered the installed app; nothing covered the
installer. - The Windows updater entry is written. The
jqthat builds it used
windows-x86_64as a bare object key, which jq cannot parse — the step failed
with a compiler error and the release published macOS alone. It never ran
before: the artifact guard above it failed first, every time. - No more console windows flashing on Windows. A console program started by
an app that has no console of its own — which every GUI app hasn't — gets a
new console allocated, and that console is a window for as long as the child
runs.git,ghand the agent are all console programs, so attaching a project
flashed a screenful of windows titledhz-agent. Every spawn in the app now asks
forCREATE_NO_WINDOW, through one trait inproc.rs; a newCommand::newthat
forgets it is a black window on somebody's screen. Nothing to do elsewhere — a
unix child has no console to be given. - Staging refuses a runtime it cannot ship. The node copied beside the
launcher was copied without being run, andbetter-sqlite3is compiled for one
ABI — so a Homebrew node (a thin binary plus dylibs at absolute paths) or a
module built under a different major produced a bundle whose agent never
answers. Both are checked now, with the cure in the message, because the
failure they prevent is an app that opens and a session that does nothing.
Fixed
What's Changed
- Install in seconds: stage the agent's bundle, not its build tree by @Hamertingo in #5
- Stop every spawned child from opening a console on Windows by @Hamertingo in #6
- Make the console trait import survive a cfg, and the node copy readable by @Hamertingo in #7
Full Changelog: v0.20.8...v0.20.9