Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug] build failed on deconstructing rest parameters

オープン
#1,039 コメント 1 件 リアクション 2 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
javascript, typescript
領域
build-system

調査の方向性

test.ts と microbundle -i test.ts -o test.js で失敗を再現します。dist/cli.js:134 にある Babel プラグインの RestElement ハンドラーと、dist/cli.js:175 にある Program のトラバーサルから始めます。destructured rest-parameter の例が報告された TypeError なしでビルドできれば完了です。

索引モデルが issue の本文から書いたものです。

説明

Description

Build failed when deconstructing rest parameters

Version

microbundle@^0.15.1

Reproduce steps
  1. input file
// test.ts

export function A(...[a, b]: any[]) {}
  1. build
    microbundle -i test.ts -o test.js

  2. build failed

(babel plugin) TypeError: ~/node-demo/test.ts: Cannot read properties of undefined (reading 'referencePaths')
TypeError: ~/node-demo/test.ts: Cannot read properties of undefined (reading 'referencePaths')
    at Map.RestElement (~/node-demo/node_modules/microbundle/dist/cli.js:134:19)
    at NodePath._call (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:45:20)
    at NodePath.call (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:35:17)
    at NodePath.visit (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:80:31)
    at TraversalContext.visitQueue (~/node-demo/node_modules/@babel/traverse/lib/context.js:86:16)
    at TraversalContext.visitMultiple (~/node-demo/node_modules/@babel/traverse/lib/context.js:61:17)
    at TraversalContext.visit (~/node-demo/node_modules/@babel/traverse/lib/context.js:107:19)
    at traverseNode (~/node-demo/node_modules/@babel/traverse/lib/traverse-node.js:18:17)
    at NodePath.visit (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:86:52)
    at TraversalContext.visitQueue (~/node-demo/node_modules/@babel/traverse/lib/context.js:86:16)
    at TraversalContext.visitSingle (~/node-demo/node_modules/@babel/traverse/lib/context.js:65:19)
    at TraversalContext.visit (~/node-demo/node_modules/@babel/traverse/lib/context.js:109:19)
    at traverseNode (~/node-demo/node_modules/@babel/traverse/lib/traverse-node.js:18:17)
    at NodePath.visit (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:86:52)
    at TraversalContext.visitQueue (~/node-demo/node_modules/@babel/traverse/lib/context.js:86:16)
    at TraversalContext.visitMultiple (~/node-demo/node_modules/@babel/traverse/lib/context.js:61:17)
    at TraversalContext.visit (~/node-demo/node_modules/@babel/traverse/lib/context.js:107:19)
    at traverseNode (~/node-demo/node_modules/@babel/traverse/lib/traverse-node.js:18:17)
    at traverse (~/node-demo/node_modules/@babel/traverse/lib/index.js:49:34)
    at NodePath.traverse (~/node-demo/node_modules/@babel/traverse/lib/path/index.js:108:24)
    at PluginPass.Program (~/node-demo/node_modules/microbundle/dist/cli.js:175:14)
    at newFn (~/node-demo/node_modules/@babel/traverse/lib/visitors.js:149:21)
    at NodePath._call (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:45:20)
    at NodePath.call (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:35:17)
    at NodePath.visit (~/node-demo/node_modules/@babel/traverse/lib/path/context.js:80:31)
    at TraversalContext.visitQueue (~/node-demo/node_modules/@babel/traverse/lib/context.js:86:16)
    at TraversalContext.visitSingle (~/node-demo/node_modules/@babel/traverse/lib/context.js:65:19)
    at TraversalContext.visit (~/node-demo/node_modules/@babel/traverse/lib/context.js:109:19)
    at traverseNode (~/node-demo/node_modules/@babel/traverse/lib/traverse-node.js:18:17)
    at traverse (~/node-demo/node_modules/@babel/traverse/lib/index.js:49:34)
    at transformFile (~/node-demo/node_modules/@babel/core/lib/transformation/index.js:81:29)
    at transformFile.next (<anonymous>)
    at run (~/node-demo/node_modules/@babel/core/lib/transformation/index.js:24:12)
    at run.next (<anonymous>)
    at transform (~/node-demo/node_modules/@babel/core/lib/transform.js:22:41)
    at transform.next (<anonymous>)
    at step (~/node-demo/node_modules/gensync/index.js:261:32)
    at ~/node-demo/node_modules/gensync/index.js:273:13
    at async.call.result.err.err (~/node-demo/node_modules/gensync/index.js:223:11)
主要言語
JavaScript
スター
8.1k
フォーク
358
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

developit/microbundle のほかの issue

developit/microbundle の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。