dice-roller/rpg-dice-roller

Crashes with 0d

开放

#278 创建于 2023年5月30日

 (3 条评论) (0 个反应) (0 位负责人)JavaScript (68 个派生)auto 404
enhancementhelp wanted

仓库指标

星标
 (279 个星标)
PR 合并指标
 (30 天内没有已合并 PR)

描述

Description

dice roller crashes on 0d. roller (CLI) throws a stacktrace:

root@gond:~# roller 0d20
file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:4873
  var self = Error.call(this, message);
                   ^

peg$SyntaxError: Expected "%", "*", "**", "+", "-", "/", "^", [.], [0-9], end of input, or whitespace but "d" found.
    at new peg$SyntaxError (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:4873:20)
    at peg$buildStructuredError (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:5387:12)
    at peg$parse (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:7147:11)
    at Function.parse (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:7188:12)
    at new DiceRoll (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:7360:40)
    at file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:7911:24
    at Array.map (<anonymous>)
    at DiceRoller.roll (file:///usr/lib/node_modules/@dice-roller/cli/node_modules/@dice-roller/rpg-dice-roller/lib/esm/bundle.js:7910:37)
    at Object.default [as handler] (file:///usr/lib/node_modules/@dice-roller/cli/lib/roll.js:28:10)
    at /usr/lib/node_modules/@dice-roller/cli/node_modules/yargs/build/index.cjs:1:8993 {
  expected: [
    {
      type: 'class',
      parts: [ [ '0', '9' ] ],
      inverted: false,
      ignoreCase: false
    },
    {
      type: 'class',
      parts: [ '.' ],
      inverted: false,
      ignoreCase: false
    },
    { type: 'other', description: 'whitespace' },
    { type: 'literal', text: '**', ignoreCase: false },
    { type: 'literal', text: '*', ignoreCase: false },
    { type: 'literal', text: '^', ignoreCase: false },
    { type: 'literal', text: '%', ignoreCase: false },
    { type: 'literal', text: '/', ignoreCase: false },
    { type: 'literal', text: '+', ignoreCase: false },
    { type: 'literal', text: '-', ignoreCase: false },
    { type: 'end' }
  ],
  found: 'd',
  location: {
    source: undefined,
    start: { offset: 1, line: 1, column: 2 },
    end: { offset: 2, line: 1, column: 3 }
  }
}

Dice Roller version

v5.3.2

Bundle type

UMD

Node version

v16.20.0

Browser name and version

No response

贡献者指南