Skip to content

Commit 86bae51

Browse files
committed
New wasmtime workflow
1 parent 7f65aa9 commit 86bae51

14 files changed

Lines changed: 236 additions & 64 deletions

File tree

.github/workflows/main.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,13 +99,13 @@ jobs:
9999
runs-on: ubuntu-latest
100100
steps:
101101
- uses: actions/checkout@v4
102-
- name: "Install wasi-sdk-20 (linux)"
102+
- name: "Install wasi-sdk-30 (linux)"
103103
run: |
104104
set -x
105-
curl -sS -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-linux.tar.gz
106-
tar xf wasi-sdk-20.0-linux.tar.gz
105+
curl -sS -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-30/wasi-sdk-30.0-linux.tar.gz
106+
tar xf wasi-sdk-30.0-linux.tar.gz
107107
sudo mkdir -p /opt/wasi-sdk
108-
sudo mv wasi-sdk-20.0/* /opt/wasi-sdk/
108+
sudo mv wasi-sdk-30.0/* /opt/wasi-sdk/
109109
ls /opt/wasi-sdk/
110110
- run: |
111111
/opt/wasi-sdk/bin/clang-format --version

package-lock.json

Lines changed: 144 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
"CHANGELOG.md"
3939
],
4040
"scripts": {
41-
"postinstall": "node scripts/install-wasmtime.js",
4241
"test": "npm run test:types && npm run test:cli",
4342
"test:cli": "brittle --bail integration-tests/cli/**.test.js",
4443
"test:integration": "node ./integration-tests/js-compute/test.js",
@@ -59,6 +58,7 @@
5958
"dependencies": {
6059
"@bytecodealliance/jco": "^1.7.0",
6160
"@bytecodealliance/weval": "^0.4.1",
61+
"@fastly/wasmtime": "file:packages/wasmtime",
6262
"@jridgewell/remapping": "^2.3.5",
6363
"@jridgewell/trace-mapping": "^0.3.31",
6464
"acorn": "^8.13.0",

packages/wasmtime/README.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# @fastly/wasmtime
2+
3+
Provides wasmtime binaries for Node.js applications.
4+
5+
## Usage
6+
7+
```javascript
8+
import wasmtime from '@fastly/wasmtime';
9+
10+
const wasmtimePath = await wasmtime();
11+
// wasmtimePath contains the full path to the wasmtime binary
12+
```
13+
14+
## Supported Platforms
15+
16+
- macOS (x64, ARM64)
17+
- Linux (x64, ARM64)
18+
- Windows (x64)
19+
20+
## License
21+
22+
Apache-2.0
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ import { dirname, join } from 'node:path';
33

44
const __dirname = dirname(fileURLToPath(import.meta.url));
55

6-
export default async function wasmtime(): Promise<string> {
6+
export default async function wasmtime() {
77
const binary = process.platform === 'win32' ? 'wasmtime.exe' : 'wasmtime';
8-
const binPath = join(__dirname, '..', 'bin', binary);
8+
const binPath = join(__dirname, 'bin', binary);
99
return binPath;
1010
}

packages/wasmtime/package.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"name": "@fastly/wasmtime",
3+
"version": "43.0.0",
4+
"description": "Wasmtime binary distribution for Node.js",
5+
"type": "module",
6+
"main": "index.js",
7+
"scripts": {
8+
"postinstall": "node scripts/postinstall.js"
9+
},
10+
"files": [
11+
"index.js",
12+
"scripts/postinstall.js"
13+
],
14+
"engines": {
15+
"node": ">=18.0.0"
16+
},
17+
"dependencies": {
18+
"tar": "^7.4.3",
19+
"adm-zip": "^0.5.16",
20+
"lzma-native": "^8.0.6"
21+
},
22+
"license": "Apache-2.0"
23+
}

0 commit comments

Comments
 (0)