Veo más y más comandos como este:
$ pip install "splinter[django]"
¿Qué hacen estos corchetes?
La syntax que está utilizando es:
pip install "project[extra]"
En su caso, está installing
el paquete splinter
que tiene el soporte adicional para django
. Los corchetes ( []
) no son syntax específica, solo una convención. Realmente, estás instalando el paquete llamado: "splinter[django]"
.
Una explicación de @chetner
:
El comando
pip install splinter django
instalaría dos paquetes llamadossplinter
ydjango
.splinter[django]
, por otro lado, instala una variante del paquetesplinter
que contiene soporte paradjango
. Tenga en cuenta que no tiene nada que ver con el paquetedjango
sí, sino que es solo una cadena definida por el paquetesplinter
para un conjunto de características particular que se habilita.
Bastante seguro de que estos son setuptools extras:
A veces, un proyecto tiene dependencias “recomendadas”, que no son necesarias para todos los usos del proyecto. Por ejemplo, un proyecto podría ofrecer una salida PDF opcional si ReportLab está instalado, y el soporte de texto reStructured si está instalado docutils. Estas características opcionales se llaman “extras” …