@@ -274,17 +274,6 @@ Module._load = function(request, parent, isMain) {
274
274
debug ( 'Module._load REQUEST %s parent: %s' , request , parent . id ) ;
275
275
}
276
276
277
- // REPL is a special case, because it needs the real require.
278
- if ( request === 'internal/repl' || request === 'repl' ) {
279
- if ( Module . _cache [ request ] ) {
280
- return Module . _cache [ request ] ;
281
- }
282
- var replModule = new Module ( request ) ;
283
- replModule . _compile ( NativeModule . getSource ( request ) , `${ request } .js` ) ;
284
- NativeModule . _cache [ request ] = replModule ;
285
- return replModule . exports ;
286
- }
287
-
288
277
var filename = Module . _resolveFilename ( request , parent ) ;
289
278
290
279
var cachedModule = Module . _cache [ filename ] ;
@@ -376,27 +365,9 @@ var resolvedArgv;
376
365
// the file.
377
366
// Returns exception, if any.
378
367
Module . prototype . _compile = function ( content , filename ) {
379
- var self = this ;
380
368
// remove shebang
381
369
content = content . replace ( shebangRe , '' ) ;
382
370
383
- function require ( path ) {
384
- return self . require ( path ) ;
385
- }
386
-
387
- require . resolve = function ( request ) {
388
- return Module . _resolveFilename ( request , self ) ;
389
- } ;
390
-
391
- require . main = process . mainModule ;
392
-
393
- // Enable support to add extra extension types
394
- require . extensions = Module . _extensions ;
395
-
396
- require . cache = Module . _cache ;
397
-
398
- var dirname = path . dirname ( filename ) ;
399
-
400
371
// create wrapper function
401
372
var wrapper = Module . wrap ( content ) ;
402
373
@@ -421,8 +392,10 @@ Module.prototype._compile = function(content, filename) {
421
392
global . v8debug . Debug . setBreakPoint ( compiledWrapper , 0 , 0 ) ;
422
393
}
423
394
}
424
- var args = [ self . exports , require , self , filename , dirname ] ;
425
- return compiledWrapper . apply ( self . exports , args ) ;
395
+ const dirname = path . dirname ( filename ) ;
396
+ const require = internalModule . makeRequireFunction . call ( this ) ;
397
+ const args = [ this . exports , require , this , filename , dirname ] ;
398
+ return compiledWrapper . apply ( this . exports , args ) ;
426
399
} ;
427
400
428
401
@@ -488,10 +461,10 @@ Module._initPaths = function() {
488
461
Module . globalPaths = modulePaths . slice ( 0 ) ;
489
462
} ;
490
463
491
- // bootstrap repl
492
- Module . requireRepl = function ( ) {
493
- return Module . _load ( 'internal/repl' , '. ') ;
494
- } ;
464
+ // TODO(bnoordhuis) Unused, remove in the future.
465
+ Module . requireRepl = internalUtil . deprecate ( function ( ) {
466
+ return NativeModule . require ( 'internal/repl' ) ;
467
+ } , 'Module.requireRepl is deprecated.' ) ;
495
468
496
469
Module . _preloadModules = function ( requests ) {
497
470
if ( ! Array . isArray ( requests ) )
0 commit comments