Resumen de compilación de sistemas
Electron usa gyp para la generación de proyectos y ninja para su compilación. Las configuraciones del Proyecto puede ser encontradas en los archivos .gn
y .gni
.
Archivos GN
Los siguientes archivos gn
contienen las reglas principales para la construcción de Electron:
BUILD.gn
define como Electron mismo es construido e incluye la configuraciones predeterminadas para enlazar con Chromium.build/args/{debug,release,all}.gn
contiene los argumentos por defecto para la construcción de Electron.
Compilación de componentes
Dado que Chromium es un proyecto bastante grande, la etapa final de enlace puede tomar bastantes minutos, lo que dificulta el desarrollo. Para resolver esto, Chromium introdujo la "construcción de componentes", que construye cada componente como una biblioteca compartida separada, lo que hace que el enlace sea muy rápido pero sacrificando el tamaño del archivo y rendimiento.
Electron hereda esta opción de construcción de Chromium. En versiones Debug
se enlazará al binario con una versión de biblioteca compartida de los componentes de Chromium para lograr un tiempo de enlace rápido; para versiones Release
, el binario estará vinculado a las versiones estáticas de la biblioteca, de modo que podemos tener el mejor tamaño de binario posible y rendimiento.
Verificación
NB esta sección está desactualizada y contiene información que ya no es relevante para el GN-built electron.
Pruebe sus cambios conforme al estilo de codificación del proyecto usando:
$ npm run lint
Pruebe la funcionalidad usando:
$ npm test
Cada vez que realice cambios en el código fuente de Electron, deberá volver a ejecutar la compilación antes de las pruebas:
$ npm run build && npm test
Puede hacer que la prueba en suite corra más rápido al aislar la prueba específica o bloquear su trabajo actual en la característica prueba exclusiva de Mocha. Agregar .only
a cualquier describe
o it
función llama:
describe.only('alguna característica', () => {
// ... solo pruebas se ejecutarán en este bloque
})
Alternativamente, puede usar la opción de mocha grep
de solo correr prueba que coincidan con un patrón regular de expresión:
$ npm test -- --grep child_process
Pruebas que incluyan módulos nativos (como por ejemplo runas
) no pueden ser ejecutadas con el compilador de depuración (vea #2558 para más detalles), pero estos trabajarán con el compilado lanzado.
Para ejecutar las pruebas con el lanzamiento compila el uso:
$ npm test -- -R