Cohabitation sur serveur V10 | V9

Bonjour @louis ,
Connexion au serveur :

ERROR: npm v9.2.0 is known not to run on Node.js v12.18.3. You'll need to upgrade
to a newer Node.js version in order to use this version of npm. This version of
npm supports the following node versions: `^14.17.0 || ^16.13.0 || >=18.0.0`. You
can find the latest version at https://nodejs.org/.

/home/pixnwave/.nvm/versions/node/v12.18.3/lib/node_modules/npm/lib/utils/exit-handler.js:22
  const hasLoadedNpm = npm?.config.loaded
                           ^

SyntaxError: Unexpected token '.'
    at wrapSafe (internal/modules/cjs/loader.js:1053:16)
    at Module._compile (internal/modules/cjs/loader.js:1101:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    at Module.load (internal/modules/cjs/loader.js:985:32)
    at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    at Module.require (internal/modules/cjs/loader.js:1025:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at module.exports (/home/pixnwave/.nvm/versions/node/v12.18.3/lib/node_modules/npm/lib/cli.js:76:23)
    at Object.<anonymous> (/home/pixnwave/.nvm/versions/node/v12.18.3/lib/node_modules/npm/bin/npm-cli.js:2:25)
    at Module._compile (internal/modules/cjs/loader.js:1137:30)
nvm is not compatible with the npm config "prefix" option: currently set to ""
Run `nvm use --delete-prefix v12.18.3 --silent` to unset it.
  • Ubuntu 18.04.6 LTS
  • Do.Doc V9.1.2

avant même le rapatriement de la V10 :wink:

Alors alors, sans connaitre la configuration de ton serveur :

  • cloner dodoc avec git vers un nouveau dossier (baptisé dodoc-10 par exemple)
  • utiliser la branche dodoc2-next-node
  • dans le dossier dodoc-10, nvm use (bien vérifier ensuite que la version de node nécessaire est installée, l’installer si ça n’est pas le cas puis relancer nvm use)
  • npm install
  • npm run debug

Et ça devrait démarrer. Possible ensuite de rajouter la tâche à pm2.

Je ne risque pas de casser la V9 de do.doc qui marche malgré le message d’erreur ci-dessus ?

Tu peux m’indiquer quel commande déclenche l’affichage de ce message d’erreur ?

Pas de soucis à faire cohabiter plusieurs versions de node, plusieurs process de node/dodoc en parallèle sur des versions différentes non. Mais je ne peux rien garantir sans accès au serveur, un backup des contenus ne serait pas inutile :slight_smile:

J’ai le message dès la connexion au serveur mais également au moment ou je fais
nvm use dans les dossiers où sont déjà installés la version 9.

j’ai eu ce massage car par manque de savoir j’ai fais une mise à jour de npm…

j’ai un backup quotidien

La V9.1.2 tourne sur node V12.18.3
La V10 tourne sur node v16.14.2

Tu peux le voir dans le fichier package.json :

  "engines": {
    "node": "16.14.2",
    "npm": "*"
  },

Pour node 12.18.3, tu peux réinstaller npm 8.0.0
Pour node 16.14.2, npm 8.5.0

Normalement à l’installation d’une version de node la version de npm s’ajuste automatiquement. Je n’ai jamais eu à installer npm moi-même ou à modifier la version utilisée par node, tout ça est géré par node et par nvm. Je te recommande de réinstaller ta version de node avec nvm, puis nvm use. Tu peux me dire après ce que ça donne ?

1 « J'aime »

est-il possible de faire npm uninstall -g pour enlever npm que j’ai installer en global ?

Aucune idée mais il te faut nvm pour gérer ta version de node (et donc de npm). Avec nvm tu peux faire cohabiter les versions que tu souhaites, pas besoin d’en désinstaller.

Peux-tu faire nvm ls et copier/coller ce qui s’affiche ? quelquechose comme :

root@millefeuille:~# nvm ls
         v8.9.3
       v10.11.0
->     v12.18.3
       v16.13.0
       v16.14.2
         system
default -> 12.18.3 (-> v12.18.3)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.14.2) (default)
stable -> 16.14 (-> v16.14.2) (default)
lts/* -> lts/gallium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.19.3 (-> N/A)
lts/gallium -> v16.15.1 (-> N/A)
         v8.9.3
       v12.18.3
       v14.21.2
       v16.13.0
->     v16.19.0
default -> v12.18.3
node -> stable (-> v16.19.0) (default)
stable -> 16.19 (-> v16.19.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.2
lts/gallium -> v16.19.0
lts/hydrogen -> v18.13.0 (-> N/A)
npm list -g
/home/pixnwave/.nvm/versions/node/v16.19.0/lib
├── corepack@0.15.1
└── npm@8.19.3
npm doctor 
npm WARN verifyCachedFiles Content garbage-collected: 1423 (101951329 bytes)
npm WARN verifyCachedFiles Cache issues have been fixed
Check                               Value   Recommendation/Notes
npm ping                            ok
npm -v                              not ok  Use npm v9.4.2
node -v                             not ok  Use node v18.14.0 (current: v16.19.0)
npm config get registry             ok      using default registry (https://registry.npmjs.org/)
which git                           ok      /usr/bin/git
Perms check on cached files         ok
Perms check on local node_modules   ok
Perms check on global node_modules  ok
Perms check on local bin folder     ok
Perms check on global bin folder    ok
Verify cache contents               ok      verified 5688 tarballs
npm notice 
npm notice New major version of npm available! 8.19.3 -> 9.4.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.4.2
npm notice Run npm install -g npm@9.4.2 to update!
npm notice 
npm ERR! Some problems found. See above for recommendations.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pixnwave/.npm/_logs/2023-02-14T19_30_07_390Z-debug-0.log

Ok, essaye de passer sur node v16.14.2 et en route pour la v10 alors :slight_smile:

nvm 16.14.2 is on.

En revanche comment je réussi à faire tourner les do.doc en V9 sur 12.18.3 et V10 sur 16.14.2 si ?

Commence par là :slight_smile:

En voyant vos échanges ça me remotive pour installer dodocV10 sur mon ordi sous Ubuntu 20.04 LTS
J’avais commencé la semaine dernière mais je bloque sur l’installation de la bonne version de nvm… je vais essayer à nouveau

1 « J'aime »

le dossier public s’appelle client ?

il y un dossier public dans le dossier client … → npm install ?

Exact. Mais il n’y a plus besoin d’installer son contenu et de npm run build – je le fais au niveau du repo. C’est pour ça que je n’ai pas détaillé.

pixnwave@localhost:~/dodoc-v10-dev/dodoc$ npm run debug

> dodoc@10.0.0-dev debug
> node . --inspect=5858 -- --debug --verbose

INDEX / didn’t find override settings
SOCKETS • Sockets module initialized
node:internal/modules/cjs/loader:936
  throw err;
  ^

Error: Cannot find module './Exporter'
Require stack:
- /home/pixnwave/dodoc-v10-dev/dodoc/core2/api2.js
- /home/pixnwave/dodoc-v10-dev/dodoc/core2/server.js
- /home/pixnwave/dodoc-v10-dev/dodoc/core2/main2.js
- /home/pixnwave/dodoc-v10-dev/dodoc/index.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/home/pixnwave/dodoc-v10-dev/dodoc/core2/api2.js:11:14)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/home/pixnwave/dodoc-v10-dev/dodoc/core2/api2.js',
    '/home/pixnwave/dodoc-v10-dev/dodoc/core2/server.js',
    '/home/pixnwave/dodoc-v10-dev/dodoc/core2/main2.js',
    '/home/pixnwave/dodoc-v10-dev/dodoc/index.js'
  ]
}