evanw / evanw/node-source-map-support
Why use Buffer as an implicit dependency?
- 主要言語
- JavaScript
- スター
- 2.2k
- フォーク
- 223
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
:point_up: :point_right: https://github.com/evanw/node-source-map-support/blob/6296f616ca56fc1e1ced36ea15a2eb43d4227c54/source-map-support.js#L111
**Background:**
We (https://github.com/CartoDB/cartodb) suffered a `Uncaught RangeError: Maximum call stack size exceeded` exception on uncaught exceptions after upgrading browserify. I found some similar reported stuff here, e.g. #86 and #93, but after some investigation I found the culprit to be the implicit dependency of [buffer](https://github.com/feross/buffer) used at the line above.
Since there's no reference to this module in this repo I presume that it's accessible through the [browserify module](https://github.com/substack/node-browserify/blob/11.0.1/package.json#L28)? Considering it's a key piece for this module to work, why not define the dependency in this package?
~~That said, there's [a fix](https://github.com/feross/buffer/commit/c681bda) but it's not yet released (v3.4.2), so my temporary workaround to this was to override the implicit dependency, see: https://github.com/CartoDB/cartodb/pull/5171/files~~ The fix was released in [buffer v3.4.2](https://github.com/feross/buffer/tree/v3.4.3)
cc @tanem who seem to have suffered similar issues, perhaps this also works for you
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
source-map-support.js の 111 行目と、このリポジトリのパッケージメタデータを確認し、browserify が buffer をどのように提供するかを検証します。依存関係の処理が明示的であり、報告された browserify のシナリオに照らして関連するインストールまたはパッケージングの動作が確認済みであれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript
- 領域
- devtools
- issue の種類
- バグ
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100