New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

awync

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

awync - npm Package Compare versions

Comparing version 1.2.1 to 1.2.2

122

index.js

@@ -10,2 +10,4 @@ /**

const callback = Symbol('callback');
const captureErrors = Symbol('captureErrors');
const releaseErrors = Symbol('releaseErrors');

@@ -91,11 +93,72 @@ function awaiter(obj, target, noCache) {

var rootObj = genFunc();
var errorHandler = [];
function exit(result) {
if(result instanceof Error){
if(errorHandler.length){
let last = errorHandler.pop();
return doRun(last, last.cb, last.throw(result));
}
}
complete(result, rootObj);
}
return (function doRun(genObj, cb) {
function processYieldResult(yielded, genObj, prev, next) {
if(yielded.done){
if(errorHandler.length && errorHandler[errorHandler.length - 1] === genObj){
errorHandler.pop();
}
if(genObj.cb) {
return genObj.cb(prev);
}
if(genObj === rootObj){
return exit(prev);
}
return;
}
if(isGeneratorObj(yielded.value)){
return doRun(yielded.value, next);
}
if(yielded.value instanceof Promise){
return yielded.value.then(
function (result) {
setTimeout(next, 0, result);
},
function (err) {
if(!(err instanceof Error)){
err = new Error(err);
}
setTimeout(next, 0, err);
}
);
}
if(yielded.value === captureErrors){
if(errorHandler.indexOf(genObj) < 0){
errorHandler.push(genObj);
}
} else if(yielded.value === releaseErrors){
if(errorHandler.length && errorHandler[errorHandler.length - 1] === genObj){
errorHandler.pop();
}
}
next(yielded.value);
}
function doRun(genObj, cb, prevResult) {
genObj.cb = cb;
function next(prev) {
if(prev instanceof Error){
return exit(prev);
}
var yielded;

@@ -107,33 +170,13 @@ try{

}
if(yielded.done){
if(cb) {
return cb(prev);
}
if(genObj === rootObj){
return exit(prev);
}
processYieldResult(yielded, genObj, prev, next);
}
if(!prevResult){
next();
} else {
processYieldResult(prevResult, genObj, void 0, next);
}
}
return;
}
if(isGeneratorObj(yielded.value)){
return doRun(yielded.value, next);
}
if(yielded.value instanceof Promise){
return yielded.value.then(
function (result) {
setTimeout(next, 0, result);
},
function (err) {
if(!(err instanceof Error)){
err = new Error(err);
}
setTimeout(next, 0, err);
}
);
}
next(yielded.value);
}
next();
})(rootObj);
return doRun(rootObj);
}

@@ -231,2 +274,4 @@

awync.callback = callback;
awync.captureErrors = captureErrors;
awync.releaseErrors = releaseErrors;
awync.SUPPRESS_THROW = 1;

@@ -238,2 +283,3 @@ awync.SUPPRESS_REJECT = 2;

Object.defineProperties(awync, {

@@ -253,4 +299,20 @@ iterator: {

configurable: false
},
captureErrors: {
value: captureErrors,
__proto__: null,
enumerable: false,
writable: false,
configurable: false
},
releaseErrors: {
value: releaseErrors,
__proto__: null,
enumerable: false,
writable: false,
configurable: false
}
});
module.exports = awync;
{
"name": "awync",
"version": "1.2.1",
"version": "1.2.2",
"description": "Lightweight async / await library for NodeJs",

@@ -5,0 +5,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc