fix(install): kill running muyue before extracting (v0.7.7) #16

Merged
Muyue merged 1 commits from release/v0.7.7 into develop 2026-04-27 12:31:32 +00:00
Owner

Bug rapporté

En mettant à jour de v0.7.5 → v0.7.6 :

PS> Expand-Archive -Path "$env:TEMP\muyue.zip" -DestinationPath $dest -Force
# Aucun message d'erreur visible
PS> muyue
muyue Desktop v0.7.5   ← ❌ ancienne version toujours là

Cause

Expand-Archive -Force ne peut pas écraser un fichier verrouillé sous Windows. Si v0.7.5 tourne au moment de l'extract :

  • muyue.exe (la copie canonique créée par install-shortcuts) est verrouillé par le process en cours
  • L'extract continue silencieusement sans remplacer le binaire
  • Le user PATH pointe toujours sur le même dossier qui contient l'ancien binaire

Fix

Ajout d'une 1ʳᵉ ligne au snippet d'install :

Get-Process muyue, muyue-windows-amd64 -ErrorAction SilentlyContinue | Stop-Process -Force
Start-Sleep -Milliseconds 500
  • -ErrorAction SilentlyContinue → idempotent (no-op si rien ne tourne, cas install propre)
  • Start-Sleep 500ms → laisse Windows libérer le file handle avant Expand-Archive

Snippet officiel passe à 6 lignes ; note explicative ajoutée pour les utilisateurs qui mettent à jour depuis une version précédente.

Versioning

  • v0.7.6 → v0.7.7
  • CHANGELOG.md : entrée v0.7.7

Test plan

  • manuel : install propre (pas de muyue avant) → fonctionne sans erreur
  • manuel : muyue v0.7.6 lancé puis exécuter snippet v0.7.7 → l'instance est tuée, le binaire est remplacé, muyue version affiche v0.7.7
## Bug rapporté En mettant à jour de v0.7.5 → v0.7.6 : ``` PS> Expand-Archive -Path "$env:TEMP\muyue.zip" -DestinationPath $dest -Force # Aucun message d'erreur visible PS> muyue muyue Desktop v0.7.5 ← ❌ ancienne version toujours là ``` ### Cause `Expand-Archive -Force` ne peut **pas** écraser un fichier verrouillé sous Windows. Si v0.7.5 tourne au moment de l'extract : - `muyue.exe` (la copie canonique créée par `install-shortcuts`) est verrouillé par le process en cours - L'extract continue silencieusement sans remplacer le binaire - Le user PATH pointe toujours sur le même dossier qui contient l'ancien binaire ### Fix Ajout d'une 1ʳᵉ ligne au snippet d'install : ```powershell Get-Process muyue, muyue-windows-amd64 -ErrorAction SilentlyContinue | Stop-Process -Force Start-Sleep -Milliseconds 500 ``` - `-ErrorAction SilentlyContinue` → idempotent (no-op si rien ne tourne, cas install propre) - `Start-Sleep 500ms` → laisse Windows libérer le file handle avant `Expand-Archive` Snippet officiel passe à 6 lignes ; note explicative ajoutée pour les utilisateurs qui mettent à jour depuis une version précédente. ### Versioning - v0.7.6 → v0.7.7 - CHANGELOG.md : entrée v0.7.7 ### Test plan - [ ] manuel : install propre (pas de muyue avant) → fonctionne sans erreur - [ ] manuel : muyue v0.7.6 lancé puis exécuter snippet v0.7.7 → l'instance est tuée, le binaire est remplacé, `muyue version` affiche v0.7.7
Muyue added 1 commit 2026-04-27 12:30:37 +00:00
fix(install): kill running muyue before extracting (v0.7.7)
All checks were successful
PR Check / check (pull_request) Successful in 1m3s
29953bde6d
User reported v0.7.6 install silently no-op'd when v0.7.5 was still
running:

  $dest = "$env:LOCALAPPDATA\Muyue"
  Expand-Archive -Path "$env:TEMP\muyue.zip" -DestinationPath $dest -Force
  # No error, but the running v0.7.5 .exe stays in place because
  # Windows refuses to overwrite a locked file. After 'install', the
  # 'muyue' command still launches v0.7.5.

Add a Stop-Process step at the top of the install snippet:

  Get-Process muyue, muyue-windows-amd64 -ErrorAction SilentlyContinue |
    Stop-Process -Force
  Start-Sleep -Milliseconds 500

-ErrorAction SilentlyContinue makes it idempotent (no error on a
clean first install). The 500ms sleep gives Windows time to release
the file handle before Expand-Archive opens the destination paths.

Snippet bumps to 6 lines; explanatory note added so users updating
from a previous version know why this step matters.

- internal/version/version.go: 0.7.6 → 0.7.7
- CHANGELOG.md: v0.7.7 entry
Muyue merged commit af5fbf9324 into develop 2026-04-27 12:31:32 +00:00
Muyue deleted branch release/v0.7.7 2026-04-27 12:32:00 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Muyue/MuyueWorkspace#16