[Résolu][Arch Linux] electronFetch is not a function

bug

#1

Bonjour,

Je me décide enfin à prendre le temps de remonter ce soucis. Depuis plusieurs mois, le client desktop ne synchronise plus rien du tout. Et cette erreur qui saute aux yeux : electronFetch is not a function

Je met les caractéristiques de mon système et des logs en dessous. N’hésitez pas à me demander d’autres infos si besoin :slight_smile:


  • Système : Arch Linux
  • npm : v6.4.1 ($ npm --version)

Quand je lance Cozy en ligne de commande :

 $ cozy-desktop 
    (node:4654) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 3): TypeError: electronFetch is not a function
    (node:4654) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

et ensuite, quand j’ouvre la fenêtre depuis le bouton qui se met dans la barre de raccourcis :

Unhandled rejection TypeError: electronFetch is not a function
    at global.fetch (/usr/lib/cozy-desktop/resources/app.asar/gui/js/proxy.js:78:12)
    at /usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/index.js:284:26
    at doTry (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/utils.js:42:12)
    at Client.isV2 (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/index.js:284:14)
    at Client.fullpath (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/index.js:276:17)
    at cozyFetch (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/fetch.js:7:15)
    at fetchJSON (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/fetch.js:78:10)
    at cozyFetchJSON (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/fetch.js:53:10)
    at diskUsage (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/settings.js:4:10)
    at Object.prototyped [as diskUsage] (/usr/lib/cozy-desktop/resources/app.asar/node_modules/cozy-client-js/dist/webpack:/src/index.js:307:12)
    at RemoteCozy.diskUsage (/usr/lib/cozy-desktop/resources/app.asar/core/remote/cozy.js:66:33)
    at Remote.diskUsage (/usr/lib/cozy-desktop/resources/app.asar/core/remote/index.js:345:28)
    at App.diskUsage (/usr/lib/cozy-desktop/resources/app.asar/core/app.js:369:24)
    at sendDiskUsage (/usr/lib/cozy-desktop/resources/app.asar/gui/main.js:190:13)
    at startSync (/usr/lib/cozy-desktop/resources/app.asar/gui/main.js:218:5)
    at trayWindow.show.then (/usr/lib/cozy-desktop/resources/app.asar/gui/main.js:74:40)
From previous event:
    at showWindow (/usr/lib/cozy-desktop/resources/app.asar/gui/main.js:74:29)
    at toggleWindow (/usr/lib/cozy-desktop/resources/app.asar/gui/main.js:48:8)
    at Tray.clicked (/usr/lib/cozy-desktop/resources/app.asar/gui/js/tray.js:20:5)
    at emitThree (events.js:136:13)
    at Tray.emit (events.js:217:7)

#2

Hello @Fol,

Merci de ce rapport. Nous avons déjà vu cette erreur, mais jamais réussi à comprendre pourquoi le code ne trouve pas la fonction electronFetch.
Est-ce que ta connexion réseau aurait quelque chose de particulier, tu passerais par un proxy par exemple ?
Est-ce que tu te souviens de quand l’erreur est apparue ? Est-ce que ça correspond à une mise à jour de l’application, à une modification de ta configuration ?


#3

Question subsidiaire mais qui a son importance : comment as-tu installé l’application ? Est-ce via le fichier AppImage que nous fournissons ou via un paquet Arch spécifique ? Dans ce dernier cas, il est possible que le paquet ne soit pas à jour, et je t’invite à essayer avec notre AppImage.


#4

Bonjour @Fol,

Je suis développeur chez Cozy et utilisateur de Arch.
Nous supportons officiellement que l’AppImage disponible depuis https://docs.cozy.io/en/howTos/sync/linux/.

Je me suis rapproché de @archange qui maintient le paquet Arch pour trouver une solution.

Pour les curieux :
Nous utilisons yarn pour la gestion des paquets node, la version des paquets est fixée dans le fichier yarn.lock. Étant donné que les scripts du paquet Arch utilise npm, le fichier yarn.lock n’est pas pris en compte et nous récupérons une version de la bibliothèque electron-fecth qui a un breaking change (utilisation de module ES2015). Plusieurs solutions sont possibles et nous allons proposer au plus vite une correction.

Merci pour votre soutien, votre message et votre patience.


#5

Corrigé dans cozy-desktop 3.9.0-2. :wink:

Merci à @Clochix et @ticabri de m’avoir remonté le problème.


#6

Ce fut rapide :hushed: Merci !

@archange Je n’ai pas mon Arch sous la main pour tester, mais je te fais confiance :slight_smile:


Edit : C’est bon, tout semble se synchroniser comme il faut !