Security News
NIST Misses 2024 Deadline to Clear NVD Backlog
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
Elixir-style actors in JavaScript. Spawn "processes", then send and receive messages between them – just like you would in Elixir.
You can think of it as co
, but with message passing.
const pid = spawn(async function() {
const msg = await this.receive(mail => {
if (mail === 'hello') return 'world'
})
console.log(msg)
})
pid.send('hello')
See the included examples for more use cases.
$ yarn add actorjs
spawn(fn | asyncFn, ...args) => PID
Spawn a "process" that will execute the passed-in function.
const pid = spawn(async function(foo, bar) {
console.log("wee i'm in a process sorta")
}, 'foo', 'bar')
PID#send(msg)
Send a message to a PID.
pid.send(['ok', 'this is a message'])
this.receive(pattern) => Promise
Block until a received message matches the passed-in pattern
function.
The pattern
function takes an arbitrary message
as input, and returns a result based on that message
. By default, the pattern
function is the identity function.
A result of undefined
is not considered to be a match, and thus this.receive()
will continue blocking.
const pid = spawn(async function() {
let v = await this.receive(msg => {
const [status, value] = msg
if (status === 'hello') return value
if (status === 'world') return "won't match"
})
v = await this.receive()
})
pid.send(['hello', 'yes this is dog'])
pid.send('anything')
PID#then(value =>)
, PID#catch(err =>)
The return value of spawn()
is a thenable.
spawn(async function() {
// ...
})
.then(value => { /* ... */ })
.catch(console.error)
MIT
FAQs
Elixir-style actors in JavaScript
We found that actorjs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
Security News
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
Security News
The Socket Research team breaks down a malicious npm package targeting the legitimate DOMPurify library. It uses obfuscated code to hide that it is exfiltrating browser and crypto wallet data.