@antora/cli 3.0.0-beta.2 → 3.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/cli.js +11 -24
  2. package/package.json +5 -5
package/lib/cli.js CHANGED
@@ -9,38 +9,25 @@ const userRequire = require('@antora/user-require-helper')
9
9
  const { version: VERSION } = require('../package.json')
10
10
 
11
11
  async function run (argv = process.argv) {
12
- const args = argv.slice(2)
13
- return cli.parseAsync(args.length ? args : ['help'], { from: 'user' })
12
+ return cli.parseAsync((argv = argv.slice(2)).length ? argv : ['help'], { from: 'user' })
14
13
  }
15
14
 
16
15
  function exitWithError (err, opts, msg = undefined) {
17
16
  const { getLogger, configureLogger } = requireLogger()
18
- if (!msg) msg = err.message || err
19
- const name = msg.startsWith('asciidoctor: FAILED: ') ? (msg = msg.slice(21)) && 'asciidoctor' : cli.name()
17
+ let errMessage = String(
18
+ err instanceof Error ? err.message : Object.assign((err = new Error(String(err))), { stack: undefined }).message
19
+ )
20
+ const name = errMessage.startsWith('asciidoctor: FAILED: ')
21
+ ? (errMessage = errMessage.slice(21)) && 'asciidoctor'
22
+ : cli.name()
23
+ if (!msg) msg = errMessage
20
24
  if (!getLogger(null)) {
21
25
  configureLogger({ format: 'pretty', level: opts.silent ? 'silent' : 'fatal', failureLevel: 'fatal' })
22
26
  }
23
- const logger = getLogger(name)
24
27
  if (opts.stacktrace) {
25
- let loc, stack
26
- if ((stack = err.backtrace)) {
27
- err = Object.assign(new Error(msg), { stack: ['Error', ...stack.slice(1)].join('\n') })
28
- } else if ((stack = err.stack)) {
29
- if (err instanceof SyntaxError && stack.includes('\nSyntaxError: ')) {
30
- ;[loc, stack] = stack.split(/\n+SyntaxError: [^\n]+/)
31
- err = Object.assign(new SyntaxError(msg), { stack: stack.replace('\n', `SyntaxError\n at ${loc}\n`) })
32
- } else if (stack.startsWith(`${err.name}: ${msg}`)) {
33
- stack = stack.replace(`${err.name}: ${msg}`, '').replace(/^\n/, '')
34
- err = Object.assign(new err.constructor(msg), { stack: stack ? `${err.name}\n${stack}` : undefined })
35
- }
36
- } else {
37
- err = Object.assign(new Error(msg), { stack: undefined })
38
- }
39
- if ({}.propertyIsEnumerable.call(err, 'name')) Object.defineProperty(err, 'name', { enumerable: false })
40
- err.stack = `Cause: ${err.stack || '(no stacktrace)'}`
41
- logger.fatal(err, msg)
28
+ getLogger(name).fatal(err, msg)
42
29
  } else {
43
- logger.fatal(msg + '\nAdd the --stacktrace option to see the cause of the error.')
30
+ getLogger(name).fatal({ hint: 'Add the --stacktrace option to see the cause of the error.' }, msg)
44
31
  }
45
32
  return exit()
46
33
  }
@@ -48,7 +35,7 @@ function exitWithError (err, opts, msg = undefined) {
48
35
  function exit () {
49
36
  return requireLogger()
50
37
  .finalizeLogger()
51
- .then((failOnExit) => process.exit(failOnExit ? 1 : process.exitCode))
38
+ .then((failOnExit) => process.exit(process.exitCode || (failOnExit ? 1 : 0)))
52
39
  }
53
40
 
54
41
  function getTTYColumns () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antora/cli",
3
- "version": "3.0.0-beta.2",
3
+ "version": "3.0.0-beta.3",
4
4
  "description": "The command line interface for Antora.",
5
5
  "license": "MPL-2.0",
6
6
  "author": "OpenDevise Inc. (https://opendevise.com)",
@@ -18,13 +18,13 @@
18
18
  "antora": "bin/antora"
19
19
  },
20
20
  "dependencies": {
21
- "@antora/logger": "3.0.0-beta.2",
22
- "@antora/playbook-builder": "3.0.0-beta.2",
21
+ "@antora/logger": "3.0.0-beta.3",
22
+ "@antora/playbook-builder": "3.0.0-beta.3",
23
23
  "@antora/user-require-helper": "~2.0",
24
24
  "commander": "~8.3"
25
25
  },
26
26
  "devDependencies": {
27
- "@antora/site-publisher": "3.0.0-beta.2",
27
+ "@antora/site-publisher": "3.0.0-beta.3",
28
28
  "convict": "~6.2",
29
29
  "kapok-js": "~0.10"
30
30
  },
@@ -43,5 +43,5 @@
43
43
  "static site",
44
44
  "web publishing"
45
45
  ],
46
- "gitHead": "5cd3f9cc70622e465cb44daf1aa2035ed5a35f54"
46
+ "gitHead": "45da95a2e2dea538379d2d9f42013d2208fb86c3"
47
47
  }