diff options
-rw-r--r-- | doc/api/cli.md | 8 | ||||
-rw-r--r-- | doc/api/modules.md | 2 | ||||
-rw-r--r-- | lib/internal/modules/cjs/loader.js | 3 | ||||
-rw-r--r-- | src/module_wrap.cc | 4 | ||||
-rw-r--r-- | src/node_options.cc | 5 | ||||
-rw-r--r-- | src/node_options.h | 1 |
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; |