Composer es un administrador de paquetes a nivel de aplicación para el lenguaje de programación PHP que proporciona un formato estándar para administrar las dependencias del software PHP y las bibliotecas requeridas . Fue desarrollado por Nils Adermann y Jordi Boggiano, quienes continúan gestionando el proyecto. Comenzaron el desarrollo en abril de 2011 y lanzado por primera vez el 1 de marzo de 2012. [1] Compositor está fuertemente inspirado por de Node.js " NGP " y Ruby " bundler ". [3] El algoritmo de resolución de dependencias del proyecto comenzó como un puerto basado en PHP del libzypp satsolver de openSUSE . [4]
Desarrollador (es) | Nils Adermann, Jordi Boggiano |
---|---|
Versión inicial | 1 de marzo de 2012 [1] |
Lanzamiento estable | 2.0.12 / 1 de abril de 2021 [2] |
Repositorio | |
Escrito en | PHP |
Sistema operativo | Multiplataforma |
Tipo | Gerente de empaquetación |
Licencia | Licencia MIT |
Sitio web | getcomposer |
Composer se ejecuta desde la línea de comandos e instala las dependencias (por ejemplo, bibliotecas) para una aplicación. También permite a los usuarios instalar aplicaciones PHP que están disponibles en "Packagist" [5], que es su repositorio principal que contiene los paquetes disponibles. También proporciona capacidades de carga automática para bibliotecas que especifican información de carga automática para facilitar el uso de código de terceros.
Sintaxis
Comandos
Composer ofrece varios parámetros que incluyen: [6]
require
: agregue la biblioteca en el parámetro al archivo composer.json e instálelo.install
: instala todas las bibliotecas de composer.json. Es el comando que se usa para descargar todas las dependencias del repositorio de PHP.update
: actualice todas las bibliotecas de composer.json, de acuerdo con las versiones permitidas que se mencionan en él.remove
: desinstale una biblioteca y elimínela de composer.json.
Definición de bibliotecas
Ejemplo de composer.json generado por el siguiente comando:
compositor requiere monolog / monolog
{ "require" : { "monolog / monolog" : "1.2. *" } }
Versiones
Las diferentes versiones autorizadas de las bibliotecas están definidas por: [7]
Símbolo | Rol (colocado antes de un número de versión) | Ejemplo |
---|---|---|
> = | permite ampliar el número. Además, podemos usar:>, <, <=. | "php": ">=5.5.9" incluye PHP 7. |
! = | excluye una versión. | |
- | define una gama de versiones. | |
¦¦ | añadir posibles versiones. | "symfony/symfony": "2.8 ¦¦ 3.0" reagrupa solo estas dos versiones. |
* | se extiende a todas las subversiones. | "symfony/symfony": "3.1.*" incluye el 3.1.1. |
~ | se extiende a las siguientes versiones del mismo nivel. | "doctrine/orm": "~2.5" también afecta al 2.6, pero ni al 2.4 ni al 3.0. |
^ | igual que la tilde, solo si hay compatibilidad con versiones anteriores . |
Marcos compatibles
- Symfony versión 2 y posteriores
- Laravel versión 4 y posteriores
- CodeIgniter versión 3.0 y posterior
- CakePHP versión 3.0 y posteriores
- FuelPHP versión 2.0 y posterior
- Drupal versión 8 y posteriores
- TYPO3 versión 6.2 y posteriores
- SilverStripe versión 3.0 posterior
- Magento versión 2.0 posterior
- Yii versión 1.1 y posterior
- Zend Framework versión 1 y posteriores
- Silex (marco web)
- Lumen (marco web)
Ver también
Referencias
- ^ a b Versión de software , github.com, obtenido el 24 de abril de 2016.
- ^ "Compositor" . getcomposer.org . Consultado el 26 de abril de 2021 .
- ^ Getting Started / Dependency management , getcomposer.org, consultado el 28 de noviembre de 2013.
- ^ "compositor / compositor" . 23 de junio de 2020 . Recuperado el 24 de junio de 2020 , a través de GitHub.
- ^ Ver packagist.org
- ^ "Interfaz de línea de comandos / Comandos" . getcomposer.org .
- ^ "Versiones y limitaciones - Composer" . getcomposer.org .
enlaces externos
- Página web oficial
- Compositor en GitHub
- Documentación del compositor
- Tutorial de compositor
- Packagist: el repositorio principal de Composer
- Compositor en Open Hub