Skip to content

Commit

Permalink
check version when installing remote template
Browse files Browse the repository at this point in the history
yyx990803 committed Apr 8, 2016
1 parent f60d8ee commit 5ed9255
Showing 3 changed files with 38 additions and 11 deletions.
25 changes: 14 additions & 11 deletions bin/vue-init
Original file line number Diff line number Diff line change
@@ -10,6 +10,7 @@ var ora = require('ora')
var chalk = require('chalk')
var inquirer = require('inquirer')
var logger = require('../lib/logger')
var checkVersion = require('../lib/check-version')

/**
* Usage.
@@ -103,18 +104,20 @@ function run () {
if (!hasSlash) {
template = 'vuejs-templates/' + template
}
// download and generate
var tmp = '/tmp/vue-template-' + uid()
var spinner = ora('downloading template')
spinner.start()
download(template, tmp, { clone: clone }, function (err) {
spinner.stop()
if (err) logger.fatal(err)
generate(tmp, to, function (err) {
checkVersion(function () {
// download and generate
var tmp = '/tmp/vue-template-' + uid()
var spinner = ora('downloading template')
spinner.start()
download(template, tmp, { clone: clone }, function (err) {
spinner.stop()
if (err) logger.fatal(err)
rm(tmp)
console.log()
logger.success('Generated "%s".', name)
generate(tmp, to, function (err) {
if (err) logger.fatal(err)
rm(tmp)
console.log()
logger.success('Generated "%s".', name)
})
})
})
}
23 changes: 23 additions & 0 deletions lib/check-version.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
var request = require('request')
var semver = require('semver')
var chalk = require('chalk')

module.exports = function (done) {
request({
url: 'http://registry.npmjs.org/vue-cli',
timeout: 1000
}, function (err, res, body) {
if (!err && res.statusCode == 200) {
var latestVersion = JSON.parse(body)['dist-tags'].latest
var localVersion = require('../package.json').version
if (semver.lt(localVersion, latestVersion)) {
console.log(chalk.yellow(' A newer version of vue-cli is available.'))
console.log()
console.log(' latest: ' + chalk.green(latestVersion))
console.log(' installed: ' + chalk.red(localVersion))
console.log()
}
}
done()
})
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -40,6 +40,7 @@
"read-metadata": "^1.0.0",
"request": "^2.67.0",
"rimraf": "^2.5.0",
"semver": "^5.1.0",
"uid": "0.0.2"
},
"devDependencies": {

0 comments on commit 5ed9255

Please sign in to comment.