Chrome 74 发布

谷歌 提交 网络浏览器版本 铬74的... 同时 是可用的 免费项目的稳定发布 ,这是Chrome的基础。 Chrome浏览器 不同 使用 Google 徽标、根据请求下载 Flash 模块的能力、在崩溃时发送通知的系统、播放受保护视频内容的模块、在搜索期间自动安装更新和传输的系统 RLZ参数。 Chrome 75 的下一个版本计划于 4 月 XNUMX 日发布。

变化 в 74:

  • 当 onUnload 事件发生时,该事件在页面关闭时调用,现在 禁止 显示弹出窗口(window.open() 调用被阻止),这将保护用户在关闭可疑网站后不会被迫打开广告页面;
  • 在 JavaScript 引擎中 实施的 新模式 无 JIT (“—jitless”标志),这使得可以在不使用 JIT(仅使用解释器)的情况下执行 JavaScript,并且在代码执行期间无需分配可执行内存。 禁用 JIT 有助于提高处理潜在危险 Web 应用程序时的安全性,并确保在禁止使用 JIT 的平台(例如 iOS、某些智能电视和游戏机)上进行构建。禁用 JIT 时,JavaScript 执行在 Speedometer 40 测试中性能下降了 2.0%,在 Web Tooling Benchmark 测试中性能下降了 80%,但在模拟使用 YouTube 时,性能仅下降了 6%,而内存消耗略有下降,仅下降了 1.7%;
  • V8 还提供了大量新的优化。 例如,实际传递的参数数量与定义函数时指定的参数数量不对应的函数调用的执行速度加快了 60%。 使用 get 函数访问 DOM 属性的速度得到了加快,这对 Angular 框架的性能产生了积极影响。 JavaScript解析加速:UTF-8解码器的优化使得流模式下的解析器性能(加载时解析)提高8%,消除不必要的重复数据删除操作又提高了10.5%;
  • 我们已经做了一些工作来减少 JavaScript 引擎的内存消耗。
    添加了清除字节码缓存的代码,字节码缓存约占总堆大小的 15%。 垃圾收集器中添加了一个阶段,用于从缓存中逐出不经常编译的字节码,用于使用的函数或仅在初始化时调用的函数。 清理决定是根据新计数器做出的,该计数器考虑了上次访问字节码的时间。 此更改将内存消耗减少了 5-15%,且不会对性能产生负面影响。 此外,字节码编译器会排除明显未使用的代码的生成,例如,在 return 或 break 之后的代码(如果没有跳转到它);

    Chrome 74 发布

  • 对于网络组装 实施的 支持线程和原子操作(API WebAssembly Threads 和 WebAssembly Atomics);
  • 对于单独交付脚本,添加了对“#!”标头的支持,该标头确定要运行的解释器。 例如,与其他脚本语言类似,JavaScript 文件可能如下所示:

    #!/usr/bin/env 节点
    控制台.log(42);

  • CSS 中添加了新的媒体查询“偏好减少运动“,允许网站确定操作系统中与禁用动画效果相关的设置状态。 根据建议的请求,网站所有者 может 发现用户禁用了动画效果,并禁用了网站上的各种动画功能,例如,删除用于吸引注意力的按钮的晃动效果;
  • 除了 Chrome 72 中引入的定义公共字段的功能之外 支持已实施 将字段标记为私有,之后对其值的访问将仅在类内开放。 要将字段标记为私有,请在字段名称前添加“#”号。 与公共字段一样,私有属性不需要显式使用构造函数。
  • 添加了Feature-Policy HTTP标头,它允许您控制API的行为并启用某些功能(例如,您可以启用XMLHttpRequest的同步操作模式或禁用Geolocation API) JavaScript API 控制某些机会的活动。 对于开发者来说,有两个新方法document.featurePolicy和frame.featurePolicy,提供三个功能:
    allowedFeatures() 获取当前域允许的功能列表,allowsFeature() 选择性地检查是否启用特定功能,getAllowlistForFeature() 返回当前页面允许指定功能的域列表;

  • 添加了对该模式的实验性(“chrome://flags#enable-text-fragment-anchor”)支持 滚动到文本,它允许您形成指向单个单词或短语的链接,而无需使用“a name”标签或“id”属性在文档中显式指定标签。 要发送链接,提供了一个特殊参数“#targetText=”,您可以在其中指定过渡文本。 允许指定一个掩码,其中包含使用逗号作为分隔符指示片段开头和结尾的短语(例如,“example.com#targetText=start%20words, end%20words”);
  • AudioContext 构造函数中添加了一个选项 采样率,它允许您通过 Web Audio API 设置音频操作的采样率;
  • 添加了类支持 国际区域设置,它提供了解析和处理语言环境设置的语言、区域和样式参数的方法,以及读写 Unicode 扩展标签、以序列化格式保存用户语言环境设置的方法;
  • Механизм 签名 HTTP 交换 (SXG) 通过工具进行了扩展 通知 内容分发者有关下载签名内容时出现的错误,例如证书验证问题。 错误处理是通过 API 扩展完成的 网络错误记录。 还记得 SXG 它允许 一个网站的所有者使用数字签名授权将某些页面放置在另一个网站上,之后,如果在第二个网站上访问这些页面,浏览器将向用户显示原始网站的 URL,尽管事实如此该页面是从不同的主机加载的;
  • TextEncoder 类中添加了一个方法 编码成(),它允许您将编码的字符串直接写入预先分配的缓冲区中。 encodeInto()方法是encode()方法的高性能替代方法,encode()方法需要在每次访问时执行缓冲区分配操作。
  • 在服务人员中 提供 缓冲 client.postMessage() 调用,直到文档准备好。 通过 client.postMessage() 发送的消息将被保留,直到引发 DOMContentLoaded 事件、设置 onmessage 或调用 startMessages() 为止;
  • 根据 CSS Transitions 规范的要求 添加 当CSS过渡排队、取消、开始或完成执行时生成transitionrun、transitioncancel、transitionstart和transitionend事件。
  • 当通过 overrideMimeType() 或 XMLHttpRequest 的 MIME 类型指定不正确的字符编码时,它现在会回退到 UTF-8 而不是 Latin-1;
  • “allow-downloads-without-user-activation”属性(通过该属性可以在处理 iframe 时自动下载文件)已被弃用,并将在未来版本中删除。 将来,在没有明确用户操作的情况下启动文件下载将被禁止,因为它已被积极用于滥用,强制下载并将部分恶意软件插入到用户的计算机上。 用户需要单击同一页面才能开始下载。 该属性原本计划在 Chrome 74 中移除,但最终移除 推迟 最高可达 Chrome 76。
  • 为Windows平台提供了可选的深色主题界面设计(在之前的版本中,为macOS准备了深色主题)。 由于深色设计与隐身模式下的设计几乎相同,因此添加了一个特殊的指示器来代替用户个人资料图标,以突出隐私操作模式;
  • 为企业用户添加了一个机会 Chrome 浏览器云管理 通过 Google 管理控制台管理用户浏览器设置;

    Chrome 74 发布

除了创新和错误修复之外,新版本还消除了 39个漏洞。 许多漏洞是由自动化测试工具发现的 地址消毒剂, 内存消毒器, 控制流完整性, 库模糊器 и AFL。 目前还没有发现任何严重问题可以让人们绕过所有级别的浏览器保护并在沙箱环境之外的系统上执行代码。 作为为当前版本的漏洞提供现金奖励计划的一部分,Google 支付了 19 个奖励,金额为 26837 美元(四个 3000 美元奖励,四个 2000 美元奖励,一个 1337 美元奖励,四个 1000 美元奖励,三个 500 美元奖励)。 4 项奖励的金额尚未确定。

来源: opennet.ru

添加评论