欢迎光临
我们一直在努力

Deno 1.32 发布,增强 Node.js 兼容性

Deno 是一个简单、现代和安全的 java script 和 TypeScript 的运行时,它使用 V8 并以 Rust 构建。

Deno 1.32 正式发布,值得关注的更新包括:

增强 Node.js 的兼容性

Deno 在提高与 Node.js 的兼容性方面继续取得重大进展,提供了更顺畅的整体开发者体验。这个版本的主要改进包括:

受控的自动发现: 当设置了 -no-config 和 -no-npm 标志时,package.json 的自动发现功能将被禁用,从而对该过程提供了更大的控制。

新的环境变量: 一个新的 DENO_NO_PACKAGE_JSON 环境变量允许你完全阻止 Deno 在环境中解析 package.json 文件。

扩大了对加密的支持: 增加了对 node:crypto 中 createCipheriv 和 createDecipheriv API 的支持,扩大了可用的加密功能范围。

错误浮现: package.json 中的依赖解析错误现在以一种 lazy 的方式浮出水面,最大限度地减少了干扰。

deno compile 支持 Web Worker 和动态导入

这个版本为 deno compile 带来了两个用户一直希望加入的更新。现在可以在使用 deno compile 子命令创建的二进制文件中使用动态导入和 Web Worker API。这使得多线程程序更容易用 deno compile 构建。

deno run 运行没有扩展名的文件

现在可以通过 --ext 标志运行不带扩展名的文件。

$ cat my_script

#!/usr/bin/env -S deno run --ext=js

console.log("Hello!");

$ ./my_script

Hello!

Deno API 的改变

Deno.FileInfo.dev 现在在 Windows 上被定义。这是一个额外的变化,因为 Deno.FileInfo.dev 字段的类型从 number | null 改为 number。

增加了两个新的不稳定的 API: Deno.DatagramConn.joinMulticastV4 和 Deno.DatagramConn.joinMulticastV6

Web API 的改变

现在支持 URLSearchParams.size()

移除不稳定的 WebGPU API。支持 WebGPU 引入了成本,使所有用户的 deno 二进制文件变得更大,启动速度更慢,即使用户并没有使用它。

TypeScript 5.0

Deno v1.32 搭载了 TypeScript 的最新稳定版本。

请注意,目前还不支持 ES 装饰器,但在未来的版本中将默认启用它们。

性能改进:除了 TypeScript 5.0 带来的其他性能优势外,Deno 的初始类型检查在不对远程模块进行类型检查时变得非常快。在大多数情况下,这一改进对减少 CI 上的类型检查时间带来了特别大的变化。节省下来的确切时间取决于依赖的远程模块的数量,但我们已经观察到类型检查的速度提高了 2 倍以上。

V8 11.2

这个版本升级到了 V8 的最新版本(11.2,之前是 11.0)

xt parameter for run, compile, and bundle (...

Cre3per 2023-03-22 15:15

赞(0) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Deno 1.32 发布,增强 Node.js 兼容性》
文章链接:https://www.cp1.cn/156.html

【声明】:本站宗旨是为方便站长、科研及外贸人员,请勿用于其它非法用途!站内所有内容及资源,均来自网络。本站自身不提供任何资源的储存及下载,若无意侵犯到您的权利,请及时与我们联系,邮箱1216634819@qq.com


评论 抢沙发