Yarn: Erreur lors de l'ajout du package tarball distant

Créé le 15 avr. 2017  ·  4Commentaires  ·  Source: yarnpkg/yarn

Voulez-vous demander une fonctionnalité ou signaler un bogue ?
Signaler un bug

Quel est le comportement actuel?

Lors de l'ajout d'un package tarball distant, une erreur se produit:

erreur Une erreur inattendue s'est produite: " https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz : EISDIR: opération illégale sur un répertoire, ouvrez '/ home / luiz / .cac
he / yarn / v1 / .tmp / 9417ab587e459fe380a7e913f4160254 / '".

Si le comportement actuel est un bogue, veuillez fournir les étapes à reproduire.

Dans un dossier vide:

yarn init // créer un projet factice
yarn add https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz

Mettre à jour manuellement les dépendances dans package.json comme

dependencies: {
 "cherrytree": "https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz"
}

et en faisant yarn install l'erreur se produit également

Quel est le comportement attendu?
Package à partir du lien https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz
doit être installé et ajouté aux dépendances

Veuillez mentionner votre node.js, votre fil et la version de votre système d'exploitation.
Fil 0.23.2
Nœud 6.10
Linux Mint 17.3 et Windows 10

cat-bug cat-documentation good first issue help wanted triaged

Commentaire le plus utile

Hé, j'ai lutté avec cette erreur pendant un moment quand j'ai finalement réussi à trouver la cause principale, du moins dans mon cas:

Pour qu'un .tar.gz soit utilisé par yarn add il doit avoir les noms de fichiers commençant par ./ . J'ai vérifié votre archive tar et tous les fichiers sont listés sans la référence principale du répertoire local ( tar -tf build.tar.gz ).

Cela peut être corrigé simplement en modifiant la façon dont vous faites référence à vos fichiers lorsque vous appelez la commande tar (c'est-à-dire en passant "./*" au lieu de "*"). Ou si vous le créez par programme, modifiez les noms de fichiers dans les en-têtes.

Tous les 4 commentaires

Fichier yarn-error.log:

Arguments: 
  /usr/bin/nodejs /usr/bin/yarn add https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz

PATH: 
  /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

Yarn version: 
  0.23.2

Node version: 
  6.10.2

Platform: 
  linux x64

npm manifest: 
  {
    "name": "testproj",
    "version": "1.0.0",
    "main": "index.js",
    "license": "MIT"
  }

yarn manifest: 
  No manifest

Lockfile: 
  No lockfile

Trace: 
  Error: https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz: EISDIR: illegal operation on a directory, open '/usr/local/share/.cache/yarn/v1/.tmp/9417ab587e459fe380a7e913f4160254/'
      at Error (native)


Hé, j'ai lutté avec cette erreur pendant un moment quand j'ai finalement réussi à trouver la cause principale, du moins dans mon cas:

Pour qu'un .tar.gz soit utilisé par yarn add il doit avoir les noms de fichiers commençant par ./ . J'ai vérifié votre archive tar et tous les fichiers sont listés sans la référence principale du répertoire local ( tar -tf build.tar.gz ).

Cela peut être corrigé simplement en modifiant la façon dont vous faites référence à vos fichiers lorsque vous appelez la commande tar (c'est-à-dire en passant "./*" au lieu de "*"). Ou si vous le créez par programme, modifiez les noms de fichiers dans les en-têtes.

Merci. Ça a marché. Laisser ouvert car au moins une note dans la documentation est en ordre

Salut les gars,
J'ai ajouté un avertissement qui informe l'utilisateur de ce comportement et suggère la solution.
Créé le PR # 4898 pour le même

C'est ma première contribution au fil, alors faites-moi savoir si j'ai manqué quelque chose. Merci.

Cette page vous a été utile?
0 / 5 - 0 notes