Chrome Versión 80

Google presentado lanzamiento del navegador web Chrome 80... Simultaneamente esta disponible lanzamiento estable de un proyecto libre Cromo, que es la base de Chrome. navegador cromo diferente el uso de logotipos de Google, la presencia de un sistema para enviar notificaciones en caso de falla, la capacidad de cargar el módulo Flash a pedido, módulos para reproducir contenido de video protegido (DRM), un sistema de actualización automática y transmisión en búsqueda Parámetros RLZ. El próximo lanzamiento de Chrome 81 está previsto para el 17 de marzo.

El principal cambios в Chrome 80:

  • Para un pequeño porcentaje de usuarios, se ofrece una función de agrupación de pestañas, que permite combinar varias pestañas con propósitos similares en grupos visualmente separados. A cada grupo se le puede asignar su propio color y nombre. Los usuarios que no estuvieron incluidos en la primera ola de activación pueden habilitar el soporte de agrupación a través de la opción “chrome://flags/#tab-groups”.

    Chrome Versión 80

  • Se agregó soporte para esta característica. Desplazarse hasta el texto, que le permite crear enlaces a palabras o frases individuales sin especificar explícitamente etiquetas en el documento utilizando la etiqueta "un nombre" o la propiedad "id". Está previsto aprobar la sintaxis de dichos enlaces como estándar web, que aún se encuentra en fase de preparación. borrador. La máscara de transición (esencialmente una búsqueda de desplazamiento) está separada del ancla normal por el atributo “:~:”. Por ejemplo, cuando abre el enlace "https://opennet.ru/52312/#:~:text=Chrome", la página se moverá a la posición con la primera mención de la palabra "Chrome" y esta palabra se resaltará. .
  • Aplicado Una restricción más estricta a la transferencia de Cookies entre sitios, para solicitudes que no sean HTTPS, que prohíbe el procesamiento de Cookies de terceros configuradas al acceder a sitios distintos al dominio de la página actual. Estas cookies se utilizan para rastrear los movimientos de los usuarios entre sitios en el código de redes publicitarias, widgets de redes sociales y sistemas de análisis web. Recuerde que para controlar la transmisión de Cookies se utiliza el atributo SameSite especificado en el encabezado Set-Cookie, que por defecto ahora está configurado en el valor “SameSite=Lax”, lo que limita el envío de Cookies para subsolicitudes entre sitios. , como una solicitud de imagen o cargar contenido a través de un iframe desde otro sitio. Los sitios pueden anular el comportamiento predeterminado de SameSite estableciendo explícitamente la configuración de Cookie en SameSite=None. Sin embargo, el valor SameSite=None para Cookie sólo se puede configurar en modo seguro (válido para conexiones vía HTTPS). El cambio comenzará por etapas aplicar 17 de febrero, inicialmente para un pequeño porcentaje de usuarios, y luego ampliando paulatinamente la cobertura.
  • Añadido por protección contra notificaciones molestas relacionadas con la confirmación de credenciales. Debido a que actividades como el envío de solicitudes de notificaciones automáticas de spam interrumpen la experiencia del usuario y distraen la atención de los cuadros de diálogo de confirmación, en Chrome 80, en lugar de un cuadro de diálogo separado, ahora se puede mostrar una información sobre herramientas informativa en la barra de direcciones advirtiendo que la solicitud de permiso ha sido bloqueada, que luego se colapsa en un indicador con la imagen de una campana tachada. Al hacer clic en el indicador, puede activar o rechazar el permiso solicitado en cualquier momento conveniente. Automáticamente, el nuevo modo se habilitará de forma selectiva para los usuarios que anteriormente solían bloquear dichas solicitudes, así como para los sitios que registran un gran porcentaje de solicitudes rechazadas. Para habilitar el nuevo modo para todas las solicitudes, se ha agregado una opción especial a la configuración (chrome://flags/#quiet-notification-prompts).

    Chrome Versión 80

  • Prohibido mostrar ventanas emergentes (llamando al método window.open()) y enviar XMLHttpRequests sincrónicas en los controladores de eventos para cerrar u ocultar páginas (descargar, antes de descargar, ocultar página y cambio de visibilidad);
  • Inicial propuesta protección de cargar contenido multimedia mixto (cuando los recursos se cargan en una página HTTPS a través del protocolo http://). En las páginas abiertas a través de HTTPS, los enlaces "http://" ahora se reemplazarán automáticamente por "https://" en los bloques asociados con la reproducción de archivos de audio y video. Si un recurso de audio o vídeo no está disponible a través de https, entonces se bloquea su descarga (puedes marcar manualmente el bloqueo a través del menú accesible a través del símbolo del candado en la barra de direcciones).

    Las imágenes continuarán cargándose sin cambios (la autocorrección se aplicará en Chrome 81), pero para reemplazarlas con https o bloquear imágenes, los desarrolladores del sitio reciben las propiedades CSP de solicitudes de actualización inseguras y bloquear todo el contenido mixto. Para scripts e iframes, el bloqueo de contenido mixto ya se implementó anteriormente.

  • Un gradual apagado Soporte FTP. De forma predeterminada, la compatibilidad con FTP todavía está disponible, pero llevado a cabo un experimento en el que la compatibilidad con FTP se deshabilitará para un cierto porcentaje de usuarios (para regresar deberá iniciar el navegador con la opción "-enable-ftp"). Recordemos que en versiones anteriores la visualización en la ventana del navegador del contenido de los recursos descargados mediante el protocolo “ftp://” ya estaba deshabilitada (por ejemplo, se detuvo la visualización de documentos HTML y archivos README), se prohibió el uso de FTP. prohibido al descargar subrecursos de documentos y se suspendió la compatibilidad con proxy para FTP. Sin embargo, todavía era posible descargar archivos mediante enlaces directos y mostrar el contenido de los directorios.
  • Añadido por
    la capacidad de utilizar imágenes vectoriales SVG como icono del sitio (favicon).

  • Se ha agregado a la configuración la capacidad de deshabilitar selectivamente ciertos tipos de datos transferidos durante la sincronización entre navegadores.
  • Se ha agregado una regla para usuarios corporativos administrados centralmente. Bloquear extensiones externas, que le permite evitar la instalación de complementos externos en el dispositivo.
  • Implementado oportunidad una verificación única de toda la cadena de propiedades o llamadas en JavaScript. Por ejemplo, al acceder a “db.user.name.length” anteriormente era necesario verificar la definición de todos los componentes paso a paso, por ejemplo, a través de “if (db && db.user && db.user.name)”. Ahora usando la operación “?.” puede acceder al valor “db?.user?.name?.length” sin comprobaciones preliminares y dicho acceso no dará lugar a un error. En caso de problemas (si algún elemento se procesa como nulo o indefinido)), la salida será "indefinida".
  • JavaScript introduce un nuevo operador de concatenación lógica "??", que devuelve el operando derecho si el operando izquierdo es NULL o no está definido, y viceversa. Por ejemplo, "const foo = barra?? 'cadena predeterminada'" si bar es nulo, devolverá el valor de bar en caso contrario, incluso cuando bar es 0 y ' ', a diferencia del operador "||".
  • En el modo Origin Trials (funciones experimentales que requieren activación) API de indexación de contenido propuesta. Origin Trial implica la capacidad de trabajar con la API especificada desde aplicaciones descargadas de localhost o 127.0.0.1, o después de registrarse y recibir un token especial que es válido por un tiempo limitado para un sitio específico. API Indexación de contenido, proporciona metadatos sobre el contenido que anteriormente se almacenó en caché mediante aplicaciones web que se ejecutan en modo Progressive Web Apps (PWS). La aplicación puede guardar diversos datos en el lado del navegador, incluidas imágenes, vídeos y artículos, y cuando se pierde la conexión de red, utilizarla mediante las API Cache Storage e IndexedDB. La API de indexación de contenido permite agregar, buscar y eliminar dichos recursos. En el navegador, esta API ya se utiliza para mostrar una lista de páginas y datos multimedia disponibles para ver sin conexión.

    Chrome Versión 80

  • Estabilizado y ahora distribuido fuera de la API de Origin Trials Selector de contactos, permitiendo al usuario seleccionar entradas de la libreta de direcciones y transmitir ciertos detalles sobre ellas al sitio. La solicitud especifica una lista de propiedades que deben recuperarse. Estas propiedades se muestran explícitamente al usuario, quien decide si pasarlas o no. La API se puede utilizar, por ejemplo, en un cliente de correo web para seleccionar los destinatarios de una carta enviada, en una aplicación web con función VoIP para iniciar una llamada a un número específico o en una red social para buscar amigos ya registrados. . Al mismo tiempo, como parte de las Pruebas de Origin, se ofrecen algunas propiedades nuevas del Selector de contactos: además del nombre completo, el correo electrónico y el número de teléfono disponibles anteriormente, se ha agregado la capacidad de transferir una dirección de correo electrónico y una imagen.
  • En trabajadores web sugirió una nueva forma de cargar módulos ECMAScript, que le permite evitar el uso de la función importScripts(), que bloquea al trabajador mientras procesa el script importado y lo ejecuta en el contexto global. El nuevo método implica la creación de módulos especiales para Web Workers que admitan mecanismos de importación de JavaScript estándar y se puedan cargar dinámicamente sin bloquear la ejecución del trabajador. Para cargar módulos, el constructor Worker proporciona un nuevo tipo de recurso: 'módulo':

    trabajador constante = nuevo trabajador('trabajador.js', {
    tipo: 'módulo'
    });

  • Implementado La capacidad incorporada de JavaScript para procesar secuencias comprimidas sin requerir el uso de bibliotecas externas. Se han agregado API para compresión y descompresión. Corriente de compresión y corriente de descompresión. Se admite la compresión mediante algoritmos gzip y deflate.

    compresión constanteReadableStream
    = inputReadableStream.pipeThrough(new CompressionStream('gzip'));

  • Propiedad CSS agregada "salto de línea: en cualquier lugar", que permite saltos al nivel de cualquier carácter tipográfico, incluidos saltos cerca de caracteres de puntuación predefinidos por espacios ( ) y en medio de las palabras. También se agregó la propiedad CSS "envoltura de desbordamiento: en cualquier lugar» le permite dividir secuencias ininterrumpidas de caracteres en cualquier lugar si no se puede encontrar una posición adecuada para la ruptura en la línea.
  • Para el contexto multimedia procesado en forma cifrada, se ha implementado soporte para el método. MediaCapabilities.decodingInfo(), que proporciona información sobre las capacidades del navegador para decodificar contenido protegido (por ejemplo, este método se puede utilizar para seleccionar escenarios de decodificación de alta calidad o de bajo consumo energético según el ancho de banda disponible y el tamaño de la pantalla).
  • Método agregado HTMLVideoElement.getVideoPlaybackQuality(), a través del cual puede obtener información sobre el rendimiento de la reproducción de video para ajustar la tasa de bits, la resolución y otros parámetros del video.
  • En API Manejador de pagos, que simplifica la integración con los sistemas de pago existentes, agregó la capacidad delegación procesamiento de dirección e información de contacto a un procesador externo del sistema de pago (la aplicación del sistema de pago puede tener información más precisa que el navegador).
  • Se agregó soporte para encabezados HTTP Sec-Buscar-Dest, que le permite enviar metadatos adicionales sobre el tipo de contenido asociado con la solicitud (por ejemplo, para una solicitud a través de la etiqueta img, el tipo es "imagen", para fuentes - "fuente", para scripts - "script", para estilos - "estilo", etc.). Según el tipo especificado, el servidor puede tomar medidas para protegerse contra ciertos tipos de ataques (por ejemplo, es poco probable que un enlace a un controlador para una transferencia de dinero se especifique mediante una etiqueta img, por lo que tales solicitudes no necesitan estar procesado).
  • En el motor JavaScript V8 optimización realizada almacenar punteros en el montón. En lugar de almacenar el valor completo de 64 bits, sólo se almacenan los bits inferiores únicos del puntero. Esta optimización permitió reducir el consumo de memoria dinámica en un 40%, a costa de una penalización de rendimiento del 3-8%.
    Chrome Versión 80

    Chrome Versión 80

  • Cambios en herramientas para desarrolladores web:
    • La consola web ahora tiene la capacidad de redefinir expresiones let y class.

      Chrome Versión 80

    • Herramientas de depuración de WebAssembly mejoradas. Soporte agregado ENANO para depurar paso a paso, especificar puntos de interrupción y analizar seguimientos de pila en el código fuente en el que está escrita una aplicación WebAssembly.

      Chrome Versión 80

    • Panel mejorado para analizar la actividad de la red. Se agregó la capacidad de ver la cadena de llamadas de scripts asociados con el inicio de la solicitud.

      Chrome Versión 80

      Se agregaron nuevas columnas Ruta y URL que muestran la ruta absoluta y la URL completa para cada recurso de red. Garantiza que la consulta seleccionada esté resaltada en el diagrama de descripción general.

      Chrome Versión 80

    • En la pestaña Condiciones de red, se ha agregado una opción para cambiar el parámetro Usuario-Agente.

      Chrome Versión 80

    • Se ha propuesto una nueva interfaz para configurar el panel de auditoría.
      Chrome Versión 80

    • En la pestaña Cobertura proporcionó la opción de recopilar datos de cobertura para cada función o para cada bloque de código (estadísticas más detalladas, pero requiere más recursos).

      Chrome Versión 80

  • Acción de manifiesto de AppCache (tecnología para organizar el funcionamiento de una aplicación web en modo fuera de línea) limitado el directorio actual del sitio (si el manifiesto se descargó de www.example.com/foo/bar/, entonces la capacidad de anular la URL solo funcionará dentro de /foo/bar/). Está previsto que la compatibilidad con AppCache se elimine por completo en Chrome 82. La razón citada es el deseo de deshacerse de uno de los vectores de ataques de scripts entre sitios. Se recomienda utilizar API en lugar de AppCache cache.
  • Interrumpido soporte para la API WebVR 1.1 heredada, que puede ser reemplazada por la API Dispositivo WebXR, que permite acceder a componentes para la creación de realidad virtual y aumentada y unificar el trabajo con diversas clases de dispositivos, desde cascos de realidad virtual estacionarios hasta soluciones basadas en dispositivos móviles.
  • Los controladores de protocolo conectados a través de los métodos RegisterProtocolHandler() y unregisterProtocolHandler() ahora solo pueden funcionar en un contexto seguro (cuando se accede a través de HTTPS).

Además de las innovaciones y correcciones de errores, la nueva versión elimina 56 vulnerabilidades. Muchas de las vulnerabilidades se identificaron como resultado de herramientas de prueba automatizadas. Dirección Sanitizador, Desinfectante de memoria, Integridad del flujo de control, libfuzzer и 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. Como parte del programa para pagar recompensas en efectivo por descubrir vulnerabilidades para la versión actual, Google pagó 37 premios por valor de 48 dólares (un premio de 10000 dólares, tres premios de 5000 dólares, tres premios de 3000 dólares, cuatro premios de 2000 dólares, tres premios de 1000 dólares y seis premios de 500 dólares). Aún no se ha determinado el tamaño de las 17 recompensas.

Fuente: opennet.ru

Añadir un comentario