Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/internal/bootstrap/pre_execution.js9
-rw-r--r--src/node_native_module.cc1
-rw-r--r--test/wasi/test-wasi-require-flag.js9
3 files changed, 14 insertions, 5 deletions
diff --git a/lib/internal/bootstrap/pre_execution.js b/lib/internal/bootstrap/pre_execution.js
index 0529bd65852..47c709b424e 100644
--- a/lib/internal/bootstrap/pre_execution.js
+++ b/lib/internal/bootstrap/pre_execution.js
@@ -401,11 +401,10 @@ function initializePolicy() {
}
function initializeWASI() {
- if (getOptionValue('--experimental-wasi-unstable-preview0')) {
- const { NativeModule } = require('internal/bootstrap/loaders');
- const mod = NativeModule.map.get('wasi');
- mod.canBeRequiredByUsers = true;
- }
+ const { NativeModule } = require('internal/bootstrap/loaders');
+ const mod = NativeModule.map.get('wasi');
+ mod.canBeRequiredByUsers =
+ getOptionValue('--experimental-wasi-unstable-preview0');
}
function initializeCJSLoader() {
diff --git a/src/node_native_module.cc b/src/node_native_module.cc
index 814adb620dc..43c13ea30a0 100644
--- a/src/node_native_module.cc
+++ b/src/node_native_module.cc
@@ -98,6 +98,7 @@ void NativeModuleLoader::InitializeModuleCategories() {
#endif // !HAVE_OPENSSL
"sys", // Deprecated.
+ "wasi", // Experimental.
"internal/test/binding",
"internal/v8_prof_polyfill",
"internal/v8_prof_processor",
diff --git a/test/wasi/test-wasi-require-flag.js b/test/wasi/test-wasi-require-flag.js
new file mode 100644
index 00000000000..0a52ea952d2
--- /dev/null
+++ b/test/wasi/test-wasi-require-flag.js
@@ -0,0 +1,9 @@
+'use strict';
+// This test verifies that the WASI module cannot be require()'ed without a
+// CLI flag while it is still experimental.
+require('../common');
+const assert = require('assert');
+
+assert.throws(() => {
+ require('wasi');
+}, /^Error: Cannot find module 'wasi'/);