summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRongjian Zhang <pd4d10@gmail.com>2019-11-24 12:40:40 +0800
committerGuy Bedford <guybedford@gmail.com>2019-12-04 22:36:37 -0500
commitaa4c57ae7e74a623f5255a7f05a6ff9d5bc335d0 (patch)
tree9d7ab21bd8ace8e731ae5ecf9c79489236fe0455 /lib
parent110dc02747473ae8193d71c1aa9cbedd71bfaa01 (diff)
downloadandroid-node-v8-aa4c57ae7e74a623f5255a7f05a6ff9d5bc335d0.tar.gz
android-node-v8-aa4c57ae7e74a623f5255a7f05a6ff9d5bc335d0.tar.bz2
android-node-v8-aa4c57ae7e74a623f5255a7f05a6ff9d5bc335d0.zip
module: add warnings for experimental flags
PR-URL: https://github.com/nodejs/node/pull/30617 Fixes: https://github.com/nodejs/node/issues/30600 Reviewed-By: Guy Bedford <guybedford@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/internal/modules/cjs/loader.js15
-rw-r--r--lib/internal/modules/esm/translators.js4
2 files changed, 13 insertions, 6 deletions
diff --git a/lib/internal/modules/cjs/loader.js b/lib/internal/modules/cjs/loader.js
index 0b98fb9d4f..11c04e3e0c 100644
--- a/lib/internal/modules/cjs/loader.js
+++ b/lib/internal/modules/cjs/loader.js
@@ -46,7 +46,7 @@ const {
rekeySourceMap
} = require('internal/source_map/source_map_cache');
const { pathToFileURL, fileURLToPath, URL } = require('internal/url');
-const { deprecate } = require('internal/util');
+const { deprecate, emitExperimentalWarning } = require('internal/util');
const vm = require('vm');
const assert = require('internal/assert');
const fs = require('fs');
@@ -587,8 +587,10 @@ function resolveExportsTarget(pkgPath, target, subpath, basePath, mappingKey) {
if (experimentalConditionalExports &&
ObjectPrototypeHasOwnProperty(target, 'require')) {
try {
- return resolveExportsTarget(pkgPath, target.require, subpath,
- basePath, mappingKey);
+ const result = resolveExportsTarget(pkgPath, target.require, subpath,
+ basePath, mappingKey);
+ emitExperimentalWarning('Conditional exports');
+ return result;
} catch (e) {
if (e.code !== 'MODULE_NOT_FOUND') throw e;
}
@@ -596,8 +598,10 @@ function resolveExportsTarget(pkgPath, target, subpath, basePath, mappingKey) {
if (experimentalConditionalExports &&
ObjectPrototypeHasOwnProperty(target, 'node')) {
try {
- return resolveExportsTarget(pkgPath, target.node, subpath,
- basePath, mappingKey);
+ const result = resolveExportsTarget(pkgPath, target.node, subpath,
+ basePath, mappingKey);
+ emitExperimentalWarning('Conditional exports');
+ return result;
} catch (e) {
if (e.code !== 'MODULE_NOT_FOUND') throw e;
}
@@ -700,6 +704,7 @@ Module._findPath = function(request, paths, isMain) {
const selfFilename = trySelf(paths, exts, isMain, trailingSlash, request);
if (selfFilename) {
+ emitExperimentalWarning('Package name self resolution');
Module._pathCache[cacheKey] = selfFilename;
return selfFilename;
}
diff --git a/lib/internal/modules/esm/translators.js b/lib/internal/modules/esm/translators.js
index dafc1b02f0..99e4c01405 100644
--- a/lib/internal/modules/esm/translators.js
+++ b/lib/internal/modules/esm/translators.js
@@ -22,7 +22,7 @@ const createDynamicModule = require(
const fs = require('fs');
const { fileURLToPath, URL } = require('url');
const { debuglog } = require('internal/util/debuglog');
-const { promisify } = require('internal/util');
+const { promisify, emitExperimentalWarning } = require('internal/util');
const {
ERR_INVALID_URL,
ERR_INVALID_URL_SCHEME,
@@ -133,6 +133,7 @@ translators.set('builtin', async function builtinStrategy(url) {
// Strategy for loading a JSON file
translators.set('json', async function jsonStrategy(url) {
+ emitExperimentalWarning('Importing JSON modules');
debug(`Translating JSONModule ${url}`);
debug(`Loading JSONModule ${url}`);
const pathname = url.startsWith('file:') ? fileURLToPath(url) : null;
@@ -187,6 +188,7 @@ translators.set('json', async function jsonStrategy(url) {
// Strategy for loading a wasm module
translators.set('wasm', async function(url) {
+ emitExperimentalWarning('Importing Web Assembly modules');
const buffer = await getSource(url);
debug(`Translating WASMModule ${url}`);
let compiled;