Skip to content

v1.2.1

Choose a tag to compare

@lakshaymdev lakshaymdev released this 21 Feb 13:55
· 8 commits to main since this release

What's Changed

Edge Uninstall (exit code 93 fix)

  • 6-step Edge preparation: stops Edge Update services, kills processes, sets AllowUninstall registry key, prevents reinstall via DoNotUpdateToEdgeWithChromium, removes NoRemove flag, creates UWP stub
  • --force-uninstall flag always applied to Edge setup.exe
  • Rollback on failure: cleans up stub file + restarts Edge services so Edge isn't left broken
  • Exit code 93 now returns a clear message: "run with --admin and retry"

Service Restart Hardening

  • State-aware restarts: queries service state before acting — handles STOPPED, NOT_STOPPABLE, and PENDING states correctly
  • Dependent service management: stops dependents BEFORE parent (prevents ERROR_DEPENDENT_SERVICES_RUNNING 1051), restarts only previously-running dependents after
  • Locale-independent: all service commands use sc (always English output) instead of net (locale-dependent)
  • Retry logic: handles exit codes 1062 (already stopped), 1051 (dependents still running), 1056 (already running)

Other Improvements

  • Installer detection by exe name (not full path) — avoids false matches from directory names
  • UTF-8 safe error truncation — no broken multi-byte characters in error messages
  • NSIS case-sensitive /S flag handling

Quality

  • Reviewed across 6 Oracle rounds (22 total findings, all fixed, 0 remaining)
  • go build + go vet clean

Install

# Download pw.exe from this release and place in your PATH
# Or: go install github.com/lakshaymaurya-felt/purewin@v1.2.1

Full Changelog: v1.2.0...v1.2.1