Socket
Socket
Sign inDemoInstall

load-request-from-cwd-or-npm

Package Overview
Dependencies
12
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    load-request-from-cwd-or-npm

Load `request` module from either CWD or npm CLI directory


Version published
Weekly downloads
86
decreased by-66.54%
Maintainers
1
Install size
104 kB
Created
Weekly downloads
 

Readme

Source

load-request-from-cwd-or-npm

npm version Build Status Build status Coverage Status

Load request module from either CWD or npm CLI directory.

Why?

To keep project dependencies smaller.

$ npm install request@2.83.0
$ du -sh ./node_modules
5.6M	./node_modules
$ npm install load-request-from-cwd-or-npm@2.0.0
$ du -sh ./node_modules
> 300K	./node_modules

If load-request-from-cwd-or-npm is installed to your project directory, you can use request module in your program even though it's not actually installed.

Also we have an option to use one of the request alternatives with smaller file size, but none of them can deal with a lot of edge cases related to networking and HTTP as request does.

Installation

Use npm.

npm install load-request-from-cwd-or-npm

API

const loadRequestFromCwdOrNpm = require('load-request-from-cwd-or-npm');

loadRequestFromCwdOrNpm()

Return: Promise<Function>

It loads request module from either of these two directories:

  1. node_modules in the current working directory
  2. node_modules in the directory where npm CLI dependencies are installed.

If request ins't installed in CWD, it loads request from npm CLI directory.

// $ npm ls request
// > └── (empty)

(async () => {
  const request = await loadRequestFromCwdOrNpm();
  //=> {[Function: request] get: [Function], head: [Function], ...}
})();

If request is installed in CWD, it compares package versions of the CWD one and the npm dependency one, then loads the newer one.

// $ npm ls request
// > └── request@1.9.9

(async () => {
  // Loaded from npm CLI directory because the CWD version is older
  const request = await loadRequestFromCwdOrNpm();
})();

The returned promise will be fulfilled with request, or rejected when it fails to find the module from either directories.

License

ISC License © 201 - 2018 Shinnosuke Watanabe

Keywords

FAQs

Last updated on 20 Jun 2018

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc