Composer cargando desde caché

5 minutos de lectura

avatar de usuario
Tarik

me encontré con un problema al usar el compositor para instalar/desinstalar algunas dependencias en laravel que regresan después de eliminarlas de composer.json y eliminando su carpeta de proveedor, inicialmente usé el paquete de descuento de dflydev, pero ahora quería cambiarlo al php-markdown de michelf, pero no puedo desinstalar el anterior ya que vuelve cargado desde el caché, que verifiqué en AppData\Roaming\Composer y está vacío, ¿alguna pista sobre por qué sucede esto?

  - Installing dflydev/markdown (dev-master dee1f7a)
    Loading from cache

  • ¿Has probado algo para resolver este problema? En caso afirmativo, comparta sus intentos

    –Nico Haase

    24 de abril de 2020 a las 8:58

  • Intenté agregar la opción –no-cache a mi comando composer y descargué las dependencias sin cargarlas desde el caché…

    – T.melz

    29 oct 2020 a las 19:56

avatar de usuario
Atish Gosvami

Puede usar el siguiente comando para borrar el caché independientemente del sistema operativo en el que se encuentre:

php composer.phar clear-cache

o si el compositor está instalado globalmente

composer clear-cache

  • A menos que borre mi composer.lock archivo, el clear-cache los comandos no surtieron efecto.

    – Daniel W.

    25 de abril de 2019 a las 16:04

  • Recuerde que debe ejecutarse con root (superusuario).

    – Amirhf

    26 de marzo de 2020 a las 18:56

  • Agregue alguna explicación adicional a su respuesta. ¿Cómo ayuda borrar el caché de archivos descargados para instalar o no instalar ningún paquete?

    –Nico Haase

    24 de abril de 2020 a las 8:59

Creo que puedes ejecutar tu composer comandos con --no-cache bandera de opción como

composer install --no-cache

O

composer require <package-name> --no-cache

O

composer update [<package-name>] --no-cache

avatar de usuario
monsur.hoq

Si desea borrar el caché de todos los paquetes, intente lo siguiente:

$ composer clearcache

O simplemente para borrar uno o algunos paquetes:

$ composer clearcache packagename1 packagename2 ...

También puedes usar clear-cache que es un alias para clearcache.

Fuente : https://blog.liplex.de/clear-composer-cache/

  • Ya no es posible borrar el caché de paquetes específicos. Hay un comentario en la publicación a la que has hecho referencia y la publicación en sí se actualizó.

    – Geiger

    13 de julio de 2018 a las 19:44

  • Agregue alguna explicación adicional a su respuesta. ¿Cómo ayuda borrar el caché de archivos descargados para instalar o no instalar ningún paquete?

    –Nico Haase

    24 de abril de 2020 a las 8:58

avatar de usuario
Simón Wicki

composer almacena en caché los paquetes según la convención proveedor/nombre del paquete. Por lo tanto, no debería encontrarse con ningún problema, solo porque el nombre del paquete se usa en el paquete de otro proveedor.

las ubicaciones de caché son:

  • ventanas: %LOCALAPPDATA%\Composer\files\vendor\packagename
  • linux: ~/.composer/cache/files/vendor/packagename
  • Mac OS: ~/.composer/cache/files/nombre del paquete

No edites tu composer.json archivo manualmente para eliminar un paquete; permanecerá en composer.lock.

Usar composer remove para eliminar el paquete antiguo entonces composer require para instalar el reemplazo.

  • Este parece el primer intento de resolver realmente el problema. ¡Gracias por su respuesta!

    –Nico Haase

    24 de abril de 2020 a las 9:00

  • Sí… Probablemente deberíamos cambiar el título de la pregunta, es un poco engañoso

    – Darvanen

    25 de abril de 2020 a las 10:23

  • Esto no funciona si el paquete se instaló a través de una dependencia. Hay razones por las que podría necesitar editar manualmente composer.json, es decir, si desea actualizar una referencia para usar una ruta local para un paquete.

    – Matt Clegg

    1 de mayo de 2020 a las 8:17

  • > Esto no funciona si el paquete ha sido instalado vía dependencia. Correcto. Pero el OP afirma directamente que están eliminando los elementos de composer.json y están regresando mágicamente> Hay razones por las que podría necesitar editar manualmente composer.json Absolutamente. Nuevamente, no se aplica en este contexto, donde el OP intenta eliminar un paquete completo. yo pudo han dicho “corre composer update después de eliminar el valor”, pero eso viene con asi que conocimientos mucho más necesarios.

    – Darvanen

    5 de mayo de 2020 a las 1:24


En algunos casos (por ejemplo, OpenSuse 42.1), todo el caché de usuario se coloca en:

~/.cache/

Para el compositor, al igual que otras aplicaciones, la ruta de caché es:

~/.cache/composer/

Entonces, simplemente elimine esta carpeta de la siguiente manera:

rm -fR ~/.cache/composer

  • Este parece el primer intento de resolver realmente el problema. ¡Gracias por su respuesta!

    –Nico Haase

    24 de abril de 2020 a las 9:00

  • Sí… Probablemente deberíamos cambiar el título de la pregunta, es un poco engañoso

    – Darvanen

    25 de abril de 2020 a las 10:23

  • Esto no funciona si el paquete se instaló a través de una dependencia. Hay razones por las que podría necesitar editar manualmente composer.json, es decir, si desea actualizar una referencia para usar una ruta local para un paquete.

    – Matt Clegg

    1 de mayo de 2020 a las 8:17

  • > Esto no funciona si el paquete ha sido instalado vía dependencia. Correcto. Pero el OP afirma directamente que están eliminando los elementos de composer.json y están regresando mágicamente> Hay razones por las que podría necesitar editar manualmente composer.json Absolutamente. Nuevamente, no se aplica en este contexto, donde el OP intenta eliminar un paquete completo. yo pudo han dicho “corre composer update después de eliminar el valor”, pero eso viene con asi que conocimientos mucho más necesarios.

    – Darvanen

    5 de mayo de 2020 a las 1:24


avatar de usuario
Señor Mbuki

ejecuta el siguiente comando

rm -rf ~/.composer/cache*

si el permiso es denegado agregar sudo

  • Si alguien tiene problemas de permisos en su propio directorio de inicio, “agregue sudo” a un rm -rf comando que incluye un comodín no es una buena idea.

    – Dragón pensativo

    22 de abril de 2020 a las 16:07

  • Agregue alguna explicación adicional a su respuesta. ¿Cómo ayuda borrar el caché de archivos descargados para instalar o no instalar ningún paquete?

    –Nico Haase

    24 de abril de 2020 a las 8:59

¿Ha sido útil esta solución?