Versión beta de Chrome 112

Anidamiento de CSS, app-composition y un parámetro de remitente para el constructor de FormData.

A menos que se indique lo contrario, los cambios que se describen a continuación se aplican a la versión más reciente del canal beta de Chrome para Android, ChromeOS, Linux, macOS y Windows. Obtén más información sobre las funciones que se enumeran aquí a través de los vínculos proporcionados o de la lista en ChromeStatus.com. Chrome 112 está beta desde el 9 de marzo de 2023. Puedes descargar la versión más reciente en Google.com para computadoras o desde Google Play Store para Android.

CSS

Anidamiento de CSS

La capacidad de anidar reglas de estilo CSS dentro de otras reglas de estilo, combinando selectores del exterior con la regla interna para aumentar la modularidad y el mantenimiento de las hojas de estilo. Obtén más información en este artículo sobre el Nesting de CSS.

Propiedad animation-composition de CSS

La propiedad animation-composition permite especificar la operación compuesta que se usará cuando varias animaciones afecten la misma propiedad de forma simultánea. Mira un ejemplo en esta demostración.

API web

"Volver a cargar esta página" La barra de información ya no se muestra si el marco de nivel superior observa los cambios de permisos

Suprime la página "Volver a cargar esta página" la barra de información si el fotograma de nivel superior está suscrito al evento onchange de PermissionStatus, que se toma como una indicación de que la aplicación desea reaccionar de forma dinámica a los cambios de permiso de la cámara o el micrófono que se inician a través del diálogo de información de la página. Independientemente de la presencia del objeto de escucha de eventos, el comportamiento preexistente permanece igual que las transmisiones de medios se finalizan de inmediato una vez que se revoca el permiso.

Agrega el parámetro opcional de remitente al constructor FormData

Permite pasar un botón de envío al constructor FormData. Si el botón tiene nombre o es un botón de imagen, contribuirá al conjunto de datos del formulario. Esto permite crear un objeto FormData con el mismo conjunto de datos que el envío de un formulario estándar activado por el botón.

Marca RegExp v con notación establecida y propiedades de cadenas

Agrega operaciones de conjuntos, literales de string, clases anidadas y propiedades Unicode de strings a las clases de caracteres de expresiones regulares. Las operaciones de configuración y las propiedades Unicode de las strings permiten a los desarrolladores crear expresiones regulares que coincidan con strings con ciertos caracteres Unicode de forma sencilla.

Por ejemplo:/[\p{Script_Extensions=Greek}&&\p{Letter}]/v coincide con todas las letras griegas.

Se actualizó el algoritmo de enfoque inicial de <dialog>

Se realizaron algunos cambios en el elemento seleccionado para enfocarse cuando se abre un elemento <dialog>:

  • Haz que los pasos de enfoque del diálogo observen los elementos enfocables del teclado en lugar de cualquier elemento enfocable.
  • Haz que el elemento de diálogo se enfoque si tiene configurado el atributo de enfoque automático.
  • Hacer que el elemento de diálogo en sí se enfoque como un resguardo en lugar de que se "restablezca" el foco. al elemento del cuerpo.

Llamada final de WebAssembly

Agrega a WebAssembly una llamada de cola explícita y códigos de operación de llamadas de cola indirectas.

WebGLContextEvent en Web Workers

El tipo WebGLContextEvent se definió en Khronos especificación de WebGL durante varios años, pero no se notó hasta hace poco que en Blink, este tipo no se expone a los trabajadores web.

La mayoría de las aplicaciones simplemente agregan un objeto de escucha de eventos para el tipo y no buscan su prototipo en el alcance global. Esta es una corrección simple del IDL web de Blink para WebGLContextEvent, pero es un cambio expuesto en la Web.

Omitir el controlador de recuperación no-ops del service worker

Esta función permite que la navegación por las páginas con service worker no-op recupera los controladores con rapidez, ya que los omite.

Algunos sitios tienen un objeto de escucha de recuperación no-op (sin operación) (por ejemplo, onfetch = () => {}). Dado que tener el objeto de escucha de recuperación era uno de los requisitos para ser una app web progresiva (AWP), suponemos que lo hicieron para que su sitio fuera reconocido como AWP. Sin embargo, solo genera sobrecarga para iniciar un service worker y ejecutar un objeto de escucha no-op, sin ofrecer beneficios como el almacenamiento en caché ni capacidades sin conexión porque el código no hace nada.

Para que la navegación a esas páginas sea más rápida, a partir de Chrome 112, omitiremos el inicio del service worker y el envío del objeto de escucha de la ruta crítica de navegación si un usuario-agente identifica que todos los objetos de escucha del service worker son no-ops.

Como parte de este cambio, Chromium mostrará advertencias en la consola si todos los objetos de escucha de recuperación del service worker son no-ops, y alentará a los desarrolladores a quitar los objetos de escucha de recuperación inútiles. Esperemos que los sitios dejen de usar los objetos de escucha de recuperación inútiles y podamos dar de baja la función en el futuro.

Aceptación de codificación: br (Brotli) en una conexión HTTPS en WebView

Brotli (tipo de codificación de contenido: br) es un algoritmo de compresión sin pérdida de propósito genérico que ofrece una compresión más densa con una proporción de compresión y una velocidad comparable con los mejores métodos de compresión de uso general disponibles actualmente (consulta google/brotli y RFC 7932 para obtener más información).

Si bien el tipo de codificación de contenido HTTP para Brotli (Accept-Encoding: br) fue compatible con Chrome a partir de la versión 50, no estaba habilitado para WebView hasta ahora. La función se implementará en etapas para garantizar la estabilidad y estará disponible para el 50% de la población en WebView beta.

Pruebas de origen en curso

En Chrome 112, puedes habilitar las siguientes pruebas de origen.

FedCM: API de reautenticación automática

La versión más reciente de FedCM incluye una función opcional de reautenticación automática, que permite reautenticar usuarios automáticamente cuando regresan después de su autenticación inicial con FedCM.

Actualmente, después de que un usuario crea una cuenta federada en una RP (parte de confianza) con un IdP (proveedor de identidad) a través de FedCM, la próxima vez que visita el sitio web debe seguir los mismos pasos en la interfaz de usuario. Es decir, deben confirmar y volver a autenticarse de manera explícita para continuar con el flujo de acceso. Como uno de los principales objetivos de FedCM es evitar el seguimiento encubierto, esta experiencia del usuario (UX) tiene sentido antes de que el usuario cree la cuenta federada, pero se vuelve innecesaria y complicada una vez que el usuario la haya completado una vez. Es por eso que Chrome presenta una UX más optimizada que los RP pueden elegir para sus usuarios recurrentes.

Regístrate en la prueba de origen de reautenticación automática de FedCM

Prueba de baja

El método getStats() de RTCPeerConnection ya no mostrará objetos de estadísticas en los que type == "track" o "stream". Esta función se quitó en Chrome 112. Habilita esta prueba para tener más tiempo para realizar los cambios necesarios.

Regístrate en esta prueba de baja

Baja de la solicitud X en WebView

La prueba de origen de la baja admite la habilitación previa de origen cruzado cuando se llama a servicios que dependen del encabezado X-Requested-With. Esta opción está disponible en WebView desde Chrome 112. Consulta las instrucciones de configuración de la prueba de origen para saber cómo usar esta función.

Regístrate en la prueba de baja de la solicitud X con WebView.

Bajas y eliminaciones

Esta versión de Chrome incluye las bajas y las eliminaciones que se indican a continuación. Visita ChromeStatus.com para consultar las listas de bajas planificadas, bajas actuales y eliminaciones anteriores.

Esta versión de Chrome da de baja una función.

Dar de baja el método set document.domain

El método set document.domain permite a los desarrolladores flexibilizar la política del mismo origen, lo que complica el límite de seguridad fundamental que intentamos mantener y pone obstáculos en el camino de los cambios posteriores a Spectre en el modelo de procesos de Chromium. Ahora se habilita mediante clústeres de agentes con clave de origen.

Esta versión de Chrome quita una función.

Se quitaron los objetos de estadísticas track y stream del método getStats() de RTCPeerConnection.

El método getStats() de RTCPeerConnection ya no mostrará objetos de estadísticas en los que type == "track" o "stream". No se envió en Chrome 112 con una prueba de baja (que se indica más arriba) para extender la disponibilidad de estas métricas a Chrome 115.