Composer, un administrador de dependencias para PHP, se lanzó hace unos 8 años y hoy se publica una nueva versión, 2.0. Composer ha recibido muchas características nuevas a lo largo de los años y ha seguido el ritmo de los estándares PHP. La segunda versión es compatible con proyectos más antiguos, pero traerá algunas características nuevas más geniales. En este artículo te contaré más sobre ellos.
Aceleración y optimización
Se han realizado mejoras de rendimiento en esta versión. Ahora no tiene en cuenta los paquetes ya instalados, como resultado, la actualización es mucho más rápida. También hemos mejorado el manejo de la memoria y el procesador.
. vendor , , . .
, , , , , hirak/prestissimo, .
Composer . , Composer install/update .
, COMPOSER_DISABLE_NETWORK=1
:
COMPOSER_DISABLE_NETWORK=1 composer install
. , .:
https://repo.packagist.org could not be fully loaded (Network disabled, request canceled: https://repo.packagist.org/packages.json), package information was loaded from the local cache and may be out of date
, , :
The required git reference for gabrielanhaia/laravel-circuit-breaker is not in cache and network is disabled, aborting
--dry-run “require” “remove”
(composer update --dry-run
. , , , vendor.
Composer 2.* composer require
composer remove
root
root , .
, , :
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Composer 2.* :
https://getcomposer.org/root for details
Continue as root/super user [yes]?
, . , --no-interaction
composer install --no-interaction
, . Composer 1.0 / . , ( ).
( ). , , packagist, .
, composer 2.x, . Composer 1.x , , , :
{
"repositories": [
{
"type": "composer",
"url": "https://example.org",
"canonical": false
}
]
}
, , , , , .
, foo/bar
some-vendor/
composer .:
{
"repositories": [
{
"type": "composer",
"url": "https://example.org",
"only": ["foo/bar", "some-vendor/*"]
}
]
}
toy/package
, , , .
{
"repositories": [
{
"type": "composer",
"url": "https://example.org",
"exclude": ["toy/package"]
}
]
}
only
, exclude
, (*), .\
Si por alguna razón desea ignorar un requisito de plataforma específico, simplemente puede ejecutar el comando: composer install --ignore-platform-req php
Omitirá el requisito de PHP o una versión específica. Si va a ignorar todos los requisitos, debe usar el comando ya disponible en versiones anteriores --ignore-platform-reqs
Otras actualizaciones
Hay muchas funciones pequeñas nuevas y correcciones de errores que han mejorado su usabilidad y calidad. Si está interesado en obtener más información sobre ellos, consulte las Notas de la versión de Github .