Skip to content

v0.9.13

Choose a tag to compare

@Lyin01 Lyin01 released this 13 Jul 10:43
· 138 commits to main since this release

Highlights

  • Fixed the install hook writing a desktop shortcut on every Windows install context: npx, local project dependencies, and workspace bootstraps no longer touch the desktop. The shortcut is now created only on true global installs, and LMCODE_NO_DESKTOP_SHORTCUT=1 opts out entirely.
  • Removed the unreachable legacy-shim PATH takeover from the install hook (~1,200 lines). It hunted for Python-era lmcode shims, but the CLI's bin is lm — the names can never collide — and its execute branch required a lmcode bin this package no longer installs. POSIX global installs no longer pay a login-shell PATH probe, and ex-Python users no longer see misleading migration notices. The UTF-8 lm.ps1 shim patch and the desktop shortcut are unchanged.

Reliability

  • The postinstall hook gained its first test coverage: the non-global no-op contract, global-install detection across npm / pnpm / yarn classic (including malformed npm_config_argv), and win32 shim-patch idempotency are pinned via real child processes with scrubbed lifecycle environments.
  • Release tooling: the publish script now publishes the CLI directly instead of via the removed changesets setup, so its final step no longer fails unconditionally.

Verification

  • Local suite: 4,947 tests passed, with 41 skipped and 2 todo.
  • Typecheck, lint, package lint, Sherif checks, and the full build passed.
  • Dual-platform CI (Windows + Ubuntu) green on PR #16.
  • npm pack ships the slimmed install hook (one file fewer); real non-global execution verified silent with exit 0.

Full Changelog: v0.9.12...v0.9.13