| 123456789101112131415161718192021222324252627 | var log = require('npmlog')var request = require('request')var semver = require('semver')function getLatestNodejsVersion (url, cb) {  var tracker = log.newItem('getLatestNodejsVersion', 1)  tracker.info('getLatestNodejsVersion', 'Getting Node.js release information')  var version = 'v0.0.0'  url = url || 'https://nodejs.org/dist/index.json'  request(url, function (e, res, index) {    tracker.finish()    if (e) return cb(e)    if (res.statusCode !== 200) {      return cb(new Error('Status not 200, ' + res.statusCode))    }    try {      JSON.parse(index).forEach(function (item) {        if (item.lts && semver.gt(item.version, version)) version = item.version      })      cb(null, version)    } catch (e) {      cb(e)    }  })}module.exports = getLatestNodejsVersion
 |