fix(npm): fix CJS resolution with local node_modules dir (#16547)

This commit fixes CJS resolution when there's a local "node_modules/"
directory.

Before this commit relative imports from CJS files where resolved
relative to
root directory of the package instead of relative to referrer file.
This commit is contained in:
Bartek Iwańczuk 2022-11-06 00:58:21 +01:00 committed by GitHub
parent 384e53308a
commit e7d7da85df
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 91 additions and 0 deletions

View file

@ -641,6 +641,14 @@ itest!(node_modules_dir_with_deps {
temp_cwd: true,
});
itest!(node_modules_dir_yargs {
args: "run --allow-read --allow-env --unstable --node-modules-dir $TESTDATA/npm/cjs_yargs/main.js",
output: "npm/cjs_yargs/main.out",
envs: env_vars(),
http_server: true,
temp_cwd: true,
});
#[test]
fn node_modules_dir_cache() {
let _server = http_server();

View file

@ -0,0 +1,20 @@
import yargs from "npm:yargs@15.4.1";
const args = yargs(["serve", "8000"])
.command("serve [port]", "start the server", (yargs) => {
return yargs
.positional("port", {
describe: "port to bind on",
default: 5000,
});
}, (argv) => {
console.info(`start server on :${argv.port}`);
})
.option("verbose", {
alias: "v",
type: "boolean",
description: "Run with verbose logging",
})
.argv;
console.log(args);

View file

@ -0,0 +1,54 @@
Download http://localhost:4545/npm/registry/yargs
Download http://localhost:4545/npm/registry/cliui
Download http://localhost:4545/npm/registry/decamelize
Download http://localhost:4545/npm/registry/find-up
Download http://localhost:4545/npm/registry/get-caller-file
Download http://localhost:4545/npm/registry/require-directory
Download http://localhost:4545/npm/registry/require-main-filename
Download http://localhost:4545/npm/registry/set-blocking
Download http://localhost:4545/npm/registry/string-width
Download http://localhost:4545/npm/registry/which-module
Download http://localhost:4545/npm/registry/y18n
Download http://localhost:4545/npm/registry/yargs-parser
Download http://localhost:4545/npm/registry/strip-ansi
Download http://localhost:4545/npm/registry/wrap-ansi
Download http://localhost:4545/npm/registry/locate-path
Download http://localhost:4545/npm/registry/path-exists
Download http://localhost:4545/npm/registry/emoji-regex
Download http://localhost:4545/npm/registry/is-fullwidth-code-point
Download http://localhost:4545/npm/registry/camelcase
Download http://localhost:4545/npm/registry/ansi-regex
Download http://localhost:4545/npm/registry/ansi-styles
Download http://localhost:4545/npm/registry/p-locate
Download http://localhost:4545/npm/registry/color-convert
Download http://localhost:4545/npm/registry/p-limit
Download http://localhost:4545/npm/registry/color-name
Download http://localhost:4545/npm/registry/p-try
Download http://localhost:4545/npm/registry/ansi-regex/ansi-regex-5.0.1.tgz
Download http://localhost:4545/npm/registry/ansi-styles/ansi-styles-4.3.0.tgz
Download http://localhost:4545/npm/registry/camelcase/camelcase-5.3.1.tgz
Download http://localhost:4545/npm/registry/cliui/cliui-6.0.0.tgz
Download http://localhost:4545/npm/registry/color-convert/color-convert-2.0.1.tgz
Download http://localhost:4545/npm/registry/color-name/color-name-1.1.4.tgz
Download http://localhost:4545/npm/registry/decamelize/decamelize-1.2.0.tgz
Download http://localhost:4545/npm/registry/emoji-regex/emoji-regex-8.0.0.tgz
Download http://localhost:4545/npm/registry/find-up/find-up-4.1.0.tgz
Download http://localhost:4545/npm/registry/get-caller-file/get-caller-file-2.0.5.tgz
Download http://localhost:4545/npm/registry/is-fullwidth-code-point/is-fullwidth-code-point-3.0.0.tgz
Download http://localhost:4545/npm/registry/locate-path/locate-path-5.0.0.tgz
Download http://localhost:4545/npm/registry/p-limit/p-limit-2.3.0.tgz
Download http://localhost:4545/npm/registry/p-locate/p-locate-4.1.0.tgz
Download http://localhost:4545/npm/registry/p-try/p-try-2.2.0.tgz
Download http://localhost:4545/npm/registry/path-exists/path-exists-4.0.0.tgz
Download http://localhost:4545/npm/registry/require-directory/require-directory-2.1.1.tgz
Download http://localhost:4545/npm/registry/require-main-filename/require-main-filename-2.0.0.tgz
Download http://localhost:4545/npm/registry/set-blocking/set-blocking-2.0.0.tgz
Download http://localhost:4545/npm/registry/string-width/string-width-4.2.3.tgz
Download http://localhost:4545/npm/registry/strip-ansi/strip-ansi-6.0.1.tgz
Download http://localhost:4545/npm/registry/which-module/which-module-2.0.0.tgz
Download http://localhost:4545/npm/registry/wrap-ansi/wrap-ansi-6.2.0.tgz
Download http://localhost:4545/npm/registry/y18n/y18n-4.0.3.tgz
Download http://localhost:4545/npm/registry/yargs/yargs-15.4.1.tgz
Download http://localhost:4545/npm/registry/yargs-parser/yargs-parser-18.1.3.tgz
start server on :8000
[WILDCARD]