developit / developit/web-worker

`1.5.0` regression: workers treated as ESM by default

オープン
#55 コメント 1 件 リアクション 5 件 担当者 0 名 GitHub で見る
主要言語
JavaScript
スター
1.2k
フォーク
57
PR マージ指標
30日以内にマージされた PR はありません

説明

Hi,

Glad to stumbled on this neat project and looking forward to using it to write more consistent browser-node code.

I'm trying to get duckdb-wasm working in node, I found a [`bare-node`](https://github.com/duckdb/duckdb-wasm/blob/main/examples/bare-node/index.cjs) example in their repo.

It fails when I run it, with error:

`ReferenceError: module is not defined`

It uses web-worker, and it seems like the worker code (clearly CJS and with file extension `cjs`) gets detected like an ESM module.

Downgrading web-worker from `1.5.0` to `1.4.1` fixes the issue. I tried a few other things like passing type: commonjs, type: classic - none worked.

Suggests a regression in 1.5.0 release (edit: unless changing the default behavior in 1.5.0 is intentional)

Thanks
Declan

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

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

調査の方向性

Start by running the duckdb-wasm bare-node example at examples/bare-node/index.cjs with web-worker 1.5.0, then compare it with 1.4.1. Trace how the worker script is loaded and how its module type is selected; done means the CJS worker runs under 1.5.0 without the `module is not defined` error while preserving the documented worker behavior.

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

評価

技術スタック
javascript, node.js
領域
backend
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
52/100

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

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