Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cloudant-promises

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

cloudant-promises

A fork of nano-promises that also wraps the extra methods from cloudant

  • 1.3.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2
increased by100%
Maintainers
1
Weekly downloads
 
Created
Source

nano-promises

Build Status Coverage Status Dependencies devDependencies license gitter

nano-promises is a lightweight wrapper around the fabulous nano driver. It provides the same features but uses promises instead of callbacks.

Example

import nano from 'nano';
import prom from 'nano-promises';

var db = prom(nano('http://localhost:5984')).db.use('test');

db.insert({ 'crazy': true }, 'rabbit')
  .then(function([body, headers]) {
    console.log(body)
  })
  .catch(function(err) {
    console.error(err);
  });

nano-promises promises always resolve to a value of the form [body, headers] or reject to a value of the form error. So it is important to use desructuring in the then handler of the promise.

async/await

The above example does not seem convincing to swith to a promise-based approach. nano-promises becomes very handy when used together with the async/await proposal for ES7:

var isRabbitCrazy = async function() {
  try {
    var [doc] = await db.get('rabbit');
    return doc.crazy;
  } catch(err) {
    console.log('error fetching rabbit:', err);
    throw err;
  }
};

I don't know about you but I find this very expressive!

Attribution

I love the nano library. It has a very good api design and there's a lot of work put into it!

The code in this repo is mostly adapted from co-nano, but with promises instead of thunks.

License

This code is licensed under the ISC license

FAQs

Package last updated on 08 Aug 2016

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

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