para optimizar y mejorar. Si alguna vez estás interesado en el trabajo que estamos haciendo allí, puedes ir a npm slash benchmarks y ver las diferentes ejecuciones que estamos realizando con las diferentes versiones de npm que estamos construyendo.
Entonces, npm v7 introdujo soporte para espacios de trabajo. Esto fue una gran victoria para nuestro equipo. Es algo que queríamos ofrecer a la comunidad de desarrolladores desde hace tiempo. El soporte básico aquí para los espacios de trabajo es simplemente la definición de los proyectos dentro de tu proyecto principal.
En este caso, en este ejemplo, simplemente he definido un espacio de trabajo A y B. Y a partir de la versión 7, 7.0.0, el único comando real que entendía o soportaba estas definiciones de espacios de trabajo era npm install. Y en realidad tengo una referencia a nuestra documentación. Y también hay referencias al RFC que creamos originalmente para este soporte básico.
Desde entonces, hemos dividido el trabajo en otras dos fases. Y la segunda de ellas es en lo que hemos estado trabajando recientemente, que es hacer que más comandos sean conscientes de los espacios de trabajo. Y esta segunda etapa de trabajo realmente abarca los otros 60 comandos que tenemos para definirlos y categorizarlos en términos de su conciencia de espacios de trabajo.
Lo que verás son dos nuevas configuraciones que se lanzarán en la próxima semana, junto con otros trabajos asociados a la conciencia de espacios de trabajo. La primera configuración que tenemos es 'workspaces'. Es esencialmente un booleano que se pasa a cualquiera de los comandos de NPM para indicarte que deseas ejecutar ese comando en los espacios de trabajo que has definido. Y luego la segunda configuración es una especie de comando filtrado para el espacio de trabajo específico en el que deseas ejecutar el comando. Así que eso es 'workspaces' y 'workspace'. Por lo tanto, ws y w son los alias.
Y si vemos cómo se ve esto en la práctica, a partir de NPM 7.7, podrás ejecutar cualquier script o comando del ciclo de vida, como scripts de ejecución, ejecutar pruebas, iniciar, detener, reiniciar con las banderas ws o w. En este caso, he ejecutado las pruebas con ws, y se ejecutan todos los scripts de prueba que están en los espacios de trabajo que he definido en mi proyecto. Y aquí, en este caso, en este ejemplo, he filtrado para ejecutar solo las pruebas del espacio de trabajo A que he definido en este proyecto. Y el espacio de trabajo es muy flexible. Puedes definir el espacio de trabajo varias veces. Así que, en este caso, he definido B y luego A. Y debido a la forma en que está implementado, se ejecutan en serie. Y puedes ver que las pruebas de B se ejecutan primero y luego las de A. Y si definiera más y más espacios de trabajo, verías que se realizan más y más ejecuciones. Por lo tanto, esta nueva función, esta nueva capacidad de trabajar con espacios de trabajo está disponible a partir de NPM v7.7, que lanzaremos en los próximos días. La versión 7.8 tendrá soporte para exec e init, y el resto de los subcomandos que sean conscientes de los espacios de trabajo vendrán posteriormente. Si alguna vez deseas obtener más información
Comments