fix: cordova-fetch with npm@7 (#91)
* fix: determine installed package's name on npm 7
* test: make expectations work for npm 5 to 7
This addresses the following changes in behavior.
Saved GitHub URL format in package.json:
- npm 6: git+https://github.com/apache/cordova-android.git#4.1.x
- npm 7: github:apache/cordova-android#4.1.x
Empty devDependencies format in package.json:
- npm 6: `{}`
- npm 7: `undefined`
* ci: add node@15 w/ npm@7
* ci: use npm7 version that fixed npm/cli#2309
6 files changed
tree: 82ef7686a1ab8cc2e0de64ad0a633ad9a663a773
- .github/
- spec/
- .asf.yaml
- .eslintrc.yml
- .gitignore
- .npmignore
- .ratignore
- CONTRIBUTING.md
- index.js
- LICENSE
- NOTICE
- package-lock.json
- package.json
- README.md
- RELEASENOTES.md
README.md
cordova-fetch
This package can be used to install and uninstall Node.js packages using npm.
Usage
fetch
Installs a module from:
npm
registrygit
urltarball
- url
- file on local file system
folder
path on local system
Returns a Promise
resolving to the absolute path of the installed package.
const fetch = require('cordova-fetch');
fetch(spec, dest, opts).then(pathToInstalledPackage => {
// Do something
});
Fetch Parameters
Parameter | Description |
---|
spec | A spec for the package to be installed (anything supported by npm install ) |
dest | Location where to install the package |
opts | Additional options (optional) |
Fetch Options
Option | Default | Description |
---|
save | false | Adds the package as dependency to package.json iff true |
uninstall
Uninstalls a package from the given directory. Returns a Promise
that resolves when removal has finished.
const { uninstall } = require('cordova-fetch');
uninstall(packageName, dest, opts).then(() => {
// Do something
});
Uninstall Parameters
Parameter | Description |
---|
packageName | Name of the package to be uninstalled |
dest | Location from where to uninstall the package |
opts | An Object with additional options |
Uninstall Options
Option | Default | Description |
---|
save | false | Removes dependency from package.json iff true |