Files
node/lib/internal
Joyee Cheung 5065a0acb3 module: do not invoke resolve hooks twice for imported cjs
Previously the resolve hook can be invoked twice from the
synthetic module evaluation step of imported CJS in the extra
module._load() call that's invoked on the resolved full path.
Add an option to avoid it, since the resolution and loading
has already been done before.

PR-URL: https://github.com/nodejs/node/pull/61529
Backport-PR-URL: https://github.com/nodejs/node/pull/62029
Fixes: https://github.com/nodejs/node/issues/57125
Refs: https://github.com/nodejs/node/issues/55808
Refs: https://github.com/nodejs/node/issues/56241
Reviewed-By: Jacob Smith <jacob@frende.me>
Fixes: https://github.com/nodejs/node/issues/61801
2026-04-27 18:03:26 +02:00
..
2025-08-04 12:25:31 +02:00
2026-02-24 00:36:53 +01:00
2026-02-17 19:16:41 +01:00
…
2026-02-24 00:37:06 +01:00
2024-11-27 11:03:39 -05:00
2025-07-24 20:08:23 +02:00
…
2026-02-24 08:38:58 +01:00
…
2025-10-22 23:44:03 +02:00
…
2026-02-24 00:37:06 +01:00
…

Internal Modules

The modules located in lib/internal directory are exclusively meant for internal usage within the Node.js core. They are not intended to be accessed via user modules require(). These modules may change at any point in time. Relying on these internal modules outside the core is not supported and can lead to unpredictable behavior.

In certain scenarios, accessing these internal modules for debugging or experimental purposes might be necessary. Node.js provides the --expose-internals flag to expose these modules to userland code. This flag only exists to assist Node.js maintainers with debugging internals. It is not meant for use outside the project.