Windows cached task hangs after first compound command when stdio pipe remains open
Les mainteneurs répondent en général sous 1 jour
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 52/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- github-actions, rust
- Domaine
- cli, operating-systems
Piste de recherche
Commencez par le chemin d’exécution mis en cache et sa gestion des tubes stdout/stderr du processus enfant Windows, puis reproduisez la commande composée à l’aide du dépôt de reproduction lié et comparez-la à l’exécution avec --no-cache. La tâche est terminée lorsque l’exécution Windows mise en cache passe à la deuxième commande après la fin du premier processus enfant, sans laisser de processus vctip orphelin.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
On Windows, a cached vp run task can hang after the first command in a compound script has completed, before the next && command starts.
This was reproduced with a script shape similar to:
{
"scripts": {
"test": "cargo test -p ox_mf2_parser --all-targets --color always && vp test"
}
}
Reproduction
Repro repo: https://github.com/kazupon/vite-task-windows-issue-1
(cause repo: https://github.com/intlify/intlify)
In GitHub Actions, the normal cached Windows run hangs, while the Windows --no-cache control run completes successfully.
Observed behavior
The cached run prints and completes the cargo test output, but never prints or starts the following $ vp test command.
Process snapshots show only the vpr / vp / node runner process tree remaining. No cargo, rustc, or vitest process remains. At workflow cleanup, GitHub Actions reports an orphaned vctip process.
Expected behavior
After the direct child process for the first command exits, the runner should observe completion and continue to the next && command, even if a descendant temporarily keeps stdout/stderr handles open.
Suspected cause
The cached execution path drains piped stdout/stderr before awaiting the direct child process. On Windows, if a descendant keeps an inherited pipe handle open, EOF never arrives, so the runner never reaches child wait or Windows Job Object cleanup.
- Langage dominant
- Rust
- Étoiles
- 473
- Forks
- 44
- Merge moyen
- 1 j 19 min
- PR mergées (30 j)
- 55
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de voidzero-dev/vite-task
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
voidzero-dev/vite-task#822 ·
Les mainteneurs répondent en général sous 1 jour
-
Let tools mark cache directories with CACHEDIR.TAGPeut-être pris @lifeiscontent l’a pris il y a 7 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
voidzero-dev/vite-task#793 ·
Les mainteneurs répondent en général sous 1 jour
-
Preview cache hits without running tasksPeut-être pris @lifeiscontent l’a pris il y a 8 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
voidzero-dev/vite-task#791 ·
Les mainteneurs répondent en général sous 1 jour
-
Built-in tool tasks miss the cache after the workspace movesPeut-être pris @lifeiscontent l’a pris il y a 8 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 67/100
voidzero-dev/vite-task#790 ·
Les mainteneurs répondent en général sous 1 jour
-
vp run: output forwarding fails with EAGAIN when an inherited Node child sets stdout non-blockingPeut-être pris @naokihaba l’a pris il y a 5 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
voidzero-dev/vite-task#782 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de voidzero-dev/vite-task
Issues similaires
-
XmlFragment children, successors and siblings stop at the first child that is not an XML typeOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
bug good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
repowise-dev/repowise#3374 ·
Les mainteneurs répondent en général sous 1 jour
-
awaiting-response bug needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
wildcard/caro#1562 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
objectionary/sodg.rs#301 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
HakanSeven12/OpenCADStudio#1706 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour