Qué es composer?

Composer es un sistema para manejar dependencias.

Las dependencias son aquellas aplicaciones, scripts o servicios que usamos para nuestra aplicación.

Con Composer podemos tener el código centralizado en un servidor y disponer de la última versión. Con un simple comando podemos instalar o actualizar nuestras dependencias.

Composer
Composer gestor de Dependencias

 

Conceptos básicos sobre el funcionamiento de Composer:

Existe un repositorio de dependencias llamado Packagist, el cual hace de puente para conectar con los distintos códigos que pueden estar colgados en GitHub, Bitbucket o otros servidores.

En nuestra aplicación colocamos un archivo “composer.json”, donde se describe el proyecto e informamos de las dependencias que necesitamos.

Con unos comandos, desde la consola, podemos instalar y actualizar las dependencias.

 

Cómo usarlo en nuestros Plugins o aplicaciones.

Es muy sencillo usar composer.

Lo podemos describir en los siguientes puntos, una vez instalado composer en tu ordenador…

  • Crear un composer.json en tu aplicación.
  • Ejecutar un comando para instalar las dependencias que necesitemos en la aplicación. (La primera vez)
  • Ejecutar el comando de actualización de dependencias cuando sea necesario.

 

Instalar Composer.

Debemos tener instalado composer y preferiblemente instalarlo de forma global.

 

Instalar Composer en Linux / Unix / OSX

Desde tu consola, ejecutar el comando:

 

php composer-setup.php –install-dir=bin –filename=composer

 

Para poder ejecutarlo de forma global, hay que mover el archivo .phar de la siguiente forma:

 

mv composer.phar /usr/local/bin/composer

 

El comando anterior en algunos casos hace que lo tengamos que usar como root si queremos que nuestro usuario lo pueda usar sin permisos sudo debemos ejecutar el siguiente comando.

 

mv composer.phar ~/.local/bin

 

De esta forma podremos ejecutar los comando con un sencillo “composer …”

En la web oficial de composer tenéis más información detallada sobre la instalación: https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx

 

Instalar Composer en Windows

La forma más sencilla es descargando el archivo de instalación y ejecutando el archivo “Composer-Setup.exe

Existe información detallada sobre la instalación en la web oficial: https://getcomposer.org/doc/00-intro.md#installation-windows

 

Creación del archivo Composer.json

Composer ha de saber qué dependencias necesitamos instalar. Esto lo haremos  en el archivo composer.json.

Creamos un archivo en la raíz llamado composer.json.

Aquí va un ejemplo:

 

 {

«name»: «nombre proyecto»,
«description»: «una descripción del proyecto»,
«type»: «colocar el tipo de proyecto si es un plugin un modulo»,
«authors»: [{

«name»: «Nombre del autor»,
«email»: «autor@email.com»,
«homepage»: «http://www.web-del-autor.com»,
«role»: «Developer»
}],

«require»: {

«did-web/wp-my-autoloader»: «1.0.*»

}

}

Los archivos composer.json pueden ser mucho más complejos, pero con este caso sencillo ya podemos hacer uso de las dependencias.

En la sección “require” es donde se especifica el nombre de la dependencia y la versión que queremos descargar.

En este caso queremos la dependencia llamada “did-web/wp-my-autoloader” y la ultima versión no superior a 1.0.* .

Esta información la suele dar el desarrollador de la dependencia en Packagist.

Es interesante poder limitar la versión en el caso de ejemplo anterior nunca nos actualizaría a la versión 1.1.* o superior con esto evitamos posibles problemas en versiones superiores no compatibles.

Ahora tenemos un archivo con la información necesaria para poder instalar nuestras dependencias.

Lo habitual es que tengamos varias dependencias en ese caso se colocan en la sección «require» en la siguiente line ay separado por comas.

Por ejemplo:

 

 {

«name»: «nombre proyecto»,
«description»: «una descripción del proyecto»,
«type»: «colocar el tipo de proyecto si es un plugin un modulo»,
«authors»: [{

«name»: «Nombre del autor»,
«email»: «autor@email.com»,
«homepage»: «http://www.web-del-autor.com»,
«role»: «Developer»
}],

«require»: {

«did-web/wp-my-autoloader»: «1.0.*»,
«otra2/dependencia2»: «5.*»,
«otra3/dependencia3»: «1.*»,
«otra4/dependencia4»: «4.*»,

}

}

 

Instalar dependencias con composer

Una vez creado nuestro composer.json podemos ejecutar el comando:

 

composer install

 

El comando lee el archivo composer.json.
Crea una carpeta llamada “vendor” que es donde se descargan las dependencias.
Se crea un archivo composer.lock : Es un archivo con la información detallada de la dependencias instaladas.

 

Actualizar dependencias con composer

 

composer update

 

Este es el funcionamiento básico de Composer existen muchos más comandos pero con estos puedes utilizarlo y tener tus aplicaciones con las dependencias actualizadas.

 

Links de interés

Composer : https://getcomposer.org
Packagist: https://packagist.org/
GitHub : https://github.com
Did-web : Paginador para Prestashop