summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/api/cli.md8
-rw-r--r--doc/api/modules.md2
-rw-r--r--lib/internal/modules/cjs/loader.js3
-rw-r--r--src/module_wrap.cc4
-rw-r--r--src/node_options.cc5
-rw-r--r--src/node_options.h1
6 files changed, 3 insertions, 20 deletions
diff --git a/doc/api/cli.md b/doc/api/cli.md
index df7a6362ac..ce9845e648 100644
--- a/doc/api/cli.md
+++ b/doc/api/cli.md
@@ -158,13 +158,6 @@ the ability to import a directory that has an index file.
Please see [customizing esm specifier resolution][] for example usage.
-### `--experimental-exports`
-<!-- YAML
-added: v12.7.0
--->
-
-Enable experimental resolution using the `exports` field in `package.json`.
-
### `--experimental-json-modules`
<!-- YAML
added: v12.9.0
@@ -998,7 +991,6 @@ Node.js options that are allowed are:
* `--enable-fips`
* `--enable-source-maps`
* `--es-module-specifier-resolution`
-* `--experimental-exports`
* `--experimental-json-modules`
* `--experimental-loader`
* `--experimental-modules`
diff --git a/doc/api/modules.md b/doc/api/modules.md
index 9ed9273e0b..29f7b32cd6 100644
--- a/doc/api/modules.md
+++ b/doc/api/modules.md
@@ -202,7 +202,7 @@ NODE_MODULES_PATHS(START)
5. return DIRS
```
-If `--experimental-exports` is enabled, Node.js allows packages loaded via
+Node.js allows packages loaded via
`LOAD_NODE_MODULES` to explicitly declare which file paths to expose and how
they should be interpreted. This expands on the control packages already had
using the `main` field.
diff --git a/lib/internal/modules/cjs/loader.js b/lib/internal/modules/cjs/loader.js
index 479044a26a..3580614481 100644
--- a/lib/internal/modules/cjs/loader.js
+++ b/lib/internal/modules/cjs/loader.js
@@ -70,7 +70,6 @@ const {
} = require('internal/errors').codes;
const { validateString } = require('internal/validators');
const pendingDeprecation = getOptionValue('--pending-deprecation');
-const experimentalExports = getOptionValue('--experimental-exports');
module.exports = { wrapSafe, Module };
@@ -369,7 +368,7 @@ function findLongestRegisteredExtension(filename) {
const EXPORTS_PATTERN = /^((?:@[^/\\%]+\/)?[^./\\%][^/\\%]*)(\/.*)?$/;
function resolveExports(nmPath, request, absoluteRequest) {
// The implementation's behavior is meant to mirror resolution in ESM.
- if (experimentalExports && !absoluteRequest) {
+ if (!absoluteRequest) {
const [, name, expansion = ''] =
StringPrototype.match(request, EXPORTS_PATTERN) || [];
if (!name) {
diff --git a/src/module_wrap.cc b/src/module_wrap.cc
index 67e0cbc618..c2ffee14b2 100644
--- a/src/module_wrap.cc
+++ b/src/module_wrap.cc
@@ -652,8 +652,7 @@ Maybe<const PackageConfig*> GetPackageConfig(Environment* env,
}
Local<Value> exports_v;
- if (env->options()->experimental_exports &&
- pkg_json->Get(env->context(),
+ if (pkg_json->Get(env->context(),
env->exports_string()).ToLocal(&exports_v) &&
!exports_v->IsNullOrUndefined()) {
Global<Value> exports;
@@ -995,7 +994,6 @@ Maybe<URL> PackageExportsResolve(Environment* env,
const std::string& pkg_subpath,
const PackageConfig& pcfg,
const URL& base) {
- CHECK(env->options()->experimental_exports);
Isolate* isolate = env->isolate();
Local<Context> context = env->context();
Local<Value> exports = pcfg.exports.Get(isolate);
diff --git a/src/node_options.cc b/src/node_options.cc
index c75a5f5487..23fa3c0f54 100644
--- a/src/node_options.cc
+++ b/src/node_options.cc
@@ -317,10 +317,6 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
"experimental Source Map V3 support",
&EnvironmentOptions::enable_source_maps,
kAllowedInEnvironment);
- AddOption("--experimental-exports",
- "experimental support for exports in package.json",
- &EnvironmentOptions::experimental_exports,
- kAllowedInEnvironment);
AddOption("--experimental-json-modules",
"experimental JSON interop support for the ES Module loader",
&EnvironmentOptions::experimental_json_modules,
@@ -335,7 +331,6 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
"experimental ES Module support and caching modules",
&EnvironmentOptions::experimental_modules,
kAllowedInEnvironment);
- Implies("--experimental-modules", "--experimental-exports");
AddOption("--experimental-wasm-modules",
"experimental ES Module support for webassembly modules",
&EnvironmentOptions::experimental_wasm_modules,
diff --git a/src/node_options.h b/src/node_options.h
index 5887191877..f9d2581deb 100644
--- a/src/node_options.h
+++ b/src/node_options.h
@@ -101,7 +101,6 @@ class EnvironmentOptions : public Options {
public:
bool abort_on_uncaught_exception = false;
bool enable_source_maps = false;
- bool experimental_exports = false;
bool experimental_json_modules = false;
bool experimental_modules = false;
std::string es_module_specifier_resolution;