UNPKG

1.08 kBJavaScriptView Raw
1//检测cli的版本是否需要更新
2const request = require('request')
3const semver = require('semver')
4const chalk = require('chalk')
5const packageConfig = require('../package.json')
6
7module.exports = done => {
8 // Ensure minimum supported node version is used
9 if (!semver.satisfies(process.version, packageConfig.engines.node)) {
10 return console.log(chalk.red(
11 ' You must upgrade node to >=' + packageConfig.engines.node + '.x to use talent-cli'
12 ))
13 }
14
15 request({
16 url: 'https://registry.npmjs.org/@talentui/cli',
17 timeout: 1000
18 }, (err, res, body) => {
19 if (!err && res.statusCode === 200) {
20 const latestVersion = JSON.parse(body)['dist-tags'].latest
21 const localVersion = packageConfig.version
22 if (semver.lt(localVersion, latestVersion)) {
23 console.log(chalk.yellow(' A newer version of @talentui/cli is available.'))
24 console.log()
25 console.log(' latest: ' + chalk.green(latestVersion))
26 console.log(' installed: ' + chalk.red(localVersion))
27 console.log()
28 }
29 }
30 done()
31 })
32}