Skip to content

Commit fbc52e5

Browse files
joyeecheungrichardlau
authored andcommittedDec 8, 2022
src: disambiguate terms used to refer to builtins and addons
The term "native module" dates back to some of the oldest code in the code base. Within the context of Node.js core it usually refers to modules that are native to Node.js (e.g. fs, http), but it can cause confusion for people who don't work on this part of the code base, as "native module" can also refer to native addons - which is even the case in some of the API docs and error messages. This patch tries to make the usage of these terms more consistent. Now within the context of Node.js core: - JavaScript scripts that are built-in to Node.js are now referred to as "built-in(s)". If they are available as modules, they can also be referred to as "built-in module(s)". - Dynamically-linked shared objects that are loaded into the Node.js processes are referred to as "addons". We will try to avoid using the term "native modules" because it could be ambiguous. Changes in this patch: File names: - node_native_module.h -> node_builtins.h, - node_native_module.cc -> node_builtins.cc C++ binding names: - `native_module` -> `builtins` `node::Environment`: - `native_modules_without_cache` -> `builtins_without_cache` - `native_modules_with_cache` -> `builtins_with_cache` - `native_modules_in_snapshot` -> `builtins_in_cache` - `native_module_require` -> `builtin_module_require` `node::EnvSerializeInfo`: - `native_modules` -> `builtins `node::native_module::NativeModuleLoader`: - `native_module` namespace -> `builtins` namespace - `NativeModuleLoader` -> `BuiltinLoader` - `NativeModuleRecordMap` -> `BuiltinSourceMap` - `NativeModuleCacheMap` -> `BuiltinCodeCacheMap` - `ModuleIds` -> `BuiltinIds` - `ModuleCategories` -> `BuiltinCategories` - `LoadBuiltinModuleSource` -> `LoadBuiltinSource` `loader.js`: - `NativeModule` -> `BuiltinModule` (the `NativeModule` name used in `process.moduleLoadList` is kept for compatibility) And other clarifications in the documentation and comments. PR-URL: #44135 Backport-PR-URL: #45663 Fixes: #44036 Reviewed-By: Jacob Smith <jacob@frende.me> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Jan Krems <jan.krems@gmail.com>
1 parent 953072d commit fbc52e5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+297
-295
lines changed
 

‎.github/CODEOWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@
108108
/benchmark/misc/startup.js @nodejs/startup
109109
/src/node.cc @nodejs/startup
110110
/src/node_code_cache_stub.cc @nodejs/startup
111-
/src/node_native_module* @nodejs/startup
111+
/src/node_builtins* @nodejs/startup
112112
/src/node_snapshot* @nodejs/startup
113113
/lib/internal/bootstrap/* @nodejs/startup
114114
/tools/code_cache/* @nodejs/startup

‎doc/api/deprecations.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -2003,7 +2003,7 @@ changes:
20032003

20042004
Type: Compile-time
20052005

2006-
Certain versions of `node::MakeCallback` APIs available to native modules are
2006+
Certain versions of `node::MakeCallback` APIs available to native addons are
20072007
deprecated. Please use the versions of the API that accept an `async_context`
20082008
parameter.
20092009

@@ -2751,7 +2751,7 @@ changes:
27512751
Type: Documentation-only
27522752

27532753
The `node:repl` module exports a `_builtinLibs` property that contains an array
2754-
with native modules. It was incomplete so far and instead it's better to rely
2754+
of built-in modules. It was incomplete so far and instead it's better to rely
27552755
upon `require('node:module').builtinModules`.
27562756

27572757
### DEP0143: `Transform._transformState`

0 commit comments

Comments
 (0)
Please sign in to comment.