Skip to content

Commit

Permalink
Replace with Zen
Browse files Browse the repository at this point in the history
  • Loading branch information
hansott committed Nov 20, 2024
1 parent c2fb2e1 commit 947b06d
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion docs/esbuild.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Zen works by intercepting `require()` calls that a Node.js application makes whe

Bundlers crawl all of the `require()` calls that an application makes to files on disk. It replaces the `require()` calls with custom code and combines all the resulting JavaScript into one "bundled" file. When a built-in module is loaded, such as `require('fs')`, that call can then remain the same in the resulting bundle.

Zen stops working at this point. They can continue to intercept the calls for built-in modules but don't intercept calls to third party libraries. This means that when you bundle a Zen app with a bundler it is likely to capture information about disk access (through `fs`) and outbound HTTP requests (through `http`), but omit calls to third party libraries.
Zen stops working at this point. Zen can continue to intercept the calls for built-in modules but don't intercept calls to third party libraries. This means that when you bundle a Zen app with a bundler Zen is likely to capture information about disk access (through `fs`) and outbound HTTP requests (through `http`), but omit calls to third party libraries.

The solution is to treat all third party modules that Zen needs to instrument as being "external" to the bundler. With this setting the instrumented modules remain on disk and continue to be loaded with `require()` while the non-instrumented modules are bundled.

Expand Down

0 comments on commit 947b06d

Please sign in to comment.