Messages d’erreur

« npm error code ETIMEDOUT » sur Mac

ETIMEDOUT signifie que l’autre côté n’a pas répondu à temps. La documentation de Node.js parle d’un interlocuteur qui « did not properly respond after a period of time » (n’a pas répondu correctement après un certain délai).

S’applique à : npm 10 et versions ultérieures affichent « npm error ». Les versions plus anciennes affichent « npm ERR! ». Toutes les versions actuelles de macOS.Vérifié le 29 octobre 2026

Symptômes

  • npm install s’arrête avec npm error code ETIMEDOUT.
  • npm ajoute qu’il s’agit d’un problème lié à la connectivité réseau.
  • L’échec se produit sur un seul réseau, comme un réseau d’entreprise ou un partage de connexion.

Causes probables

  • Un proxy que npm ne connaît pas. Sur un réseau qui nécessite un proxy, npm a besoin de ses réglages proxy et https-proxy.
  • Un registre injoignable. Un ancien réglage registry peut pointer vers un serveur privé.
  • Une connexion lente ou avec pertes. Les gros packages dépassent le délai sur un Wi-Fi faible ou un partage de connexion.
  • Un chemin IPv6 défaillant. Le registre a une adresse IPv6, et l’IPv6 ne fonctionne pas sur votre réseau.

Comment vérifier

  1. Affichez les réglages de registre et de proxy de npm.

    npm config get registry
    npm config get proxy
    npm config get https-proxy
  2. Demandez une réponse au registre.

    npm ping
  3. Testez le registre avec curl, en IPv4 uniquement.

    curl -4 -I https://registry.npmjs.org/
  4. Mesurez la connexion.

    networkQuality

Comment corriger

  1. Si le réseau nécessite un proxy, configurez-le pour npm.

    npm config set https-proxy http://proxy.example.com:8080
  2. Supprimez un ancien réglage de registre, pour que npm utilise sa valeur par défaut.

    npm config delete registry
  3. Accordez plus de tentatives à npm sur une connexion lente.

    npm config set fetch-retries 5
  4. Relancez l’installation sur un réseau plus rapide, si vous le pouvez.

Avec Kilobat

  1. Le diagnostic de connexion de Kilobat teste le registre couche par couche : réseau, proxy, DNS, règles, IPv4, IPv6, TLS et serveur. Il indique la couche qui a échoué.

    kilobat why https://registry.npmjs.org/
  2. Avant une grosse installation, vérifiez si le réseau est limité, passe par un VPN ou est lent.

    kilobat conditions
  3. Ces vérifications Kilobat sont gratuites. Les agents IA les lancent via MCP avec diagnose_connection et diagnose_network. Consultez Trouver pourquoi un site ou une API ne se connecte pas.

Questions

Combien de temps npm attend-il ?

La documentation de npm indique une valeur par défaut de 300000 ms pour fetch-timeout, soit cinq minutes, et de 2 pour fetch-retries.

Sources

Sources vérifiées le 29 octobre 2026. Les pages man sont celles installées avec macOS ; ouvrez-en une avec man <name> dans Terminal.