La compañía Google ha lanzado la versión 106 del navegador web Chrome. Al mismo tiempo, está disponible la versión estable del proyecto libre Chromium, que sirve de base para Chrome. El navegador Chrome se diferencia de Chromium por el uso de los logotipos de Google, la presencia de un sistema de notificación en caso de fallos, módulos para la reproducción de contenido de video protegido (DRM), un sistema de actualización automática, la inclusión constante de la aislamiento Sandbox, la entrega de claves para la API de Google y el envío de parámetros RLZ en las búsquedas. Para aquellos que necesitan más tiempo para actualizar, se mantiene por separado la rama Extended Stable, que se acompaña de 8 semanas. La próxima versión de Chrome 107 está programada para el 25 de octubre.
Principales cambios en Chrome 106:
- Para los usuarios de versiones de escritorio, se ha habilitado por defecto el mecanismo Prerender2 para la pre-renderización del contenido de recomendaciones en la barra de direcciones Omnibox. La pre-renderización complementa la función previamente disponible de cargar recomendaciones más probables para acceder sin esperar a que el usuario haga clic. Además de la carga, el contenido de las páginas relacionadas con las recomendaciones ahora puede ser renderizado en el búfer (incluido la ejecución de scripts y la formación del árbol DOM), lo que permite que las recomendaciones se muestren instantáneamente tras el clic.
- Se ha proporcionado la posibilidad de buscar en el historial, marcadores y pestañas directamente desde la barra de direcciones Omnibox. Se han propuesto etiquetas de control para la localización de la búsqueda: @history, @bookmarks y @tabs. Por ejemplo, para buscar en los marcadores, hay que introducir «@bookmarks frase de búsqueda». Para deshabilitar la búsqueda desde la barra de direcciones, hay una opción especial en la configuración de búsqueda.


- La compatibilidad con la tecnología Server Push, que está definida en los estándares HTTP/2 y HTTP/3 y permite, ha sido desactivada por defecto. servidor Enviar recursos al cliente sin esperar su solicitud explícita. La razón para descontinuar el soporte menciona la complejidad excesiva en la implementación de la tecnología, dado que existen alternativas más simples y no menos efectivas, como la etiqueta , la respuesta HTTP 103 y el protocolo WebTransport. Según las estadísticas de Google, en 2021 alrededor del 1.25% de los sitios que funcionaban con HTTP/2 usaban Server Push, y en 2022 esta cifra disminuyó al 0.7%. La tecnología Server Push también está presente en la especificación HTTP/3, pero en la práctica muchos productos de software de servidor y cliente, incluido el navegador Chrome, no la implementaron inicialmente.
- Se ha desactivado la posibilidad de usar caracteres no ASCII en los dominios especificados en el encabezado Cookie (para dominios IDN debe indicarse dominios en formato punycode). Este cambio alinea al navegador con los requisitos de RFC 6265bis y el comportamiento implementado en Firefox.
- Se han propuesto etiquetas más claras para identificar pantallas en configuraciones de múltiples monitores. Tales etiquetas pueden mostrarse en los diálogos de autorización para abrir una ventana en una pantalla externa. Por ejemplo, en lugar del número de la pantalla externa ('Pantalla Externa 1'), ahora se mostrará el nombre del modelo del monitor ('HP Z27n').
- Mejoras en la versión para Android:
- En la página de historial de navegación se ha añadido soporte para el mecanismo "Journey", que resume la actividad pasada agrupando la información sobre búsquedas realizadas previamente y páginas visitadas. Al ingresar palabras clave en la barra de direcciones, si se usaron anteriormente en búsquedas, se sugiere continuar la búsqueda desde la posición interrumpida.
- En dispositivos con Android 11, se ha añadido la opción de bloquear la página abierta en modo incógnito después de cambiar a otra aplicación. Para continuar navegando después del bloqueo, se requiere autenticación. Por defecto, el bloqueo está desactivado y debe ser activado en la configuración de privacidad.
- Al intentar descargar archivos desde el modo incógnito, se muestra un mensaje adicional pidiendo confirmación para guardar el archivo y advirtiendo que otros usuarios del dispositivo podrán ver el archivo descargado, ya que se guardará en el área del gestor de descargas.

- Se ha interrumpido la provisión de la API chrome.runtime para todos los sitios. Esta API ahora se proporciona únicamente con la existencia de complementos del navegador conectados. Anteriormente, chrome.runtime estaba disponible para todos los sitios, ya que era utilizado por el complemento integrado CryptoToken con implementación de la API U2F, cuyo soporte ha sido descontinuado.
- En el modo Origin Trials (funcionalidades experimentales que requieren activación por separado) se han añadido varias API nuevas. El Origin Trial implica la posibilidad de trabajar con la API especificada desde aplicaciones cargadas desde localhost o 127.0.0.1, o tras registrarse y obtener un token especial que tiene una duración limitada para un sitio específico.
- La concepción de iframes anónimos que permiten cargar un documento en un contexto separado, no relacionado con otros iframes y el documento principal.
- La API Pop-Up para organizar la visualización de elementos de interfaz sobre otros elementos, por ejemplo, para gestionar menús interactivos, sugerencias, herramientas de selección de contenido y sistemas de formación. Para mostrar un elemento en la capa más alta se utiliza un nuevo atributo "popup". A diferencia de los diálogos creados mediante el elemento
- Para las propiedades ‘grid-template-columns’ y ‘grid-template-rows’, aplicadas en CSS Grid, se ha implementado soporte para la interpolación que organiza una transición suave entre diferentes estados de la cuadrícula.
- En la propiedad CSS ‘forced-color-adjust’ se ha añadido soporte para el valor ‘preserve-parent-color’, que al establecerse permite que la propiedad «color» tome su valor del elemento padre.
- La propiedad «-webkit-hyphenate-character» ha sido liberada del prefijo «-webkit-» y ahora está disponible bajo el nombre «hyphenate-character». Esta propiedad se puede utilizar para establecer la cadena que se usará en lugar del carácter de salto de línea al final de una palabra («-«).
- Se ha implementado la tercera edición de la API Intl.NumberFormat, que incluye nuevas funciones formatRange(), formatRangeToParts() y selectRange(), agrupamiento de conjuntos, nuevas opciones de redondeo y precisión, y la capacidad de interpretar cadenas como números decimales.
- En la API ReadableStream se ha añadido soporte para la transmisión directa eficiente de datos binarios desde un puerto secuencial evitando colas internas y buffers. La transmisión directa se habilita al establecer el modo BYOB — "port.readable.getReader({ mode: ‘byob’ })".
- Se ha añadido soporte para el evento «dequeue» y las llamadas de retorno asociadas en las interfaces de programación para trabajar con audio y video (AudioDecoder, AudioEncoder, VideoDecoder y VideoEncoder), que se activan cuando el códec comienza a ejecutar las tareas de codificación o decodificación en cola.
- En la API WebXR Device se ha implementado el acceso en crudo a las texturas de las imágenes de la cámara, sincronizadas con la posición actual en el entorno virtual.
- Se han realizado mejoras en las herramientas para desarrolladores web. En el panel de Sources se ha añadido la opción de agrupar archivos por su fuente. La traza de pila para operaciones asíncronas ha sido mejorada. Se ha añadido la posibilidad de ignorar automáticamente scripts de terceros conocidos durante la depuración. También se ha introducido la opción de ocultar archivos ignorados en los menús y paneles. El manejo de las pilas de llamadas en el depurador ha sido optimizado.

En el panel de Performance se ha añadido una nueva pista Interactions para visualizar la interacción con la página y detectar posibles problemas de reactividad de la interfaz.

Además de las nuevas características y corrección de errores, la nueva versión ha solucionado 20 vulnerabilidades. Muchas de estas vulnerabilidades fueron detectadas a través de pruebas automatizadas con herramientas como AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer y AFL. No se han identificado problemas críticos que permitan eludir todos los niveles de protección del navegador y ejecutar código en el sistema fuera del entorno sandbox. En el marco del programa de recompensas por la detección de vulnerabilidades para esta versión, Google ha otorgado 16 premios por un total de 38,500 dólares (incluyendo premios de $9000, $7500, $7000, $5000, $4000, $3000, $2000 y $1000). El monto de ocho de los premios aún no ha sido determinado.
Fuente: opennet.ru





