#wit #download #wasmtime #extract #cli-tool #release #wasm

app wasi-wit-download

一款用于从 Wasmtime 版本下载并提取特定 WIT 依赖的 CLI 工具

1 个不稳定版本

0.1.0 2024年8月1日

#531命令行工具

Download history 113/week @ 2024-08-01

每月 113 次下载

AGPL-3.0

29KB
121

wasi-wit-download

目前,许多 Wasm 项目需要用户手动设置。这部分手动设置通常涉及从特定的 Wasmtime 版本下载 WIT 文件。该项目旨在通过提供可以下载特定 Wasmtime 版本的 WIT 文件的 CLI 工具来自动化此过程。

如何安装?

cargo install wasi-wit-download

如何使用?

wasi-wit-download <release> <wit-dep-1> <wit-dep-2> ... <wit-dep-n>

示例

wasi-wit-download 18 cli clocks

输出

Downloading from Wasmtime version: 18
WIT dependencies to download: ["cli", "clocks"]
Downloaded: "cli"
Downloaded: "clocks"

这将下载 Wasmtime 版本 18cliclocks 依赖项的 WIT 文件到当前目录。

如果您请求一个不存在的 WIT 依赖项,工具将打印错误消息并退出。

$ wasi-wit-download 18 cli foo clocks
Downloading from Wasmtime version: 18
WIT dependencies to download: ["cli", "foo", "clocks"]
Downloaded: "cli"
Downloaded: "clocks"
Error: The following folders were not found in the archive: ["foo"]
error: process didn't exit successfully: `wasi-wit-download.exe 18 cli clocks foo` (exit code: 1)

注意:依赖项 cliclocks 仍然会被下载。

限制

  • 此工具仅适用于 Wasmtime 版本 10 及以上,因为我们硬编码从 wasmtime-{version}.0.0/crates/wasi/wit/deps 中搜索 WIT 依赖项,该路径仅存在于 10 版本及以上。
  • 没有 CI 测试。只有手动测试。
  • 我们只允许从主要的 Wasmtime 版本(例如,10、11、12 等)下载 WIT 文件。我们不支持从次要版本(例如,10.1、10.2、10.3 等)下载 WIT 文件。

依赖项

~12–25MB
~360K SLoC