Skip to content

Commit ad7e7bb

Browse files
slagiewkawesleytodd
authored andcommitted
fix(refactor): prefix built-in node module imports
Since v5 relies on node >= 18, this is now possible (since v16, v14.18.0 [^1][^2]). It's functionally irrelevant: 1. It's not required for CJS nor ESM (with a few exceptions [^3]) 2. It has no performance promises However, there are upsides to this approach: 1. It brings clear boundaries to what's a built-in and what's an external dependency 2. It reduces the risk of importing unwanted deps where a built-in is expected 3. It's slightly more interoperable with other JS runtimes that provide node compatibility[^4], albeit only during development. Once imported from npm, built-ins are assumed. [^1]:https://nodejs.org/docs/latest-v22.x/api/modules.html#built-in-modules [^2]:nodejs/node#37246 [^3]:https://nodejs.org/api/modules.html#built-in-modules-with-mandatory-node-prefix [^4]:https://docs.deno.com/runtime/fundamentals/node/#using-node's-built-in-modules
1 parent 6a40af8 commit ad7e7bb

Some content is hidden

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

52 files changed

+443
-441
lines changed

History.md

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ unreleased
77
* cleanup: remove unnecessary require for global Buffer
88
* perf: use loop for acceptParams
99
* Replace `methods` dependency with standard library
10+
* refactor: prefix built-in node module imports
1011

1112
5.0.1 / 2024-10-08
1213
==========

examples/auth/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
var express = require('../..');
88
var hash = require('pbkdf2-password')()
9-
var path = require('path');
9+
var path = require('node:path');
1010
var session = require('express-session');
1111

1212
var app = module.exports = express();

examples/downloads/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77
var express = require('../../');
8-
var path = require('path');
8+
var path = require('node:path');
99

1010
var app = module.exports = express();
1111

examples/ejs/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77
var express = require('../../');
8-
var path = require('path');
8+
var path = require('node:path');
99

1010
var app = module.exports = express();
1111

examples/error-pages/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77
var express = require('../../');
8-
var path = require('path');
8+
var path = require('node:path');
99
var app = module.exports = express();
1010
var logger = require('morgan');
1111
var silent = process.env.NODE_ENV === 'test'

examples/markdown/index.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
var escapeHtml = require('escape-html');
88
var express = require('../..');
9-
var fs = require('fs');
9+
var fs = require('node:fs');
1010
var marked = require('marked');
11-
var path = require('path');
11+
var path = require('node:path');
1212

1313
var app = module.exports = express();
1414

examples/mvc/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
var express = require('../..');
88
var logger = require('morgan');
9-
var path = require('path');
9+
var path = require('node:path');
1010
var session = require('express-session');
1111
var methodOverride = require('method-override');
1212

examples/mvc/lib/boot.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
*/
66

77
var express = require('../../..');
8-
var fs = require('fs');
9-
var path = require('path');
8+
var fs = require('node:fs');
9+
var path = require('node:path');
1010

1111
module.exports = function(parent, options){
1212
var dir = path.join(__dirname, '..', 'controllers');

examples/route-separation/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77
var express = require('../..');
8-
var path = require('path');
8+
var path = require('node:path');
99
var app = express();
1010
var logger = require('morgan');
1111
var cookieParser = require('cookie-parser');

examples/search/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
*/
1313

1414
var express = require('../..');
15-
var path = require('path');
15+
var path = require('node:path');
1616
var redis = require('redis');
1717

1818
var db = redis.createClient();

examples/static-files/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
var express = require('../..');
88
var logger = require('morgan');
9-
var path = require('path');
9+
var path = require('node:path');
1010
var app = express();
1111

1212
// log requests

examples/view-constructor/github-view.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
* Module dependencies.
55
*/
66

7-
var https = require('https');
8-
var path = require('path');
7+
var https = require('node:https');
8+
var path = require('node:path');
99
var extname = path.extname;
1010

1111
/**

examples/view-locals/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77
var express = require('../..');
8-
var path = require('path');
8+
var path = require('node:path');
99
var User = require('./user');
1010
var app = express();
1111

lib/application.js

+8-7
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,13 @@
1616
var finalhandler = require('finalhandler');
1717
var debug = require('debug')('express:application');
1818
var View = require('./view');
19-
var http = require('http');
19+
var http = require('node:http');
2020
var methods = require('./utils').methods;
2121
var compileETag = require('./utils').compileETag;
2222
var compileQueryParser = require('./utils').compileQueryParser;
2323
var compileTrust = require('./utils').compileTrust;
24-
var resolve = require('path').resolve;
24+
var merge = require('utils-merge');
25+
var resolve = require('node:path').resolve;
2526
var once = require('once')
2627
var Router = require('router');
2728

@@ -468,8 +469,8 @@ app.disable = function disable(setting) {
468469
* Delegate `.VERB(...)` calls to `router.VERB(...)`.
469470
*/
470471

471-
methods.forEach(function(method){
472-
app[method] = function(path){
472+
methods.forEach(function (method) {
473+
app[method] = function (path) {
473474
if (method === 'get' && arguments.length === 1) {
474475
// app.get(setting)
475476
return this.set(path);
@@ -583,8 +584,8 @@ app.render = function render(name, options, callback) {
583584
* and HTTPS server you may do so with the "http"
584585
* and "https" modules as shown here:
585586
*
586-
* var http = require('http')
587-
* , https = require('https')
587+
* var http = require('node:http')
588+
* , https = require('node:https')
588589
* , express = require('express')
589590
* , app = express();
590591
*
@@ -595,7 +596,7 @@ app.render = function render(name, options, callback) {
595596
* @public
596597
*/
597598

598-
app.listen = function listen () {
599+
app.listen = function listen() {
599600
var server = http.createServer(this)
600601
var args = Array.prototype.slice.call(arguments)
601602
if (typeof args[args.length - 1] === 'function') {

lib/express.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*/
1414

1515
var bodyParser = require('body-parser')
16-
var EventEmitter = require('events').EventEmitter;
16+
var EventEmitter = require('node:events').EventEmitter;
1717
var mixin = require('merge-descriptors');
1818
var proto = require('./application');
1919
var Router = require('router');

lib/request.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414
*/
1515

1616
var accepts = require('accepts');
17-
var isIP = require('net').isIP;
17+
var isIP = require('node:net').isIP;
1818
var typeis = require('type-is');
19-
var http = require('http');
19+
var http = require('node:http');
2020
var fresh = require('fresh');
2121
var parseRange = require('range-parser');
2222
var parse = require('parseurl');

lib/response.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ var contentDisposition = require('content-disposition');
1616
var createError = require('http-errors')
1717
var encodeUrl = require('encodeurl');
1818
var escapeHtml = require('escape-html');
19-
var http = require('http');
19+
var http = require('node:http');
2020
var onFinished = require('on-finished');
2121
var mime = require('mime-types')
22-
var path = require('path');
23-
var pathIsAbsolute = require('path').isAbsolute;
22+
var path = require('node:path');
23+
var pathIsAbsolute = require('node:path').isAbsolute;
2424
var statuses = require('statuses')
2525
var sign = require('cookie-signature').sign;
2626
var normalizeType = require('./utils').normalizeType;

lib/view.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
*/
1515

1616
var debug = require('debug')('express:view');
17-
var path = require('path');
18-
var fs = require('fs');
17+
var path = require('node:path');
18+
var fs = require('node:fs');
1919

2020
/**
2121
* Module variables.

test/Route.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
'use strict'
22

33
var after = require('after');
4-
var assert = require('assert')
4+
var assert = require('node:assert')
55
var express = require('../')
66
, Route = express.Route
77
, methods = require('../lib/utils').methods

0 commit comments

Comments
 (0)