Saltar al contenido principal

Esquema de numeración de versiones de V8

Los números de versión de V8 tienen la forma x.y.z.w, donde:

  • x.y es el hito de Chromium dividido por 10 (ejemplo: M60 → 6.0)
  • z se incrementa automáticamente cada vez que hay un nuevo LKGR (generalmente varias veces al día)
  • w se incrementa para parches retroactivos fusionados manualmente después de un punto de ramificación

Si w es 0, se omite en el número de versión. Por ejemplo, v5.9.211 (en lugar de “v5.9.211.0”) se incrementa a v5.9.211.1 después de fusionar un parche retroactivo.

¿Qué versión de V8 debo usar?​

Los incrustadores de V8 generalmente deberían usar la cabeza de la rama correspondiente a la versión menor de V8 que se envía en Chrome.

Encontrar la versión menor de V8 correspondiente a la última versión estable de Chrome​

Para averiguar qué versión es esta,

  1. Ve a https://chromiumdash.appspot.com/releases
  2. Encuentra la última versión estable de Chrome en la tabla
  3. Haz clic en el (i) y revisa la columna V8

Encontrar la cabeza de la rama correspondiente​

Las ramas relacionadas con la versión de V8 no aparecen en el repositorio en línea en https://chromium.googlesource.com/v8/v8.git; en su lugar, solo aparecen etiquetas. Para encontrar la cabeza de esa rama, ve a la URL en esta forma:

https://chromium.googlesource.com/v8/v8.git/+/branch-heads/<minor-version>

Ejemplo: para la versión menor 12.1 de V8 encontrada anteriormente, vamos a https://chromium.googlesource.com/v8/v8.git/+/branch-heads/12.1, encontrando un commit titulado “Versión 12.1.285.2.

Precaución: No deberías simplemente encontrar la etiqueta numéricamente mayor correspondiente a la versión menor de V8 mencionada anteriormente, ya que a veces esas no son compatibles, por ejemplo, se etiquetan antes de decidir dónde cortar las versiones menores. Estas versiones no reciben retrocesos ni similares.

Ejemplo: las etiquetas de V8 5.9.212, 5.9.213, 5.9.214, 5.9.214.1, …, y 5.9.223 están abandonadas, a pesar de ser numéricamente mayores que la cabeza de rama de 5.9.211.33.

Revisar la cabeza de la rama correspondiente​

Si ya tienes el código fuente, puedes revisar la cabeza directamente. Si has obtenido el código fuente usando depot_tools, deberías poder hacer lo siguiente:

git branch --remotes | grep branch-heads/

para listar las ramas relevantes. Querrás revisar la que corresponde a la versión menor de V8 que encontraste anteriormente y usar esa. La etiqueta en la que termines será la versión de V8 adecuada para ti como incrustador.

Si no usaste depot_tools, edita .git/config y agrega la línea de abajo a la sección [remote "origin"]:

fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*