@napi-rs/cli 3.0.0-alpha.34 → 3.0.0-alpha.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/create-npm-dirs.js +2 -8
- package/dist/api/create-npm-dirs.js.map +1 -1
- package/dist/api/templates/js-binding.js +14 -0
- package/dist/api/templates/js-binding.js.map +1 -1
- package/dist/api/templates/load-wasi-template.js +10 -6
- package/dist/api/templates/load-wasi-template.js.map +1 -1
- package/dist/api/templates/package.json.js +3 -6
- package/dist/api/templates/package.json.js.map +1 -1
- package/dist/api/templates/wasi-worker-template.d.ts +2 -2
- package/dist/api/templates/wasi-worker-template.js +3 -5
- package/dist/api/templates/wasi-worker-template.js.map +1 -1
- package/dist/index.cjs +32 -25
- package/package.json +2 -2
- package/src/api/create-npm-dirs.ts +3 -15
- package/src/api/templates/js-binding.ts +14 -0
- package/src/api/templates/load-wasi-template.ts +10 -6
- package/src/api/templates/package.json.ts +4 -9
- package/src/api/templates/wasi-worker-template.ts +3 -5
|
@@ -71,16 +71,10 @@ export async function createNpmDirs(userOptions) {
|
|
|
71
71
|
node: '>=14.0.0',
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
|
-
const
|
|
75
|
-
const emnapiRuntime = await fetch(`https://registry.npmjs.org/@emnapi/runtime`).then((res) => res.json());
|
|
76
|
-
const wasiUtil = await fetch(`https://registry.npmjs.org/@tybys/wasm-util`).then((res) => res.json());
|
|
77
|
-
const memfsBrowser = await fetch(`https://registry.npmjs.org/memfs-browser`).then((res) => res.json());
|
|
74
|
+
const wasmRuntime = await fetch(`https://registry.npmjs.org/@napi-rs/wasm-runtime`).then((res) => res.json());
|
|
78
75
|
// @ts-expect-error
|
|
79
76
|
scopedPackageJson.dependencies = {
|
|
80
|
-
'@
|
|
81
|
-
'@emnapi/runtime': `^${emnapiRuntime['dist-tags'].latest}`,
|
|
82
|
-
'@tybys/wasm-util': `^${wasiUtil['dist-tags'].latest}`,
|
|
83
|
-
'memfs-browser': `^${memfsBrowser['dist-tags'].latest}`,
|
|
77
|
+
'@napi-rs/wasm-runtime': `^${wasmRuntime['dist-tags'].latest}`,
|
|
84
78
|
};
|
|
85
79
|
}
|
|
86
80
|
if (target.abi === 'gnu') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-npm-dirs.js","sourceRoot":"","sources":["../../src/api/create-npm-dirs.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"create-npm-dirs.js","sourceRoot":"","sources":["../../src/api/create-npm-dirs.ts"],"names":[],"mappings":"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"}
|
|
@@ -299,6 +299,20 @@ switch (platform) {
|
|
|
299
299
|
}
|
|
300
300
|
}
|
|
301
301
|
break
|
|
302
|
+
case 's390x':
|
|
303
|
+
localFileExisted = existsSync(
|
|
304
|
+
join(__dirname, '${localName}.linux-s390x-gnu.node')
|
|
305
|
+
)
|
|
306
|
+
try {
|
|
307
|
+
if (localFileExisted) {
|
|
308
|
+
nativeBinding = require('./${localName}.linux-s390x-gnu.node')
|
|
309
|
+
} else {
|
|
310
|
+
nativeBinding = require('${pkgName}-linux-s390x-gnu')
|
|
311
|
+
}
|
|
312
|
+
} catch (e) {
|
|
313
|
+
loadError = e
|
|
314
|
+
}
|
|
315
|
+
break
|
|
302
316
|
default:
|
|
303
317
|
throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
|
|
304
318
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js-binding.js","sourceRoot":"","sources":["../../../src/api/templates/js-binding.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,OAAe,EACf,MAAgB;IAEhB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAkEgD,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;yDAOW,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;6BAcjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;qDAWO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;yDAMe,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;qDAcO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;;;;;;+BAWX,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;;+BAUjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;6BASnB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;+BASf,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO
|
|
1
|
+
{"version":3,"file":"js-binding.js","sourceRoot":"","sources":["../../../src/api/templates/js-binding.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,OAAe,EACf,MAAgB;IAEhB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAkEgD,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;yDAOW,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;6BAcjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;qDAWO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;yDAMe,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;qDAcO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;;;;;;+BAWX,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;;+BAUjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;6BASnB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;+BASf,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;6BASnB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;;;iCAgBb,SAAS;;;;;;iCAMT,OAAO;;;;;;;;;;;;;;EActC,MAAM;SACL,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,KAAK,oBAAoB,KAAK,EAAE,CAAC;SAClE,IAAI,CAAC,IAAI,CAAC;CACZ,CAAA;AACD,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
export const createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export const createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
2
|
+
instantiateNapiModuleSync as __emnapiInstantiateNapiModuleSync,
|
|
3
|
+
getDefaultContext as __emnapiGetDefaultContext,
|
|
4
|
+
WASI as __WASI,
|
|
5
|
+
} from '@napi-rs/wasm-runtime'
|
|
6
|
+
import { Volume as __Volume, createFsFromVolume as __createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
5
7
|
|
|
6
8
|
import __wasmUrl from './${wasiFilename}.wasm?url'
|
|
7
9
|
|
|
@@ -69,8 +71,10 @@ const __nodePath = require('node:path')
|
|
|
69
71
|
const { WASI: __nodeWASI } = require('node:wasi')
|
|
70
72
|
const { Worker } = require('node:worker_threads')
|
|
71
73
|
|
|
72
|
-
const {
|
|
73
|
-
|
|
74
|
+
const {
|
|
75
|
+
instantiateNapiModuleSync: __emnapiInstantiateNapiModuleSync,
|
|
76
|
+
getDefaultContext: __emnapiGetDefaultContext,
|
|
77
|
+
} = require('@napi-rs/wasm-runtime')
|
|
74
78
|
|
|
75
79
|
const __wasi = new __nodeWASI({
|
|
76
80
|
version: 'preview1',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-wasi-template.js","sourceRoot":"","sources":["../../../src/api/templates/load-wasi-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,YAAoB,EACpB,qBAA+B,EAC/B,EAAE,CAAC
|
|
1
|
+
{"version":3,"file":"load-wasi-template.js","sourceRoot":"","sources":["../../../src/api/templates/load-wasi-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,YAAoB,EACpB,qBAA+B,EAC/B,EAAE,CAAC;;;;;;;2BAOsB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDrC,qBAAqB;KACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6BAA6B,IAAI,QAAQ,CAAC;KACxD,IAAI,CAAC,IAAI,CAAC;;CAEZ,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,YAAoB,EACpB,WAAmB,EACnB,qBAA+B,EAC/B,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA+B8C,YAAY;;;;2CAIpB,WAAW;;mCAEnB,YAAY,mBAAmB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqC3E,qBAAqB;KACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6BAA6B,IAAI,QAAQ,CAAC;KACxD,IAAI,CAAC,IAAI,CAAC;;CAEZ,CAAA"}
|
|
@@ -45,12 +45,9 @@ export const createPackageJson = async ({ name, binaryName, targets, license, en
|
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
47
|
if (hasWasmTarget) {
|
|
48
|
-
const
|
|
49
|
-
const latest =
|
|
50
|
-
content.devDependencies['@
|
|
51
|
-
const emnapiRuntimeMeta = await fetch(`https://registry.npmjs.org/@emnapi/runtime`).then((res) => res.json());
|
|
52
|
-
const runtimeLatest = emnapiRuntimeMeta['dist-tags'].latest;
|
|
53
|
-
content.devDependencies['@emnapi/runtime'] = `^${runtimeLatest}`;
|
|
48
|
+
const wasmRuntime = await fetch(`https://registry.npmjs.org/@napi-rs/wasm-runtime`).then((res) => res.json());
|
|
49
|
+
const latest = wasmRuntime['dist-tags'].latest;
|
|
50
|
+
content.devDependencies['@napi-rs/wasm-runtime'] = `^${latest}`;
|
|
54
51
|
}
|
|
55
52
|
return JSON.stringify(content, null, 2);
|
|
56
53
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.json.js","sourceRoot":"","sources":["../../../src/api/templates/package.json.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAMzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,IAAI,EACJ,UAAU,EACV,OAAO,EACP,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,aAAa,GASd,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,iBAAiB,CACQ,CAAA;IACvC,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM;QAC5C,CAAC,CAAC,OAAO,CAAC,MAAM,CACZ,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3B,mBAAmB;YACnB,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC,CAAC,CACL;QACH,CAAC,CAAC,OAAO,CAAA;IACX,MAAM,OAAO,GAA4B;QACvC,IAAI;QACJ,OAAO,EAAE,OAAO;QAChB,OAAO;QACP,OAAO,EAAE;YACP,IAAI,EAAE,iBAAiB;SACxB;QACD,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE;YACJ,UAAU;YACV,OAAO,EAAE,cAAc;SACxB;QACD,OAAO,EAAE;YACP,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,yCAAyC;YAChD,aAAa,EAAE,YAAY;YAC3B,cAAc,EAAE,wBAAwB;YACxC,SAAS,EAAE,gBAAgB;YAC3B,OAAO,EAAE,cAAc;SACxB;QACD,eAAe,EAAE;YACf,cAAc,EAAE,IAAI,UAAU,EAAE;SACjC;KACF,CAAA;IAED,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAChE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAA0B,CAC5C,CAAA;QACD,OAAO,CAAC,eAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAA;QACnE,OAAO,CAAC,GAAG,GAAG;YACZ,OAAO,EAAE,IAAI;SACd,CAAA;IACH,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,
|
|
1
|
+
{"version":3,"file":"package.json.js","sourceRoot":"","sources":["../../../src/api/templates/package.json.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAMzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,IAAI,EACJ,UAAU,EACV,OAAO,EACP,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,aAAa,GASd,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,iBAAiB,CACQ,CAAA;IACvC,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM;QAC5C,CAAC,CAAC,OAAO,CAAC,MAAM,CACZ,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3B,mBAAmB;YACnB,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC,CAAC,CACL;QACH,CAAC,CAAC,OAAO,CAAA;IACX,MAAM,OAAO,GAA4B;QACvC,IAAI;QACJ,OAAO,EAAE,OAAO;QAChB,OAAO;QACP,OAAO,EAAE;YACP,IAAI,EAAE,iBAAiB;SACxB;QACD,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE;YACJ,UAAU;YACV,OAAO,EAAE,cAAc;SACxB;QACD,OAAO,EAAE;YACP,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,yCAAyC;YAChD,aAAa,EAAE,YAAY;YAC3B,cAAc,EAAE,wBAAwB;YACxC,SAAS,EAAE,gBAAgB;YAC3B,OAAO,EAAE,cAAc;SACxB;QACD,eAAe,EAAE;YACf,cAAc,EAAE,IAAI,UAAU,EAAE;SACjC;KACF,CAAA;IAED,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAChE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAA0B,CAC5C,CAAA;QACD,OAAO,CAAC,eAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAA;QACnE,OAAO,CAAC,GAAG,GAAG;YACZ,OAAO,EAAE,IAAI;SACd,CAAA;IACH,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,KAAK,CAC7B,kDAAkD,CACnD,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAA0B,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAA;QAC9C,OAAO,CAAC,eAAgB,CAAC,uBAAuB,CAAC,GAAG,IAAI,MAAM,EAAE,CAAA;IAClE,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;AACzC,CAAC,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const WASI_WORKER_TEMPLATE = "import fs from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport { parentPort, Worker } from \"node:worker_threads\";\n\nimport { instantiateNapiModuleSync, MessageHandler
|
|
2
|
-
export declare const WASI_WORKER_BROWSER_TEMPLATE = "import { instantiateNapiModuleSync, MessageHandler
|
|
1
|
+
export declare const WASI_WORKER_TEMPLATE = "import fs from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport { parentPort, Worker } from \"node:worker_threads\";\n\nimport { instantiateNapiModuleSync, MessageHandler, WASI } from \"@napi-rs/wasm-runtime\";\n\nconst require = createRequire(import.meta.url);\n\nif (parentPort) {\n parentPort.on(\"message\", (data) => {\n globalThis.onmessage({ data });\n });\n}\n\nObject.assign(globalThis, {\n self: globalThis,\n require,\n Worker,\n importScripts: function (f) {\n ;(0, eval)(fs.readFileSync(f, \"utf8\") + \"//# sourceURL=\" + f);\n },\n postMessage: function (msg) {\n if (parentPort) {\n parentPort.postMessage(msg);\n }\n },\n});\n\nconst handler = new MessageHandler({\n onLoad({ wasmModule, wasmMemory }) {\n const wasi = new WASI({ fs });\n\n return instantiateNapiModuleSync(wasmModule, {\n childThread: true,\n wasi,\n overwriteImports(importObject) {\n importObject.env = {\n ...importObject.env,\n ...importObject.napi,\n ...importObject.emnapi,\n memory: wasmMemory\n };\n },\n });\n },\n});\n\nglobalThis.onmessage = function (e) {\n handler.handle(e);\n};\n";
|
|
2
|
+
export declare const WASI_WORKER_BROWSER_TEMPLATE = "import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'\nimport { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'\n\nconst fs = createFsFromVolume(\n Volume.fromJSON({\n '/': null,\n }),\n)\n\nconst handler = new MessageHandler({\n onLoad({ wasmModule, wasmMemory }) {\n const wasi = new WASI({\n fs,\n print: function () {\n // eslint-disable-next-line no-console\n console.log.apply(console, arguments)\n },\n printErr: function() {\n // eslint-disable-next-line no-console\n console.error.apply(console, arguments)\n },\n })\n return instantiateNapiModuleSync(wasmModule, {\n childThread: true,\n wasi,\n overwriteImports(importObject) {\n importObject.env = {\n ...importObject.env,\n ...importObject.napi,\n ...importObject.emnapi,\n memory: wasmMemory,\n }\n },\n })\n },\n})\n\nglobalThis.onmessage = function (e) {\n handler.handle(e)\n}\n";
|
|
@@ -2,8 +2,7 @@ export const WASI_WORKER_TEMPLATE = `import fs from "node:fs";
|
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import { parentPort, Worker } from "node:worker_threads";
|
|
4
4
|
|
|
5
|
-
import { instantiateNapiModuleSync, MessageHandler } from "@
|
|
6
|
-
import { WASI } from "@tybys/wasm-util";
|
|
5
|
+
import { instantiateNapiModuleSync, MessageHandler, WASI } from "@napi-rs/wasm-runtime";
|
|
7
6
|
|
|
8
7
|
const require = createRequire(import.meta.url);
|
|
9
8
|
|
|
@@ -50,9 +49,8 @@ globalThis.onmessage = function (e) {
|
|
|
50
49
|
handler.handle(e);
|
|
51
50
|
};
|
|
52
51
|
`;
|
|
53
|
-
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
54
|
-
import {
|
|
55
|
-
import { Volume, createFsFromVolume } from 'memfs-browser'
|
|
52
|
+
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'
|
|
53
|
+
import { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
56
54
|
|
|
57
55
|
const fs = createFsFromVolume(
|
|
58
56
|
Volume.fromJSON({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasi-worker-template.js","sourceRoot":"","sources":["../../../src/api/templates/wasi-worker-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG
|
|
1
|
+
{"version":3,"file":"wasi-worker-template.js","sourceRoot":"","sources":["../../../src/api/templates/wasi-worker-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDnC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC3C,CAAA"}
|
package/dist/index.cjs
CHANGED
|
@@ -16795,12 +16795,9 @@ var createPackageJson = async ({ name, binaryName, targets, license, engineRequi
|
|
|
16795
16795
|
};
|
|
16796
16796
|
}
|
|
16797
16797
|
if (hasWasmTarget) {
|
|
16798
|
-
const
|
|
16799
|
-
const latest =
|
|
16800
|
-
content.devDependencies["@
|
|
16801
|
-
const emnapiRuntimeMeta = await fetch(`https://registry.npmjs.org/@emnapi/runtime`).then((res) => res.json());
|
|
16802
|
-
const runtimeLatest = emnapiRuntimeMeta["dist-tags"].latest;
|
|
16803
|
-
content.devDependencies["@emnapi/runtime"] = `^${runtimeLatest}`;
|
|
16798
|
+
const wasmRuntime = await fetch(`https://registry.npmjs.org/@napi-rs/wasm-runtime`).then((res) => res.json());
|
|
16799
|
+
const latest = wasmRuntime["dist-tags"].latest;
|
|
16800
|
+
content.devDependencies["@napi-rs/wasm-runtime"] = `^${latest}`;
|
|
16804
16801
|
}
|
|
16805
16802
|
return JSON.stringify(content, null, 2);
|
|
16806
16803
|
};
|
|
@@ -17107,6 +17104,20 @@ switch (platform) {
|
|
|
17107
17104
|
}
|
|
17108
17105
|
}
|
|
17109
17106
|
break
|
|
17107
|
+
case 's390x':
|
|
17108
|
+
localFileExisted = existsSync(
|
|
17109
|
+
join(__dirname, '${localName}.linux-s390x-gnu.node')
|
|
17110
|
+
)
|
|
17111
|
+
try {
|
|
17112
|
+
if (localFileExisted) {
|
|
17113
|
+
nativeBinding = require('./${localName}.linux-s390x-gnu.node')
|
|
17114
|
+
} else {
|
|
17115
|
+
nativeBinding = require('${pkgName}-linux-s390x-gnu')
|
|
17116
|
+
}
|
|
17117
|
+
} catch (e) {
|
|
17118
|
+
loadError = e
|
|
17119
|
+
}
|
|
17120
|
+
break
|
|
17110
17121
|
default:
|
|
17111
17122
|
throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
|
|
17112
17123
|
}
|
|
@@ -17142,10 +17153,12 @@ ${idents.map((ident) => `module.exports.${ident} = nativeBinding.${ident}`).join
|
|
|
17142
17153
|
}
|
|
17143
17154
|
|
|
17144
17155
|
// dist/api/templates/load-wasi-template.js
|
|
17145
|
-
var createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
17146
|
-
|
|
17147
|
-
|
|
17148
|
-
|
|
17156
|
+
var createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
17157
|
+
instantiateNapiModuleSync as __emnapiInstantiateNapiModuleSync,
|
|
17158
|
+
getDefaultContext as __emnapiGetDefaultContext,
|
|
17159
|
+
WASI as __WASI,
|
|
17160
|
+
} from '@napi-rs/wasm-runtime'
|
|
17161
|
+
import { Volume as __Volume, createFsFromVolume as __createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
17149
17162
|
|
|
17150
17163
|
import __wasmUrl from './${wasiFilename}.wasm?url'
|
|
17151
17164
|
|
|
@@ -17211,8 +17224,10 @@ const __nodePath = require('node:path')
|
|
|
17211
17224
|
const { WASI: __nodeWASI } = require('node:wasi')
|
|
17212
17225
|
const { Worker } = require('node:worker_threads')
|
|
17213
17226
|
|
|
17214
|
-
const {
|
|
17215
|
-
|
|
17227
|
+
const {
|
|
17228
|
+
instantiateNapiModuleSync: __emnapiInstantiateNapiModuleSync,
|
|
17229
|
+
getDefaultContext: __emnapiGetDefaultContext,
|
|
17230
|
+
} = require('@napi-rs/wasm-runtime')
|
|
17216
17231
|
|
|
17217
17232
|
const __wasi = new __nodeWASI({
|
|
17218
17233
|
version: 'preview1',
|
|
@@ -17282,8 +17297,7 @@ var WASI_WORKER_TEMPLATE = `import fs from "node:fs";
|
|
|
17282
17297
|
import { createRequire } from "node:module";
|
|
17283
17298
|
import { parentPort, Worker } from "node:worker_threads";
|
|
17284
17299
|
|
|
17285
|
-
import { instantiateNapiModuleSync, MessageHandler } from "@
|
|
17286
|
-
import { WASI } from "@tybys/wasm-util";
|
|
17300
|
+
import { instantiateNapiModuleSync, MessageHandler, WASI } from "@napi-rs/wasm-runtime";
|
|
17287
17301
|
|
|
17288
17302
|
const require = createRequire(import.meta.url);
|
|
17289
17303
|
|
|
@@ -17330,9 +17344,8 @@ globalThis.onmessage = function (e) {
|
|
|
17330
17344
|
handler.handle(e);
|
|
17331
17345
|
};
|
|
17332
17346
|
`;
|
|
17333
|
-
var WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
17334
|
-
import {
|
|
17335
|
-
import { Volume, createFsFromVolume } from 'memfs-browser'
|
|
17347
|
+
var WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'
|
|
17348
|
+
import { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
17336
17349
|
|
|
17337
17350
|
const fs = createFsFromVolume(
|
|
17338
17351
|
Volume.fromJSON({
|
|
@@ -17975,15 +17988,9 @@ async function createNpmDirs(userOptions) {
|
|
|
17975
17988
|
node: ">=14.0.0"
|
|
17976
17989
|
};
|
|
17977
17990
|
}
|
|
17978
|
-
const
|
|
17979
|
-
const emnapiRuntime = await fetch(`https://registry.npmjs.org/@emnapi/runtime`).then((res) => res.json());
|
|
17980
|
-
const wasiUtil = await fetch(`https://registry.npmjs.org/@tybys/wasm-util`).then((res) => res.json());
|
|
17981
|
-
const memfsBrowser = await fetch(`https://registry.npmjs.org/memfs-browser`).then((res) => res.json());
|
|
17991
|
+
const wasmRuntime = await fetch(`https://registry.npmjs.org/@napi-rs/wasm-runtime`).then((res) => res.json());
|
|
17982
17992
|
scopedPackageJson.dependencies = {
|
|
17983
|
-
"@
|
|
17984
|
-
"@emnapi/runtime": `^${emnapiRuntime["dist-tags"].latest}`,
|
|
17985
|
-
"@tybys/wasm-util": `^${wasiUtil["dist-tags"].latest}`,
|
|
17986
|
-
"memfs-browser": `^${memfsBrowser["dist-tags"].latest}`
|
|
17993
|
+
"@napi-rs/wasm-runtime": `^${wasmRuntime["dist-tags"].latest}`
|
|
17987
17994
|
};
|
|
17988
17995
|
}
|
|
17989
17996
|
if (target.abi === "gnu") {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@napi-rs/cli",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.36",
|
|
4
4
|
"description": "Cli tools for napi-rs",
|
|
5
5
|
"author": "LongYinan <lynweklm@gmail.com>",
|
|
6
6
|
"homepage": "https://github.com/napi-rs/napi-rs",
|
|
@@ -131,5 +131,5 @@
|
|
|
131
131
|
"**/__tests__/**/*.spec.ts"
|
|
132
132
|
]
|
|
133
133
|
},
|
|
134
|
-
"gitHead": "
|
|
134
|
+
"gitHead": "5b9f86fea06d37f6bd61f543b987c46d0e1c0738"
|
|
135
135
|
}
|
|
@@ -116,24 +116,12 @@ export async function createNpmDirs(userOptions: CreateNpmDirsOptions) {
|
|
|
116
116
|
node: '>=14.0.0',
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
const
|
|
120
|
-
`https://registry.npmjs.org/@
|
|
121
|
-
).then((res) => res.json() as Promise<PackageMeta>)
|
|
122
|
-
const emnapiRuntime = await fetch(
|
|
123
|
-
`https://registry.npmjs.org/@emnapi/runtime`,
|
|
124
|
-
).then((res) => res.json() as Promise<PackageMeta>)
|
|
125
|
-
const wasiUtil = await fetch(
|
|
126
|
-
`https://registry.npmjs.org/@tybys/wasm-util`,
|
|
127
|
-
).then((res) => res.json() as Promise<PackageMeta>)
|
|
128
|
-
const memfsBrowser = await fetch(
|
|
129
|
-
`https://registry.npmjs.org/memfs-browser`,
|
|
119
|
+
const wasmRuntime = await fetch(
|
|
120
|
+
`https://registry.npmjs.org/@napi-rs/wasm-runtime`,
|
|
130
121
|
).then((res) => res.json() as Promise<PackageMeta>)
|
|
131
122
|
// @ts-expect-error
|
|
132
123
|
scopedPackageJson.dependencies = {
|
|
133
|
-
'@
|
|
134
|
-
'@emnapi/runtime': `^${emnapiRuntime['dist-tags'].latest}`,
|
|
135
|
-
'@tybys/wasm-util': `^${wasiUtil['dist-tags'].latest}`,
|
|
136
|
-
'memfs-browser': `^${memfsBrowser['dist-tags'].latest}`,
|
|
124
|
+
'@napi-rs/wasm-runtime': `^${wasmRuntime['dist-tags'].latest}`,
|
|
137
125
|
}
|
|
138
126
|
}
|
|
139
127
|
|
|
@@ -303,6 +303,20 @@ switch (platform) {
|
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
305
|
break
|
|
306
|
+
case 's390x':
|
|
307
|
+
localFileExisted = existsSync(
|
|
308
|
+
join(__dirname, '${localName}.linux-s390x-gnu.node')
|
|
309
|
+
)
|
|
310
|
+
try {
|
|
311
|
+
if (localFileExisted) {
|
|
312
|
+
nativeBinding = require('./${localName}.linux-s390x-gnu.node')
|
|
313
|
+
} else {
|
|
314
|
+
nativeBinding = require('${pkgName}-linux-s390x-gnu')
|
|
315
|
+
}
|
|
316
|
+
} catch (e) {
|
|
317
|
+
loadError = e
|
|
318
|
+
}
|
|
319
|
+
break
|
|
306
320
|
default:
|
|
307
321
|
throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
|
|
308
322
|
}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export const createWasiBrowserBinding = (
|
|
2
2
|
wasiFilename: string,
|
|
3
3
|
wasiRegisterFunctions: string[],
|
|
4
|
-
) => `import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
) => `import {
|
|
5
|
+
instantiateNapiModuleSync as __emnapiInstantiateNapiModuleSync,
|
|
6
|
+
getDefaultContext as __emnapiGetDefaultContext,
|
|
7
|
+
WASI as __WASI,
|
|
8
|
+
} from '@napi-rs/wasm-runtime'
|
|
9
|
+
import { Volume as __Volume, createFsFromVolume as __createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
8
10
|
|
|
9
11
|
import __wasmUrl from './${wasiFilename}.wasm?url'
|
|
10
12
|
|
|
@@ -77,8 +79,10 @@ const __nodePath = require('node:path')
|
|
|
77
79
|
const { WASI: __nodeWASI } = require('node:wasi')
|
|
78
80
|
const { Worker } = require('node:worker_threads')
|
|
79
81
|
|
|
80
|
-
const {
|
|
81
|
-
|
|
82
|
+
const {
|
|
83
|
+
instantiateNapiModuleSync: __emnapiInstantiateNapiModuleSync,
|
|
84
|
+
getDefaultContext: __emnapiGetDefaultContext,
|
|
85
|
+
} = require('@napi-rs/wasm-runtime')
|
|
82
86
|
|
|
83
87
|
const __wasi = new __nodeWASI({
|
|
84
88
|
version: 'preview1',
|
|
@@ -79,16 +79,11 @@ export const createPackageJson = async ({
|
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
if (hasWasmTarget) {
|
|
82
|
-
const
|
|
83
|
-
`https://registry.npmjs.org/@
|
|
82
|
+
const wasmRuntime = await fetch(
|
|
83
|
+
`https://registry.npmjs.org/@napi-rs/wasm-runtime`,
|
|
84
84
|
).then((res) => res.json() as Promise<PackageMeta>)
|
|
85
|
-
const latest =
|
|
86
|
-
content.devDependencies!['@
|
|
87
|
-
const emnapiRuntimeMeta = await fetch(
|
|
88
|
-
`https://registry.npmjs.org/@emnapi/runtime`,
|
|
89
|
-
).then((res) => res.json() as Promise<PackageMeta>)
|
|
90
|
-
const runtimeLatest = emnapiRuntimeMeta['dist-tags'].latest
|
|
91
|
-
content.devDependencies!['@emnapi/runtime'] = `^${runtimeLatest}`
|
|
85
|
+
const latest = wasmRuntime['dist-tags'].latest
|
|
86
|
+
content.devDependencies!['@napi-rs/wasm-runtime'] = `^${latest}`
|
|
92
87
|
}
|
|
93
88
|
|
|
94
89
|
return JSON.stringify(content, null, 2)
|
|
@@ -2,8 +2,7 @@ export const WASI_WORKER_TEMPLATE = `import fs from "node:fs";
|
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import { parentPort, Worker } from "node:worker_threads";
|
|
4
4
|
|
|
5
|
-
import { instantiateNapiModuleSync, MessageHandler } from "@
|
|
6
|
-
import { WASI } from "@tybys/wasm-util";
|
|
5
|
+
import { instantiateNapiModuleSync, MessageHandler, WASI } from "@napi-rs/wasm-runtime";
|
|
7
6
|
|
|
8
7
|
const require = createRequire(import.meta.url);
|
|
9
8
|
|
|
@@ -51,9 +50,8 @@ globalThis.onmessage = function (e) {
|
|
|
51
50
|
};
|
|
52
51
|
`
|
|
53
52
|
|
|
54
|
-
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
55
|
-
import {
|
|
56
|
-
import { Volume, createFsFromVolume } from 'memfs-browser'
|
|
53
|
+
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'
|
|
54
|
+
import { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
57
55
|
|
|
58
56
|
const fs = createFsFromVolume(
|
|
59
57
|
Volume.fromJSON({
|