Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: enable ESM support for Node v20 #3469

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions dev-utils/gen-notice.sh
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@ npm ls --omit=dev --all --parseable \
// We handle getting the license text for a few specific deps that
// do not include one in their install.
const licFileFromPkgName = {
"acorn-import-assertions": "license.MIT.txt",
"async-value": "license.MIT.txt",
"async-value-promise": "license.MIT.txt",
"breadth-filter": "license.MIT.txt",
Expand Down
2 changes: 1 addition & 1 deletion docs/esm.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ As well, the APM agent must also be separately *started* -- for example via `--r

Automatic instrumentation of ES modules is based on the experimental Node.js Loaders API. ESM support in the Elastic APM Node.js agent will remain *experimental* while the Loaders API is experimental.

ESM auto-instrumentation is only supported for Node.js versions that match *`^12.20.0 || ^14.13.1 || ^16.0.0 || ^18.1.0 <20`*. Notably, in the current APM agent version, this _excludes Node.js v20_ because of changes in the Loaders API. The behavior when using `node --experimental-loader=elastic-apm-node/loader.mjs` with earlier Node.js versions is undefined and unsupported.
ESM auto-instrumentation is only supported for Node.js versions that match *`^12.20.0 || ^14.13.1 || ^16.0.0 || >=18.1.0`*. The behavior when using `node --experimental-loader=elastic-apm-node/loader.mjs` with earlier Node.js versions is undefined and unsupported.


[float]
Expand Down