El proceso
Los complementos pasan por cuatro etapas: sugerencia, debate, implementación y publicación.
Sugerencia
Un complemento se inicia como una sugerencia. Para sugerir un complemento, crea un problema nuevo con la plantilla Solicitud de función.
cómo escribir una solicitud de función.
Obtén información sobreAdemás de la información básica sobre la solicitud de funciones, una sugerencia de complemento debe incluir lo siguiente:
- La API que exponería el complemento.
- APIs que se deben agregar o cambiar en el núcleo de Blockly para admitir el complemento
- Capturas de pantalla, GIF o simulaciones si el complemento incluye funciones de IU.
- Una explicación de por qué debería ser un complemento propio en lugar de uno de terceros.
El equipo de Blockly revisa las sugerencias a medida que llegan y cierra el problema o agrega la etiqueta status: discusión.
Discusión
A continuación, un complemento entra en la fase de debate. En esta fase, se incluye lo siguiente:
- Se aclaró la funcionalidad deseada.
- Se aclaró la API del complemento.
- Planificación de la implementación
- Planificación para las pruebas.
- Análisis de los cambios de la API en el núcleo de Blockly
- División de complementos grandes en pasos de implementación
- Asignación de nombres de complementos según nuestras convenciones de nombres
- Confirmar que se cumplirán todos los criterios propios
Por lo general, este análisis se relaciona con el problema de GitHub. Cuanto más pequeño sea el alcance del complemento, más rápida puede ser la fase de análisis. Los complementos más grandes pueden atraer la atención de la comunidad y aportar opiniones sólidas sobre la solución correcta. Si esto sucede con tu problema, ¡felicitaciones! Has encontrado algo que le importa a la gente.
El objetivo es que, al final de la fase de análisis, se hayan tomado todas las decisiones principales de diseño y haya una lista clara de los pasos de implementación. Ambos deberían documentarse en los comentarios sobre el problema.
Durante el análisis, es posible que decidamos que un complemento debe ser de terceros y no se debe publicar bajo el alcance de @blockly
. En ese caso, explicaremos
por qué y cerraremos el problema.
Cuando finaliza el debate, un miembro del equipo de Blockly agrega la etiqueta status:implementation al problema.
Implementación
Entre los pasos de implementación, se incluyen los siguientes:
- Ejecutar
npx @blockly/create-package
para configurar el complemento y su directorio desde una plantilla Más información... - Implementar la lógica central del complemento
- Implementar una IU si es necesario
- Se prueba el complemento con Mocha.
- Documentar el complemento, incluido el
README
.
Si el problema de un complemento muestra la etiqueta status: implementation, significa que está listo para la implementación o que se está implementando de forma activa. Para evitar la duplicación de esfuerzos, cualquier persona interesada debe comentar sobre el problema y preguntar si aún está abierto para contribuciones.
Varios colaboradores pueden llevar a cabo la implementación en paralelo. Puedes implementar un complemento de manera colaborativa en tu propia bifurcación o mediante solicitudes de extracción en este repositorio. Si deseas colaborar en un complemento en este repositorio, pídele al equipo de Blockly que cree una rama de funciones para ti.
Los complementos se deben agregar al archivo gh-pages/index.md
en la rama master
de las muestras en bloque. Eso hará que aparezcan en nuestro sitio de Complementos. Los complementos propios deben dirigir a la página de prueba. También se pueden agregar complementos de terceros
a esta página, que pueden dirigir a un vínculo que su propietario elija, como una
demostración alojada o la página de npm.
En proceso de publicación
Por último, publishing. El equipo de Blockly usa Lerna para administrar el control de versiones y la publicación de todos los complementos.
Todos los jueves, se publican todos los complementos que cambiaron desde su última versión. Si necesitas que se publique un cambio antes, anótalo en tu solicitud de extracción.
El sitio de Plugins también se actualiza cada vez que se publican complementos.
Los complementos que no están listos para la publicación deben marcarse como private
en su package.json
. Esto puede ocurrir si un complemento se basa en un cambio que aún no se publicó en core Blockly. Core Blockly se publica en la última semana de cada trimestre (una vez cada tres meses).