内容简介:Deno 1.8 已正式发布,此版本包含许多新功能以及稳定化的改进。 实验性支持 WebGPU API:主要是为在 Deno 中支持开箱即用的 CPU 加速机器学习做准备 启用内置的国际化 API:所有 JS Intl API 支持开箱即用 改进测...
Deno 1.8 已正式发布,此版本包含许多新功能以及稳定化的改进。
- 实验性支持 WebGPU API:主要是为在 Deno 中支持开箱即用的 CPU 加速机器学习做准备
- 启用内置的国际化 API:所有 JS
Intl
API 支持开箱即用 - 改进测试覆盖工具:覆盖 工具 支持输出
lcov
报告 - 导入映射 (Import maps) 已处于稳定状态:重写 Web 兼容性的依赖关系已正式生效
- 支持获取私有模块:可使用身份验证令牌从私有服务器获取远程模块
如果已经安装了 Deno,运行deno upgrade
命令即可升级到 1.8 版本。如果是首次安装,可以参考下面的方法:
# Using Shell (macOS and Linux):
curl -fsSL https://deno.land/x/install/install.sh | sh
# Using PowerShell (Windows):
iwr https://deno.land/x/install/install.ps1 -useb | iex
# Using Homebrew (macOS):
brew install deno
# Using Scoop (Windows):
scoop install deno
# Using Chocolatey (Windows):
choco install deno
实验性支持 WebGPU API
WebGPU API 为开发者提供了一种底层、高性能、跨架构的方式来通过 JavaScript 对 GPU 硬件进行编程。它被认为是 WebGL 在 Web 上的实际继任者。WebGPU 规范尚未最终确定,不过 Firefox、Chromium 和 Safari 已添加对它的支持,现在 Deno 也已添加了实验性支持。
开发者可以通过此 API 直接从 Deno 内部访问 GPU 渲染和通用 GPU 计算。下面是一个基础示例,演示了如何访问连接的 GPU 设备以及读取名称和支持的功能:
// Run with `deno run --unstable https://deno.land/posts/v1.8/webgpu_discover.ts`
// Try to get an adapter from the user agent.
const adapter = await navigator.gpu.requestAdapter();
if (adapter) {
// Print out some basic details about the adapter.
console.log(`Found adapter: ${adapter.name}`);
const features = [...adapter.features.values()];
console.log(`Supported features: ${features.join(", ")}`);
} else {
console.error("No adapter found");
}
下面的例子演示了 GPU 使用渲染着色器在绿色背景上渲染出一个简单的红色三角形:
$ deno run --unstable --allow-write=output.png https://raw.githubusercontent.com/crowlKats/webgpu-examples/f3b979f57fd471b11a28c5b0c91d0447221ba77b/hello-triangle/mod.ts
Deno 开发团队提到,此功能最终合并的 PR 包含多达 15.5 万行代码,并且花费了整整 5 个月的时间进行合并。
改进测试覆盖工具:deno coverage
此版本扩大了覆盖范围基础架构,以添加一些强大的新功能,其中主要变化是,覆盖率处理现在分为覆盖率集合和覆盖率报告。
导入映射已稳定
导入映射在 Chrome 89 已处于稳定状态,Deno 开发团队也紧跟着进行了更新以匹配该规范的最新版本,并且现在也被认为已处于稳定状态。这就意味着使用--import-map
时不再需要--unstable
flag。
$ deno run --import-map=./import_map.json ./mod.ts
此外,--import-map
flag 现在不仅接受本地路径,而且接受 URL,从而可以从远程服务器加载导入映射。
$ deno run --import-map=https://example.com/import_map.json ./mod.ts
导入映射允许用户使用所谓的“裸”说明符来表示依赖关系,而不是相对或绝对文件地址/http URL:
// Deno does not support such specifiers by default,
// but by providing an import map, users can remap bare specifiers
// to some other URLs.
import * as http from "std/http";
{
"imports": {
"std/http": "https://deno.land/std@0.85.0/http/mod.ts"
}
}
除了这些更新亮点,发布公告还介绍了许多其他新特性和改进,详情点此查看。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- GraalVM 21.1 社区版发布:实验性支持 Java 16
- Chrome 75 首个稳定版发布,新增实验性的阅读模式
- cURL 7.70.0 发布,原生支持 JSON、实验性支持 MQTT
- Git 2.29 稳定版发布,实验性支持更安全的 SHA-256
- mica 2.5.0 & 2.4.6 发布,实验性对 Spring Native 支持
- xmake v2.2.9 发布,新增 C++20 modules 的实验性支持
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
iPhone开发实战
2009-10 / 69.00元
《iPhone开发实战》全面探讨了iPhone平台的两种编程方式——Web开发和SDK编程。全书结合示例对这两种编程方式的基本流程、基本原理和基本原则给出了详细而通俗的讲解。在Web开发方面,分别介绍了三个iPhone Web库,即WebKit、iUI和Canvas,并讨论了Web开发环境Dashcode,最后阐述Web应用程序的调试。在SDK开发方面,详细描述其各种组件和功能,包括Xcode、I......一起来看看 《iPhone开发实战》 这本书的介绍吧!