Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use empty source map with worker-loader
Reverting a hack that was implemented in https://github.com/uber/fusionjs/pull/1489 to fix a module name collision in generated source maps, as modifying the import path by appending querystring is not compatible with the resolution logic specified for "exports" field, where the package consumers must use exact import paths according to how the package author has it defined in the "exports" field in the package.json. E.g., for [@duckdb/duckdb-wasm](https://github.com/duckdb/duckdb-wasm/blob/15c8075b5f82d3d32386c5c1cd425b5473524de6/packages/duckdb-wasm/package.json#L96-L146) ``` { "...": "", "exports": { "./dist/duckdb-browser-mvp.worker.js": "./dist/duckdb-browser-mvp.worker.js", "...": "" } } ``` The import must take form of `import from '@duckdb/duckdb-wasm/dist/duckdb-browser-mvp.worker.js'`, and `import from '@duckdb/duckdb-wasm/dist/duckdb-browser-mvp.worker.js?workerUrl=true'` is not allowed Here's Node.js's `require.resolve()` output: ``` Welcome to Node.js v16.15.0. > require.resolve('@duckdb/duckdb-wasm/dist/duckdb-browser-mvp.worker.js') '~/test-dd/node_modules/@duckdb/duckdb-wasm/dist/duckdb-browser-mvp.worker.js' > require.resolve('@duckdb/duckdb-wasm/dist/duckdb-browser-mvp.worker.js?workerUrl=true') Uncaught: Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './dist/duckdb-browser-mvp.worker.js?workerUrl=true' is not defined by "exports" in ~/test-dd/node_modules/@duckdb/duckdb-wasm/package.json at __node_internal_captureLargerStackTrace (node:internal/errors:465:5) at new NodeError (node:internal/errors:372:5) at throwExportsNotFound (node:internal/modules/esm/resolve:472:9) at packageExportsResolve (node:internal/modules/esm/resolve:753:3) at resolveExports (node:internal/modules/cjs/loader:482:36) at Function.Module._findPath (node:internal/modules/cjs/loader:522:31) at Function.Module._resolveFilename (node:internal/modules/cjs/loader:919:27) at Function.resolve (node:internal/modules/cjs/helpers:108:19) { code: 'ERR_PACKAGE_PATH_NOT_EXPORTED' } ``` The original issue seems to be fixable by resolving the `worker-loader` using empty source map for the "virtual" module it generates.
- Loading branch information