Intentando seguir el tutorial de introducción de Express .
Generé una aplicación y ejecuté npm install siguiendo las instrucciones proporcionadas.
> npx express-generator --view=pug myapp > npm install npm ERR! semver.simplifyRange is not a function npm ERR! A complete log of this run can be found in: npm ERR! /home/user/.npm/_logs/2021-03-21T04_58_39_577Z-debug.logLa parte relevante del registro.
555 http fetch GET 200 https://registry.npmjs.org/longest/-/longest-1.0.1.tgz 706ms 556 timing reifyNode:node_modules/longest Completed in 751ms 557 timing metavuln:cache:get:security-advisory:transformers:qlM2fO34VL+rWNeim/6QsbBJFfHtRf4Z7FAoL1JLqVXlvg5FMRxw1WstcKR09WDDJCiJsPPrdRJugEOTZ6eGZA== Completed in 22ms 558 verbose stack TypeError: semver.simplifyRange is not a function 558 verbose stack at Advisory.[calculateRange] (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/advisory.js:191:16) 558 verbose stack at Advisory.load (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/advisory.js:148:28) 558 verbose stack at Calculator.[calculate] (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/index.js:59:14) 558 verbose stack at async Promise.all (index 0) 558 verbose stack at async Map.[init] (/usr/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/audit-report.js:177:7) 558 verbose stack at async Map.run (/usr/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/audit-report.js:105:7)Nuevo en el nodo y no tengo idea de lo que esto significa. ¿Parece ser un problema con npm y no con Express?
Intenté ejecutar npm cache clean --force y eliminar node_modules pero ninguno de los dos ayudó.
Si es relevante, npm versión 7.6.3 y nodo versión 15.11.0.
Mi solución fue instalar una versión anterior de semver y actualizar npm a la versión 7.7.0. Usé los comandos:
sudo npm install -g semver@7.2.0y luego
sudo npm install -g npm@7.7.0Después de que funcionó
Después de otra ronda de actualizaciones del administrador de paquetes, me encontré con más problemas (consulte esta pregunta ).
De la pregunta vinculada anteriormente, encontré que instalar el nodo directamente desde el sitio web de nodejs es una solución más permanente y sólida.