Composer

Summary

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.6.6 ( 08 de diciembre de 2023 (1 año, 1 mes y 23 días)[2]​)
Enlaces
Sitio web oficial
Repositorio de código

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

editar

Comandos

editar

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

editar

Ejemplo de composer.json generado por el comando siguiente:

composer require monolog/monolog
{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

Versiones

editar

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

editar
  • 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

editar

Enlaces externos

editar
  •   Wikimedia Commons alberga una categoría multimedia sobre Composer.
  • Sitio web oficial
  • Composer en GitHub
  • Documentación Composer
  • Composer Tutorial Archivado el 8 de mayo de 2021 en Wayback Machine.
  • Automate basic composer tasks in Laravel
  • Packagist - Repositorio principal de Composer

Referencias

editar
  1. a b Software release, github.com, Retrieved April 24, 2016.
  2. Composer download list
  3. Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013.
  4. See packagist.org
  5. «Command-line interface / Commands». getcomposer.org. 
  6. «Versions and constraints - Composer». getcomposer.org. 
  •   Datos: Q15252222
  •   Multimedia: Composer (software) / Q15252222
  •   MediaWiki: Composer