Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pmsipilot/gulp-check-deps
Gulp plugin to check your dependencies (through npm outdated)
https://github.com/pmsipilot/gulp-check-deps
gulp
Last synced: 3 months ago
JSON representation
Gulp plugin to check your dependencies (through npm outdated)
- Host: GitHub
- URL: https://github.com/pmsipilot/gulp-check-deps
- Owner: pmsipilot
- License: mit
- Created: 2015-08-25T17:21:48.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-03-10T11:10:51.000Z (almost 9 years ago)
- Last Synced: 2024-11-08T05:42:13.544Z (3 months ago)
- Topics: gulp
- Language: JavaScript
- Size: 46.9 KB
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# check-deps [![Build Status](https://travis-ci.org/pmsipilot/gulp-check-deps.svg?branch=master)](https://travis-ci.org/pmsipilot/gulp-check-deps)
[Gulp](http://gulpjs.com/) plugin to check your dependencies (through npm outdated)
![check-deps](demo.gif)
## Why ?
NPM and its `outdated` command are good tools to gather informations about the state of a project's dependencies. The problem with
it is that it never fails. Even when there are outdated dependencies, the command exits with a `0` status.Moreover, you cannot configure it to warn only if some criteria are satisifed, for example if you want to consider a dependency outdated
only when there is a new minor or patch release.This plugin adresses those two issues:
* It fails when there is something outdated
* It lets you configure when you want it to failIt is really CI friendly !
## How to use in CLI
Globally installed, simply run it
```
check-deps -p path/to/package.json
```See help for configuration:
```
check-deps --help
```When saved in a project:
```
//package.json
{
//...
"scripts": {
"check-deps": "check-deps -d -l 1"
},
"devDependencies": {
"gulp-check-deps": "*"
}
}
```### Configuration
| Option | Type | Default | Description |
|------------------------|------------|---------|-------------------------------------------------------------------------------------------------------------------|
| npmPath | `string` | `npm` | Path to the `npm` binary |
| npmArgs | `string[]` | `[]` | Extra arguments passed to `npm outdated` (for example `--registry`) |
| failForDevDependencies | `boolean` | `true` | Fail if any dev. dependency is outdated |
| failForGitDependencies | `boolean` | `false` | Fail if there is any dependency required through `git` |
| failForPrerelease | `boolean` | `true` | Fail if there is any dependency available as `alpha`, `beta` or `rc` |
| failLevel | `string` | `minor` | Fail if at least a release of the given level exists (`minor` will fail if there is a new minor or patch release) |
| ignore | `string[]` | `[]` | Do not make the task fail for the given dependencies |Here is how you would do to use a custom NPM registry and make the task fail if it finds any git dependency:
```js
//gulpfile.jsvar checkDeps = require('check-deps');
var packageFilePath = 'package.json';fs.readFile(packageFilePath, function(err, data) {
var checkDepsConfig = {
npmArgs: ['--registry', 'http://private-npm.local'],
failForGitDependencies: true
};checkDeps(checkDepsConfig).write({ path: packageFilePath, contents: data });
});
```### License
[The MIT License (MIT)](LICENSE)
Copyright (c) 2015 PMSIpilot