前端周报专注大前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点,分为新闻热点、深度阅读、开源项目 & 工具等栏目。欢迎关注【前端之巅】微信公众号(ID: frontshow),及时获取前端周报内容。
新闻热点
前端新闻
Chrome:不再支持混用 http/https
10 月 3 日,Chromium 团队宣布 Chrome 将逐步开始确保 https:// 页面只能加载安全的 https:// 子资源。
Cloudflare、Google Chrome 和 Firefox 添加了 HTTP / 3 支持
下一代 HTTP 协议开始进入生产。
2020 年 12 月开始,不再维护 Node.js 8
Node.js 8.x 维护 LTS 周期将于 2019 年 12 月 31 日到期,这意味着 Node 8 将不再获得任何更新,包括错误修复或安全补丁。
NPM 十周年庆典
2019 年 10 月 1 日,NPM 成立十周年,目前已累计发布了一百万个包。
Safari Technology Preview 93 发布
Safari Technology Preview 93 版本现在可从 macOS Mojave 和 macOS Catalina beta 下载。如果您已经安装了 Safari Technology Preview,则可以在 macOS 上“系统偏好设置”的“软件更新”中进行更新。
行业新闻
PDF 文件中发现了两个重要漏洞
来自波鸿鲁尔大学和明斯特大学的研究人员的联合团队在 PDF 文件中发现了两个主要的安全漏洞。
研究人员称之为“直接渗透”的第一个变种利用了 PDF 加密规范,执行加密的软件不会对 PDF 文件的每个部分进行加密,这使文件的一部分向黑客开放。攻击者可以在合法用户打开文件时,将运行文件的未加密部分附加代码。打开文件后,添加的代码可以将文件的内容发送到攻击者指定的站点。
第二个变体没有名称,攻击者使用密码块链接小工具将 PDF 文档中存在的纯文本更改为代码,就像第一个变体一样,当合法用户打开文件时,嵌入式代码将执行,将文档发送到攻击者指定的站点。
Surface Neo 和 Surface Duo 将于明年圣诞上市
10 月 3 日,微软召开了品牌发布会,在此次发布会上,微软发布了首款双屏电脑 Surface Neo 和折叠屏手机 Surface Duo。据悉,Surface Neo 和 Surface Duo 将于明年圣诞节上市。
研究人员发明了比特币的低成本替代品
交易比特币需要浪费巨大的算力,如果有几乎零成本的替代品就太好了。计算机与通信科学学院的 Rachid Guerraoui 教授在他的分布式计算实验室(DCL)中开发的系统表明了人们对加密货币以及总体上数字信任的思考方式的转变。
传统比特币模型依靠解决称为“共识”的难题来保证交易的安全性。为了证明自己的诚实并达成共识,玩家必须执行复杂且耗能大的计算任务,然后再由其他玩家进行验证。
而在新系统中,Guerraoui 和他的同事颠覆了所有参与者都是潜在骗子的假设。他解释道:“我们采取了极简主义的方法。我们意识到,玩家无需达成共识,他们只需要在出现恶意行为时就加以阻止……因此,我们假设每个人都是诚实的,如果玩家看到某人试图做错事,他们将忽略该玩家。”
由于没有达成共识,DCL 的新系统被称为 Byzantine Reliable Broadcast,可以用几乎为零的能源成本实现大规模的安全加密货币交易,“大约相当于交换电子邮件的成本,” Guerraoui 说。
深度阅读
为什么 CSS 如此奇怪
CSS 是 Web 的设计语言,是三种 Web 核心语言之一,但它似乎也是最有争议且最令人困惑的一个。它太容易又太难,太脆弱又太灵活。有人喜欢它而有人讨厌它,CSS 很奇怪:没有足够的标记,没有一般意义上的(命令式)编程,也不像是专门为打印设计的程序。它是如何变成今天这样的?
https://hacks.mozilla.org/2019/09/why-is-css-so-weird/
使用 Wasmer-JS 在 JavaScript 中运行 WASI
WebAssembly System Interface(WASI)是一个令人兴奋的新规范,它允许 WebAssembly 在任何地方安全可靠地运行类 POSIX 应用程序。但是,对于兼容 Node 和浏览器中运行 WASI 模块并没有太多支持。近期,WebAssembly 社区开源了 Wasmer-js,可以使 wasm 模块轻松地运行在 node 和浏览器环境中。
https://medium.com/wasmer/wasmer-js-9a53e837b80
为什么渐进式 Web 应用程序(PWA)是移动 Web 的未来
本文介绍了渐进式 Web 应用为何如此重要,它们如何工作以及它们对业务产生了什么影响:
PWA 功能强大、有效、快速且具有接近原生应用的体验。很难想象通过 PWA 无法显著改善的移动网络媒体资源,他们还可以潜在地消除对当今存在的许多“伪需求”的原生应用。
https://ymedialabs.com/progressive-web-apps
改进 v8 正则表达式
在其默认配置中,V8 在首次执行时将正则表达式编译为本机代码。作为无 JIT V8 工作的一部分,我们引入了用于正则表达式的解释器。解释正则表达式的优点是使用更少的内存,但是会带来性能损失。在此博客文章中,我们描述了如何利用解释正则表达式的优点同时减轻缺点。
开源项目 & 工具
【Ship.js】自动化发布工具,使用 ship.js 高效地发布你的下一个版本。
https://github.com/algolia/shipjs
【Restorator.js】Restorator.js 是一个 DOM 自动同步生态系统。该模块将用户在 input 中的输入同步到三种存储(dom、localStorage、server storage)中。通过在 Web 应用程序中使用 Restorator,可以避免在页面和表单上使用保存按钮。
https://github.com/HarveyDanger/Restorator
【Discovery.js】改变阅读 json 的方式。
https://github.com/discoveryjs/discovery
【Endb】简单的 key-value 数据库,支持 LevelDB、MongoDB、MySQL、PostgreSQL、Redis 和 SQLite 的转接器。
https://github.com/chroventer/endb
【Next.js + React Hooks + GraphQL (Apollo) + Postgres SQL boilerplate】
https://github.com/tomsoderlund/nextjs-graphql-hooks-boilerplate
【超过 750 个针对 Web 开发人员的 RSS feed】作者自 2018 年 10 月以来,在 GitHub 上为 Web 开发人员整理了大量 RSS feed。此列表以 OPML 文件的形式提供。
https://github.com/simevidas/web-dev-feeds/blob/master/README.md
评论