https://github.com/lifion/lifion-verify-deps
Checks that installed NPM modules are the latest currently available version.
https://github.com/lifion/lifion-verify-deps
check dependencies installed lifion update upgrade verify version
Last synced: 11 months ago
JSON representation
Checks that installed NPM modules are the latest currently available version.
- Host: GitHub
- URL: https://github.com/lifion/lifion-verify-deps
- Owner: lifion
- License: apache-2.0
- Created: 2018-11-14T19:43:36.000Z (over 7 years ago)
- Default Branch: develop
- Last Pushed: 2023-07-17T15:58:39.000Z (almost 3 years ago)
- Last Synced: 2024-12-01T10:24:03.332Z (over 1 year ago)
- Topics: check, dependencies, installed, lifion, update, upgrade, verify, version
- Language: JavaScript
- Homepage:
- Size: 2.47 MB
- Stars: 3
- Watchers: 9
- Forks: 1
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# lifion-verify-deps
Verifies that installed NPM modules are the latest currently available version.
## Getting Started
To install the module:
```sh
npm install lifion-verify-deps --global
```
To run command:
```sh
lifion-verify-deps
```
To use as module:
```sh
const verifyDeps = require('lifion-verify-deps');
verifyDeps({ dir: './path-to/project-directory' })
.then(() => /* all installed packages up to date */)
.catch((err) => /* there are packages to be updated */)
```
## API Reference
* [lifion-verify-deps](#module_lifion-verify-deps)
* [verifyDeps([options])](#exp_module_lifion-verify-deps--verifyDeps) ⏏
* [~isValidNpmPackageName(name)](#module_lifion-verify-deps--verifyDeps..isValidNpmPackageName)
* [~getLatestVersions(name)](#module_lifion-verify-deps--verifyDeps..getLatestVersions) ⇒ Promise.<Array.<string>>
* [~getLatestTag(name)](#module_lifion-verify-deps--verifyDeps..getLatestTag) ⇒ Promise.<string>
* [~getLatestVersion(name, wanted)](#module_lifion-verify-deps--verifyDeps..getLatestVersion) ⇒ Promise.<string>
* [~getInstalledVersion(currentDir, name, logger)](#module_lifion-verify-deps--verifyDeps..getInstalledVersion) ⇒ string \| null
* [~pushPkgs(params)](#module_lifion-verify-deps--verifyDeps..pushPkgs) ⇒ Array.<Promise.<PackageStatus>>
* [~getPkgIds(filteredPkgs)](#module_lifion-verify-deps--verifyDeps..getPkgIds) ⇒ string
* [~removeLockedDependencies(deps)](#module_lifion-verify-deps--verifyDeps..removeLockedDependencies) ⇒ Object.<string, string> \| Object
### verifyDeps([options]) ⏏
Verifies the dependencies listed in the package.json of the given directory.
**Kind**: Exported function
| Param | Type | Default | Description |
| --- | --- | --- | --- |
| [options] | Object | | Optional parameters. |
| [options.autoUpgrade] | boolean | false | Automatically upgrade all suggested dependencies. |
| [options.dir] | string | | The path where to look for the package.json file. |
| [options.logger] | [Logger](#Logger) | | A logger instance, with a similar API as the console object. |
#### verifyDeps~isValidNpmPackageName(name)
Validates package name.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Throws**:
- Error - Package name is invalid.
| Param | Type | Description |
| --- | --- | --- |
| name | string | Package name. |
#### verifyDeps~getLatestVersions(name) ⇒ Promise.<Array.<string>>
Gets available versions for provided package name.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: Promise.<Array.<string>> - - List of available versions.
**Throws**:
- Error - Output failed JSON parse.
| Param | Type | Description |
| --- | --- | --- |
| name | string | Package name. |
#### verifyDeps~getLatestTag(name) ⇒ Promise.<string>
Gets latest tag from provided package name.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: Promise.<string> - - Return latest version, if latest tag exists.
**Throws**:
- Error - Output failed JSON parse.
| Param | Type | Description |
| --- | --- | --- |
| name | string | Package name. |
#### verifyDeps~getLatestVersion(name, wanted) ⇒ Promise.<string>
Finds valid upgrade version of the provided package name.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: Promise.<string> - - Valid upgrade version.
**Throws**:
- Error - Outdated version in package.json, version was likely unpublished.
| Param | Type | Description |
| --- | --- | --- |
| name | string | Package name. |
| wanted | string | Package version. |
#### verifyDeps~getInstalledVersion(currentDir, name, logger) ⇒ string \| null
Gets currently installed version for provided package name.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: string \| null - - Installed version or null if not installed.
**Throws**:
- Error - Unable to find installed versions, try installing node modules by running `npm i`.
| Param | Type | Description |
| --- | --- | --- |
| currentDir | string | Path to package.json directory. |
| name | string | Package name. |
| logger | [Logger](#Logger) | Logger flag. |
#### verifyDeps~pushPkgs(params) ⇒ Array.<Promise.<PackageStatus>>
Builds list of packages to update.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: Array.<Promise.<PackageStatus>> - - NPM package state.
| Param | Type | Description |
| --- | --- | --- |
| params | Object | Object with parameters. |
| params.deps | Object.<string, string> | List of dependencies. |
| params.dir | string | Directory location. |
| params.logger | [Logger](#Logger) | Logging tool. |
| params.type | string | Type of dependency. |
#### verifyDeps~getPkgIds(filteredPkgs) ⇒ string
Formats package name for installation.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: string - - Concatenated 'name@latest' for provided package.
| Param | Type | Description |
| --- | --- | --- |
| filteredPkgs | [Array.<PackageStatus>](#PackageStatus) | Package properties. |
#### verifyDeps~removeLockedDependencies(deps) ⇒ Object.<string, string> \| Object
Filters out dependencies with locked versions.
**Kind**: inner method of [verifyDeps](#exp_module_lifion-verify-deps--verifyDeps)
**Returns**: Object.<string, string> \| Object - List of dependencies excluding locked semver versions.
| Param | Type | Description |
| --- | --- | --- |
| deps | Object.<string, string> | List of dependencies. |
## License
[Apache-2.0](./LICENSE)