Yarn: Error al agregar el paquete tarball remoto

Creado en 15 abr. 2017  ·  4Comentarios  ·  Fuente: yarnpkg/yarn

¿Quieres solicitar una función o informar de un error ?
Reportar un error

¿Cuál es el comportamiento actual?

Al agregar un paquete tarball remoto, se produce un error:

error Se produjo un error inesperado: " https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz : EISDIR: operación ilegal en un directorio, abrir '/ home / luiz / .cac
he / yarn / v1 / .tmp / 9417ab587e459fe380a7e913f4160254 / '".

Si el comportamiento actual es un error, proporcione los pasos para reproducirlo.

En una carpeta vacía:

yarn init // crea un proyecto ficticio
yarn add https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz

Actualizar manualmente las dependencias en package.json como

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

y haciendo yarn install también ocurre el error

¿Cuál es el comportamiento esperado?
Paquete del enlace https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz
debe instalarse y agregarse a las dependencias

Por favor, mencione su versión de node.js, yarn y sistema operativo.
Hilado 0.23.2
Nodo 6.10
Linux Mint 17.3 y Windows 10

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

Comentario más útil

Oye, luché con este error por un tiempo cuando finalmente logré encontrar la causa raíz, al menos en mi caso:

Para que .tar.gz sea ​​utilizado por yarn add , debe tener los nombres de archivo comenzando con ./ . Revisé su tarball y todos los archivos se enumeran sin la referencia del directorio local principal ( tar -tf build.tar.gz ).

Esto se puede solucionar simplemente modificando la forma en que se refiere a sus archivos cuando llama al comando tar (es decir, pasando "./*" en lugar de "*"). O si lo está creando mediante programación, cambie los nombres de los archivos en los encabezados.

Todos 4 comentarios

archivo 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)


Oye, luché con este error por un tiempo cuando finalmente logré encontrar la causa raíz, al menos en mi caso:

Para que .tar.gz sea ​​utilizado por yarn add , debe tener los nombres de archivo comenzando con ./ . Revisé su tarball y todos los archivos se enumeran sin la referencia del directorio local principal ( tar -tf build.tar.gz ).

Esto se puede solucionar simplemente modificando la forma en que se refiere a sus archivos cuando llama al comando tar (es decir, pasando "./*" en lugar de "*"). O si lo está creando mediante programación, cambie los nombres de los archivos en los encabezados.

Gracias. Eso funciono. Dejar abierto ya que al menos una nota en la documentación está en orden

Hola, chicos,
Agregué una advertencia que informa al usuario de este comportamiento y sugiere la solución.
Creado PR # 4898 para el mismo

Esta es mi primera contribución al hilo, así que avíseme si me he perdido algo. Gracias.

¿Fue útil esta página
0 / 5 - 0 calificaciones