@napi-rs/cli 3.0.0-alpha.34 → 3.0.0-alpha.35
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/templates/js-binding.js +14 -0
- package/dist/api/templates/js-binding.js.map +1 -1
- package/dist/api/templates/load-wasi-template.js +6 -4
- package/dist/api/templates/load-wasi-template.js.map +1 -1
- package/dist/api/templates/wasi-worker-template.d.ts +1 -1
- package/dist/api/templates/wasi-worker-template.js +2 -3
- package/dist/api/templates/wasi-worker-template.js.map +1 -1
- package/dist/index.cjs +22 -7
- package/package.json +2 -2
- package/src/api/templates/js-binding.ts +14 -0
- package/src/api/templates/load-wasi-template.ts +6 -4
- package/src/api/templates/wasi-worker-template.ts +2 -3
|
@@ -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
|
|
|
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA6B8C,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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
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 } from \"@emnapi/core\";\nimport { WASI } from \"@tybys/wasm-util\";\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
|
|
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";
|
|
@@ -50,9 +50,8 @@ globalThis.onmessage = function (e) {
|
|
|
50
50
|
handler.handle(e);
|
|
51
51
|
};
|
|
52
52
|
`;
|
|
53
|
-
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
54
|
-
import {
|
|
55
|
-
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'
|
|
56
55
|
|
|
57
56
|
const fs = createFsFromVolume(
|
|
58
57
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDnC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDnC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC3C,CAAA"}
|
package/dist/index.cjs
CHANGED
|
@@ -17107,6 +17107,20 @@ switch (platform) {
|
|
|
17107
17107
|
}
|
|
17108
17108
|
}
|
|
17109
17109
|
break
|
|
17110
|
+
case 's390x':
|
|
17111
|
+
localFileExisted = existsSync(
|
|
17112
|
+
join(__dirname, '${localName}.linux-s390x-gnu.node')
|
|
17113
|
+
)
|
|
17114
|
+
try {
|
|
17115
|
+
if (localFileExisted) {
|
|
17116
|
+
nativeBinding = require('./${localName}.linux-s390x-gnu.node')
|
|
17117
|
+
} else {
|
|
17118
|
+
nativeBinding = require('${pkgName}-linux-s390x-gnu')
|
|
17119
|
+
}
|
|
17120
|
+
} catch (e) {
|
|
17121
|
+
loadError = e
|
|
17122
|
+
}
|
|
17123
|
+
break
|
|
17110
17124
|
default:
|
|
17111
17125
|
throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
|
|
17112
17126
|
}
|
|
@@ -17142,10 +17156,12 @@ ${idents.map((ident) => `module.exports.${ident} = nativeBinding.${ident}`).join
|
|
|
17142
17156
|
}
|
|
17143
17157
|
|
|
17144
17158
|
// dist/api/templates/load-wasi-template.js
|
|
17145
|
-
var createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
17146
|
-
|
|
17147
|
-
|
|
17148
|
-
|
|
17159
|
+
var createWasiBrowserBinding = (wasiFilename, wasiRegisterFunctions) => `import {
|
|
17160
|
+
instantiateNapiModuleSync as __emnapiInstantiateNapiModuleSync,
|
|
17161
|
+
getDefaultContext as __emnapiGetDefaultContext,
|
|
17162
|
+
WASI as __WASI,
|
|
17163
|
+
} from '@napi-rs/wasm-runtime'
|
|
17164
|
+
import { Volume as __Volume, createFsFromVolume as __createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
17149
17165
|
|
|
17150
17166
|
import __wasmUrl from './${wasiFilename}.wasm?url'
|
|
17151
17167
|
|
|
@@ -17330,9 +17346,8 @@ globalThis.onmessage = function (e) {
|
|
|
17330
17346
|
handler.handle(e);
|
|
17331
17347
|
};
|
|
17332
17348
|
`;
|
|
17333
|
-
var WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
17334
|
-
import {
|
|
17335
|
-
import { Volume, createFsFromVolume } from 'memfs-browser'
|
|
17349
|
+
var WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'
|
|
17350
|
+
import { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
17336
17351
|
|
|
17337
17352
|
const fs = createFsFromVolume(
|
|
17338
17353
|
Volume.fromJSON({
|
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.35",
|
|
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": "a439e2c3e62e45db3a32dca3286e73c415acf0dc"
|
|
135
135
|
}
|
|
@@ -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
|
|
|
@@ -51,9 +51,8 @@ globalThis.onmessage = function (e) {
|
|
|
51
51
|
};
|
|
52
52
|
`
|
|
53
53
|
|
|
54
|
-
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler } from '@
|
|
55
|
-
import {
|
|
56
|
-
import { Volume, createFsFromVolume } from 'memfs-browser'
|
|
54
|
+
export const WASI_WORKER_BROWSER_TEMPLATE = `import { instantiateNapiModuleSync, MessageHandler, WASI } from '@napi-rs/wasm-runtime'
|
|
55
|
+
import { Volume, createFsFromVolume } from '@napi-rs/wasm-runtime/fs'
|
|
57
56
|
|
|
58
57
|
const fs = createFsFromVolume(
|
|
59
58
|
Volume.fromJSON({
|