Composer
Composer es un sistema de gestión de paquetes para programar en PHP el cual provee los formatos estándar necesarios para manejar dependencias y librerías de PHP. Fue desarrollado por Nils Adermann y Jordi Boggiano quienes continúan dirigiendo el proyecto. Ambos comenzaron el desarrollo en abril de 2011 y en marzo de 2012 presentaron la primera versión.[1] Composer está inspirado en Node.js, npm y en Bundler Ruby.[3]
Composer | ||
---|---|---|
Información general | ||
Tipo de programa | Sistema de gestión de paquetes | |
Desarrollador |
Nils Adermann, Jordi Boggiano | |
Lanzamiento inicial | 03 de enero de 2012[1] | |
Licencia | Licencia MIT | |
Estado actual | Activo | |
Información técnica | ||
Programado en | PHP | |
Versiones | ||
Última versión estable | 2.2.8 ( 01 de julio de 2022 (1 año, 2 meses y 26 días)[2]) | |
Enlaces | ||
Composer trabaja e instala dependencias o librerías desde la línea de comandos. También permite al usuario instalar las aplicaciones PHP que estén disponibles en el "Packagist",[4] el repositorio principal que contiene todos los paquetes disponibles. También dispone de capacidad de auto-descarga para las librerías necesarias que se especifiquen en la información de arranque para así facilitar el uso del código de terceros.
Sintaxis
Comandos
Composer ofrece varios parámetros incluyendo :[5]
require
: añade el parámetro de la librería al archivo composer.json y lo instala.install
: instala todas las librerías de composer.json. Es el comando que se usa para descargar todas las dependencias PHP desde el repositorio.update
: actualiza las librerías de composer.json de acuerdo a las versiones permitidas que se señalen.remove
: desinstala una librería y la elimina de 'composer.json'.
Definición de librerías
Ejemplo de composer.json generado por el comando siguiente:
composer require monolog/monolog
{
"require": {
"monolog/monolog": "1.2.*"
}
}
Versiones
Las diferentes versiones autorizadas de las librerías se definen como sigue:[6]
Símbolo | Función (colocado antes del número de versión) | Ejemplo |
---|---|---|
>= | permite extender el número. Además podemos usar: >, <, <=. | "php": ">=5.5.9" includes PHP 7. |
!= | excluye una versión. | |
- | define un rango de versiones. | |
¦¦ | añade posibles versiones. | "symfony/symfony": "2.8 ¦¦ 3.0" regroups only these two versions. |
* | extiende a todas las sub-versiones. | "symfony/symfony": "3.1.*" includes the 3.1.1. |
~ | extiende a la siguiente versión del mismo nivel. | "doctrine/orm": "~2.5" also concerns the 2.6, but neither the 2.4 nor the 3.0. |
^ | solo si existe compatibilidad con anteriores versiones. |
Frameworks soportados
- Symfony versión 2 y posteriores
- Laravel versión 4 y posteriores
- CodeIgniter versión 3.0 y posteriores
- CakePHP versión 3.0 y posteriores
- FuelPHP versión 2.0 y posteriores
- Drupal versión 8 y posteriores
- TYPO3 versión 6.2 y posteriores
- SilverStripe versión 3.0 y posteriores
- Magento versión 2.0 y posteriores
- Yii versión 1.1 and y posteriores
- Zend Framework versión 1 y posteriores
- Silex (web framework)
- Lumen (web framework)
Véase también
Enlaces externos
- Wikimedia Commons alberga una categoría multimedia sobre Composer.
- Sitio web oficial
- Composer en GitHub
- Documentación Composer
- Composer Tutorial
- Automate basic composer tasks in Laravel
- Packagist - Repositorio principal de Composer
- Composer en Open Hub
Referencias
- Software release, github.com, Retrieved April 24, 2016.
- Composer download list
- Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013.
- See packagist.org
- «Command-line interface / Commands». getcomposer.org.
- «Versions and constraints - Composer». getcomposer.org.