UNPKG

2.15 kBJavaScriptView Raw
1var optimist = require('optimist');
2var pkg = require('../package.json');
3
4var info = pkg.name + ' - ' + pkg.description + '\n' +
5 ' version: ' + pkg.version + '\n' +
6 ' author: ' + JSON.stringify(pkg.author);
7
8var program = optimist
9.options('revert', {
10 boolean: true,
11 description: 'install original module versions listed in package.json',
12 default: false
13})
14.options('available', {
15 boolean: true,
16 alias: 'a',
17 description: 'only query available later versions, do not test them',
18 default: false
19})
20.options('module', {
21 string: true,
22 alias: 'm',
23 description: 'checks specific module, can include version name@version',
24 default: null
25})
26.option('latest', {
27 boolean: true,
28 alias: 'l',
29 description: 'only check latest available update',
30 default: true
31})
32.option('color', {
33 boolean: true,
34 alias: 'c',
35 description: 'color terminal output (if available)',
36 default: true
37})
38.option('version', {
39 boolean: true,
40 alias: 'v',
41 description: 'show version and exit',
42 default: false
43})
44.option('test', {
45 string: true,
46 alias: 't',
47 description: 'custom test command to run instead of npm test'
48})
49.option('skip', {
50 boolean: true,
51 description: 'skip running tests first',
52 default: false
53})
54.option('all', {
55 boolean: true,
56 default: false,
57 description: 'install all modules at once before testing'
58})
59.option('keep', {
60 boolean: true,
61 default: false,
62 alias: 'k',
63 description: 'keep tested version if it is working'
64})
65.option('allow', {
66 string: true,
67 default: 'major',
68 description: 'allow major / minor / patch updates'
69})
70.options('type', {
71 string: true,
72 default: 'all',
73 description: 'check dependencies of type (all, prod, dev, peer)'
74})
75.options('tldr', {
76 boolean: true,
77 default: false,
78 description: 'only print VERY important log messages'
79})
80.options('changed-log', {
81 boolean: true,
82 default: true,
83 alias: 'L',
84 description: 'print commit changes between working versions'
85})
86.usage(info)
87.argv;
88
89if (program.version) {
90 console.log(info);
91 process.exit(0);
92}
93
94if (program.help || program.h) {
95 optimist.showHelp();
96 process.exit(0);
97}
98
99module.exports = program;