Port conflict (EADDRINUSE) when running typegen and dev server simultaneously

Ouverte
#243 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
react, typescript, vite
Domaine
devtools

Piste de recherche

Aucun fichier source ni test n’est indiqué. Commencez par retracer l’initialisation de DevTools partagée par dev server et typegen entry points, puis inspectez les variables d’environnement et les arguments de processus indiqués. C’est terminé lorsque pnpm dev et les commandes de génération de types s’exécutent ensemble sans l’erreur EADDRINUSE, tout en préservant le comportement normal de DevTools.

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

Description

Port conflict (EADDRINUSE) when running typegen and dev server simultaneously

Context

I'm using React Router DevTools with type generation tools (react-router typegen, safe-routes typegen).

Reproduction

When running type generation tools and the development server simultaneously, both try to bind to port 42069 (used by TanStack DevTools), resulting in an EADDRINUSE error.

Steps to Reproduce
# Terminal 1: Start dev server
pnpm dev

# Terminal 2: Run type generation
pnpm typegen
# or
react-router typegen
Error Message
Error: listen EADDRINUSE: address already in use :::42069

System Info

  • OS: macOS 14.6.0 (Darwin 24.6.0)
  • Node: v20.x
  • Package Manager: pnpm 10.18.0
  • react-router-devtools: 6.0.1
  • @tanstack/devtools: 5.x
  • Vite: 6.3.6

Used Package Manager

pnpm

Expected Behavior

Type generation tools and the dev server should be able to run simultaneously without port conflicts. The DevTools should automatically disable itself when running in a type generation context.

Actual Behavior

The second process fails to start due to port 42069 already being in use by TanStack DevTools, which is initialized by both the dev server and type generation process.

Possible Solution

Detect type generation context (via environment variables like TYPEGEN_RUNNING=1 or command-line arguments) and disable DevTools initialization when running type generation, preventing unnecessary port binding.

Implementation approach:

  • Check for typegen indicators: TYPEGEN_RUNNING=1, SAFE_ROUTES_TYPEGEN=1, process.argv includes "typegen"
  • Return empty plugin array when in typegen context
  • Maintain backward compatibility for normal dev mode
Langage dominant
TypeScript
Étoiles
975
Forks
55
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

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 code-forge-io/react-router-devtools

Toutes les issues de code-forge-io/react-router-devtools

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

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