New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

wasi-worker

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

wasi-worker

Node.js worker for running WASI code

latest
Source
npmnpm
Version
0.1.1
Version published
Maintainers
1
Created
Source

wasi-worker

Current Version Dependencies belly-button-style

Run WASI code inside of a Node.js Worker.

Note: WASI as a technology is still experimental. The WASI APIs in Node.js are also considered experimental and subject to change. For best results, use this module with the most recent version of Node.js.

Usage

The following example demonstrates how wasi-worker is used to create Node.js Worker threads executing WASI nanoprocesses.

'use strict';
const { createWasiWorker } = require('wasi-worker');
// worker is a Worker instance from the Node.js worker_threads module.
const worker = createWasiWorker({
  args: ['foo', '-bar', '--baz=value'],
  env: { ...process.env },
  preopens: { '/sandbox': '/tmp' },
  timeout: 10000,
  wasmFile: 'app.wasm'
});

worker.on('exit', (code) => {
  console.log('wasi worker exited with code:', code);
});

API

This section describes the complete wasi-worker API.

createWasiWorker([options])

  • Arguments
    • options (object) - Optional configuration object supporting the following schema:
      • args (array) - An array of strings that the WebAssembly application will see as command line arguments. Optional. Defaults to [].
      • env (object) - An object similar to process.env that the WebAssembly application will see as its environment. Optional. Defaults to {}.
      • preopens (object) - This object represents the WebAssembly application's sandbox directory structure. The string keys of preopens are treated as directories within the sandbox. The corresponding values in preopens are the real paths to those directories on the host machine. Optional. Defaults to {}.
      • resourceLimits - (object) - An object representing the resource limits imposed on the worker thread. This object is passed verbatim to the Worker constructor. Optional. Defaults to {}.
      • timeout (number) - The maximum number of milliseconds that the WebAssembly may execute for. If the thread has not exited before the timeout has elapsed, the thread is terminated. Optional. Defaults to no timeout.
      • wasmFile (string) - The path to the .wasm file to load and execute.
  • Returns
    • An instance of a Node.js Worker thread.

Executes a WASI application inside a Node.js Worker thread. The returned thread has exactly the same API as one created via Node's Worker constructor.

Keywords

wasi

FAQs

Package last updated on 18 Mar 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts