Composer

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 (5 meses y 12 días)[2]​)
Enlaces
Sitio web oficial
Repositorio de código
[editar datos en Wikidata]

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 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 Archivado el 8 de mayo de 2021 en Wayback Machine.
  • Automate basic composer tasks in Laravel
  • Packagist - Repositorio principal de Composer

Referencias

  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. 
Control de autoridades
  • Proyectos Wikimedia
  • Wd Datos: Q15252222
  • Commonscat Multimedia: Composer (software) / Q15252222
  • MediaWiki MediaWiki: Composer

  • Informática
  • Arch Linux: composer
  • AUR: composer-git
  • Debian: composer
  • Gentoo: dev-php/composer
  • Open Hub: composer
  • Wd Datos: Q15252222
  • Commonscat Multimedia: Composer (software) / Q15252222
  • MediaWiki MediaWiki: Composer