Skip to content

Commit f0b2d87

Browse files
guybedfordMylesBorins
authored andcommitted
module: 12.x self resolve flag as experimental modules
PR-URL: #31757 Reviewed-By: Geoffrey Booth <webmaster@geoffreybooth.com> Reviewed-By: Jan Krems <jan.krems@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
1 parent 7a5954e commit f0b2d87

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

‎lib/internal/modules/cjs/loader.js‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -432,6 +432,7 @@ function resolveBasePath(basePath, exts, isMain, trailingSlash, request) {
432432
}
433433

434434
functiontrySelf(parentPath,isMain,request){
435+
if(!experimentalModules)returnfalse;
435436
const{data: pkg,path: basePath}=readPackageScope(parentPath)||{};
436437
if(!pkg||pkg.exports===undefined)returnfalse;
437438
if(typeofpkg.name!=='string')returnfalse;
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
'use strict';
2+
3+
require('../common');
4+
constassert=require('assert');
5+
constpath=require('path');
6+
const{ createRequireFromPath }=require('module');
7+
8+
constfixturesRequire=
9+
createRequireFromPath(path.resolve(__dirname,'../fixtures/_'));
10+
11+
try{
12+
fixturesRequire('pkgexports/resolve-self');
13+
assert(false);
14+
}catch(e){
15+
assert.strictEqual(e.code,'MODULE_NOT_FOUND');
16+
}

0 commit comments

Comments
 (0)