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

node-csp-channels

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-csp-channels

CSP style channels in JavaScript

latest
Source
npmnpm
Version
1.0.3
Version published
Maintainers
1
Created
Source

CSP Style Channels

CSP style concurrency based off Tony Hoare's formal language.

Install

npm install --save node-csp-channels

Useage

const Channel = require('node-csp-channels').default;

or if using newer syntax or babel

import Channel from 'node-csp-channels';

Then simply:

  const myChannel = new Channel();
  (async () => {
    await myChannel.put('Hello world!');
    const res = await myChannel.take();
    console.log(res); // Prints 'Hello world!'
  })();

This is best used with async/await and hasn't been tested with promises or other concurrency libs.

API

Channel.put(obj)

Takes a JavaScript object and places it on the channel. If the channel is occupied it will wait until it is free (possibly blocking forever) and then place the data on. You can wait for the put to succeed by calling:

await Channel.put(obj).

Channel.take()

Will take the next available value off the channel. If the channel has no value it will wait until there is a value, then return the data. If you require the value before proceeding you can await it.

const result = await Channel.take()

Building and contributing

If you want to build locally just clone the repository and run npm run build to create the lib folder. If you want to run tests just run npm test.

If you want to contribute please follow the eslint guidelines and ensure all code follows the style guidelines and has tests before submitting a pull request.

Keywords

csp

FAQs

Package last updated on 31 Jul 2017

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