slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
Deno 1.39 发布:WebGPU 回归,加上更好的 Node.js 兼容性和 TypeScript 5.3
17611538698
webmaster@21cto.com

Deno 1.39 发布:WebGPU 回归,加上更好的 Node.js 兼容性和 TypeScript 5.3

开源 0 1187 2023-12-20 10:06:45

图片

新的 Deno 1.39 已推出 WebGPU 支持、新的覆盖报告器、更好的 Node.js 兼容性和TypeScript 5.3 ,不过该团队警告说 TypeScript 装饰器即将发生重大变化。

全新的WebGPU

实际上,WebGPU 之前曾在 Deno 中出现过,它在 2021 年 3 月作为“实验性支持”。

当时Deno这样表示:

“我们相信 JavaScript如果有适当的基础设施,则可以代替 Python 成为表达数学思想的理想语言”.

当时的版本推广就是用于通用 GPU 计算和 GPU 渲染的 API。

在过去一年后,在 Deno 1.32 中,WebGPU 旋即被删除,原因是“支持 WebGPU 带来了成本,导致 deno 二进制文件更大,且启动速度更慢,并不适合所有用户,即使他们没有使用它。”

现在这些问题现在似乎已得到解决,尽管该功能仍然被指定为“不稳定”,但可以使用 –unstable-webgpu 标志。Deno 团队表示,该规范是稳定的,并且 API 是“开发人员构建的坚实基础”。 

WebGPU 是一个 W3C API,Deno 实现了基于与 Firefox 相同的内核。自 2023 年 5 月版本 113 起,Google Chrome 就已经支持该 API。WebGPU 是 WebGL 的后继者,后者不能很好地处理通用 GPU 编码,被广大开发者诟病。

静态支持与TypeScript

Deno Coverage 是一个报告测试覆盖率的工具。此版本的新增功能是能够将报告输出为汇总表或 HTML。输出可以托管在静态文件服务器上,例如 GitHub Pages。 

此版本中改进了 Node.js 兼容性,支持在 deno 任务中运行 node_modules/.bin 目录中的可执行文件、支持 node_modules 中的 CommonJS 入口点、其他 Node.js API 等等。

TypeScript 5.3 随此版本一起发布,因为 Deno 声称 TypeScript 优先。不过,关于 TypeScript 装饰器、附加到类、方法、访问器、属性或参数的声明,存在一个复杂性。TypeScript 长期以来一直将装饰器置于实验性的旗帜下,称为第 2 阶段装饰器。TypeScript 5.0 引入了不兼容的 ECMAScript 标准装饰器(称为第 3 阶段装饰器),但在使用实验标志时保留了其旧行为。Deno 默认实现了实验性装饰器,这可能是一个错误。该团队警告说,下一个 Deno 版本 1.40 会将默认值更改为第 3 阶段装饰器,这是一项重大更改 - 尽管可以通过将 ExperimentalDecorators 标志添加到项目的 deno.json 配置文件中来避免这一更改。

另外,Deno 竞争对手 Bun 并没有停滞不前,在四天内发布了三个版本(1.0.16、1.0.17 和 1.0.18),主要是错误修复和性能改进,尽管 1.0.17 版本 将前 500 个 npm 软件包添加到允许列表中,以便预安装、安装和安装后脚本无需特定权限即可运行,从而大大提高了兼容性。

小结

关于 Deno 1.39,最受前端开发者关注的是 WebGPU。

一个开发者这样说道:

“作为一个讨厌 Python 的人,我希望能够推出一些更优秀的 TS WebGPU 库”。

评论