evanw / evanw/esbuild

[RFE] unbundled / preserveModules support

Open
#708 27 comments 142 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
40.1k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

I quite like the design and speed of esbuild, but I found that when I use it with `bundle: false` it doesn't do what I would expect. The dependencies of entrypoints are not built unless they are also listed as entrypoints. Even if the deps are listed as entrypoints, the import paths are not adjusted so they won't work.

So it would be nice if esbuild `bundle: false` worked like rollup's [preserveModules](https://rollupjs.org/guide/en/#outputpreservemodules).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing esbuild's `bundle: false` behavior with Rollup's `preserveModules` behavior described in the issue. Trace how entrypoint dependencies and import paths are handled, then define completion as preserving those modules while producing working adjusted imports.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, javascript
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.