Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@connectedyard/restify-await-promise
Advanced tools
Restify Plugin to support promises and async/await
Converts restify routes to support async/await and returned promises. Works with Restify 4.x through 6.x. May work with Restify 7+.
#Supported Restify Versions
const restify = require('restify');
const restifyPromise = require('restify-await-promise');
const server = restify.createServer({
name: 'myapp',
version: '1.0.0'
});
//Allows you to manipulate the errors before restify does its work
const alwaysBlameTheUserErrorTransformer = {
transform: function( exceptionThrownByRoute ){
//Always blame the user
exceptionThrownByRoute.statusCode = 400;
return exceptionThrownByRoute;
}
}
const options = {
logger: yourLogger, //Optional: Will automatically log exceptions
errorTransformer: alwaysBlameTheUserErrorTransformer //Optional: Lets you add status codes
};
restifyPromise.install( server, options ); // Options is not required
// Async function, automatically calls send with the returned object and next
server.get('/lookup/:name', async function (req) {
return await SomePromise.work( req.parms.name );
});
// Promise function
server.get('/echo/:name', function (req) {
const params = req.params;
return Promise.resolve( { params } );
});
// Existing restify method
server.get('/echo2/:name', function (req, res, next) {
res.send(req.params);
next();
});
// Versioned Route with Restify 7+
server.get('/seek/:enlightenment', restifyPromise.asyncConditionalHandler([
{
version: "1.0.0",
handler: async function (req) {
const result = await searchFor( req.parms.enlightenment );
return result;
}
}
]));
server.listen(8080, function () {
console.log('%s listening at %s', server.name, server.url);
});
$ npm install --save restify-await-promise
FAQs
Restify Plugin to support promises and async/await
The npm package @connectedyard/restify-await-promise receives a total of 1 weekly downloads. As such, @connectedyard/restify-await-promise popularity was classified as not popular.
We found that @connectedyard/restify-await-promise demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 10 open source maintainers 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
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.