var semverCompare = require('semver-compare')

module.exports = function pleaseUpgradeNode(pkg, opts) {
  var opts = opts || {}
  var requiredVersion = pkg.engines.node.replace('>=', '')
  var currentVersion = process.version.replace('v', '')
  if (semverCompare(currentVersion, requiredVersion) === -1) {
    if (opts.message) {
      console.error(opts.message(requiredVersion))
    } else {
      console.error(
        pkg.name +
          ' requires at least version ' +
          requiredVersion +
          ' of Node, please upgrade'
      )
    }

    if (opts.hasOwnProperty('exitCode')) {
      process.exit(opts.exitCode)
    } else {
      process.exit(1)
    }
  }
}