Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

vp run forwards no signal to its task, so stopping vp alone orphans the task

Ouverte
#3,090 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
30/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
rust
Domaine
cli

Piste de recherche

Start with the comment at crates/vt/src/session/mod.rs:382-388, which says child tasks receive signals from the terminal driver, and trace how vp run spawns tasks and handles signals in the local CLI and the global vp wrapper. Reproduce by running vp run dev and sending SIGTERM to the vp pid alone. The issue is open on a choice between forwarding signals and documenting process-group signalling, so confirm the maintainers' preferred direction before writing code.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description

vp run <script> forwards no signal to the task it runs. A SIGINT or SIGTERM sent to the vp process alone ends vp, and the script's process keeps running, reparented to init or the user manager. A Ctrl-C in a terminal works only because the terminal sends it to the whole process group. Tools that stop a job by signalling the process they started leave the task running. That includes kill <pid> from a script, a supervisor, or an editor or agent harness that started vp run dev as a background command.

Tested on vite-plus 1.2.0 (global vp and the local CLI), on Linux:

Signal sent to Result
global vp, SIGINT or SIGTERM vp exits; the task keeps running
local CLI, SIGTERM the CLI exits; the task is orphaned
local CLI, SIGINT ignored
the whole process group everything exits

This looks deliberate. vite-task at 9ba4cc93, crates/vt/src/session/mod.rs:382-388, says "Child tasks receive the signal directly from the terminal driver". The docs don't mention it, though.

Suggested solution

Forward SIGINT, SIGTERM and SIGHUP from vp to each running task, then wait for the tasks to exit. This is what npm run does (@npmcli/run-script lib/signal-manager.js), and what Turborepo (turborepo-signals) and concurrently (kill-on-signal.ts) do.

The global vp would also need to pass the signal on to the local CLI it starts.

Alternative

Document that vp run must be stopped by signalling its process group, so that harnesses and scripts can do that.

Additional context

We hit this with a long-running dev script that supervises several servers. Stopping vp alone left all of them running and holding their ports. We now tell agents to signal the script's own process instead.

Validations
  • Read the Contributing Guidelines.
  • Confirm this request is for Vite+ itself and not for Vite, Vitest, tsdown, Rolldown, or Oxc.
  • Check that there isn't already an issue requesting the same feature. I searched vite-plus and vite-task for signal, SIGINT, SIGTERM, kill, orphan and process group.
Langage dominant
Rust
Étoiles
6k
Forks
274
Merge moyen
1 j 12 h
PR mergées (30 j)
205

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de voidzero-dev/vite-plus

Toutes les issues de voidzero-dev/vite-plus

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.