File Explorer

/var/lang/lib/node_modules/npm/lib/cli

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

0 dirs
4 files
validate-engines.js1.9 KB · 48 lines
// This is separate to indicate that it should contain code we expect to work in// all versions of node >= 6.  This is a best effort to catch syntax errors to// give users a good error message if they are using a node version that doesn't// allow syntax we are using such as private properties, etc. This file is// linted with ecmaVersion=6 so we don't use invalid syntax, which is set in the// .eslintrc.local.json file const { engines: { node: engines }, version } = require('../../package.json')const npm = `v${version}` module.exports = (process, getCli) => {  const node = process.version   const unsupportedMessage = `npm ${npm} does not support Node.js ${node}. This version of npm supports the following node versions: \`${engines}\`. You can find the latest version at https://nodejs.org/.`   const brokenMessage = `ERROR: npm ${npm} is known not to run on Node.js ${node}.  This version of npm supports the following node versions: \`${engines}\`. You can find the latest version at https://nodejs.org/.`   // coverage ignored because this is only hit in very unsupported node versions  // and it's a best effort attempt to show something nice in those cases  /* istanbul ignore next */  const syntaxErrorHandler = (err) => {    if (err instanceof SyntaxError) {      // eslint-disable-next-line no-console      console.error(`${brokenMessage}\n\nERROR:`)      // eslint-disable-next-line no-console      console.error(err)      return process.exit(1)    }    throw err  }   process.on('uncaughtException', syntaxErrorHandler)  process.on('unhandledRejection', syntaxErrorHandler)   // require this only after setting up the error handlers  const cli = getCli()  return cli(process, {    node,    npm,    engines,    unsupportedMessage,    off: () => {      process.off('uncaughtException', syntaxErrorHandler)      process.off('unhandledRejection', syntaxErrorHandler)    },  })}