Skip to content

Commit

Permalink
src: add --no-global-search-paths cli option
Browse files Browse the repository at this point in the history
  • Loading branch information
zcbenz committed Aug 16, 2021
1 parent 48c880d commit b540122
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 0 deletions.
9 changes: 9 additions & 0 deletions doc/api/cli.md
Expand Up @@ -612,6 +612,14 @@ added: v9.0.0
Disables runtime checks for `async_hooks`. These will still be enabled
dynamically when `async_hooks` is enabled.

### `--no-global-search-paths`
<!-- YAML
added: v16.?.?
-->

Do not search modules from global paths like `$HOME/.node_modules` and
`$NODE_PATH`.

### `--no-warnings`
<!-- YAML
added: v6.0.0
Expand Down Expand Up @@ -1424,6 +1432,7 @@ Node.js options that are allowed are:
* `--no-experimental-repl-await`
* `--no-force-async-hooks-checks`
* `--no-warnings`
* `--no-global-search-paths`
* `--node-memory-debug`
* `--openssl-config`
* `--pending-deprecation`
Expand Down
3 changes: 3 additions & 0 deletions doc/node.1
Expand Up @@ -277,6 +277,9 @@ Silence deprecation warnings.
Disable runtime checks for `async_hooks`.
These will still be enabled dynamically when `async_hooks` is enabled.
.
.It Fl -no-global-search-paths
Do not search modules from global paths.
.
.It Fl -no-warnings
Silence all process warnings (including deprecations).
.
Expand Down
4 changes: 4 additions & 0 deletions src/env.cc
Expand Up @@ -383,6 +383,10 @@ Environment::Environment(IsolateData* isolate_data,
inspector_host_port_ = std::make_shared<ExclusiveAccess<HostPort>>(
options_->debug_options().host_port);

if (!options_->global_search_paths) {
flags_ |= EnvironmentFlags::kNoGlobalSearchPaths;
}

if (!(flags_ & EnvironmentFlags::kOwnsProcessState)) {
set_abort_on_uncaught_exception(false);
}
Expand Down
5 changes: 5 additions & 0 deletions src/node_options.cc
Expand Up @@ -402,6 +402,11 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
&EnvironmentOptions::force_async_hooks_checks,
kAllowedInEnvironment,
true);
AddOption("--global-search-paths",
"disable global module search paths",
&EnvironmentOptions::global_search_paths,
kAllowedInEnvironment,
true);
AddOption("--warnings",
"silence all process warnings",
&EnvironmentOptions::warnings,
Expand Down
1 change: 1 addition & 0 deletions src/node_options.h
Expand Up @@ -121,6 +121,7 @@ class EnvironmentOptions : public Options {
uint64_t max_http_header_size = 16 * 1024;
bool deprecation = true;
bool force_async_hooks_checks = true;
bool global_search_paths = true;
bool warnings = true;
bool force_context_aware = false;
bool pending_deprecation = false;
Expand Down

0 comments on commit b540122

Please sign in to comment.