diff --git a/package.json b/package.json index 16aef8a40..58d627fc8 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "typescript": "5.1.6", "unicode-regex": "4.0.0", "unified": "9.2.2", - "vnopts": "1.0.2", + "vnopts": "2.0.0", "wcwidth": "1.0.1", "yaml-unist-parser": "2.0.1" }, diff --git a/scripts/build/build-javascript-module.js b/scripts/build/build-javascript-module.js index dfd60db74..8a6e4d2a8 100644 --- a/scripts/build/build-javascript-module.js +++ b/scripts/build/build-javascript-module.js @@ -57,7 +57,6 @@ function getEsbuildOptions({ file, files, shouldCollectLicenses, cliOptions }) { // #12493, not sure what the problem is, but replace the cjs version with esm version seems fix it ...[ require.resolve("tslib"), - createRequire(require.resolve("vnopts")).resolve("tslib"), createRequire(require.resolve("tsutils")).resolve("tslib"), ].map((file) => ({ module: file, diff --git a/src/index.js b/src/index.js index 65c1ed348..d64500e69 100644 --- a/src/index.js +++ b/src/index.js @@ -1,4 +1,4 @@ -import vnopts from "vnopts"; +import * as vnopts from "vnopts"; // "fast-glob" is bundled here since the API uses `micromatch` too import fastGlob from "fast-glob"; import * as core from "./main/core.js"; @@ -89,7 +89,10 @@ const sharedWithCli = { normalizeOptions, getSupportInfoWithoutPlugins, normalizeOptionSettings, - vnopts, + vnopts: { + ChoiceSchema: vnopts.ChoiceSchema, + apiDescriptor: vnopts.apiDescriptor, + }, fastGlob, utils: { isNonEmptyArray, diff --git a/src/main/normalize-options.js b/src/main/normalize-options.js index c4e7e8048..b7b1dcb14 100644 --- a/src/main/normalize-options.js +++ b/src/main/normalize-options.js @@ -1,4 +1,4 @@ -import vnopts from "vnopts"; +import * as vnopts from "vnopts"; /** * @typedef {import("./support.js").NamedOptionInfo} NamedOptionInfo diff --git a/tests/integration/__tests__/__snapshots__/config-invalid.js.snap b/tests/integration/__tests__/__snapshots__/config-invalid.js.snap index ee2916ab3..a56e9379e 100644 --- a/tests/integration/__tests__/__snapshots__/config-invalid.js.snap +++ b/tests/integration/__tests__/__snapshots__/config-invalid.js.snap @@ -50,7 +50,12 @@ exports[`throw error with invalid config option (trailingComma) (stdout) 1`] = ` exports[`throw error with invalid config option (trailingComma) (write) 1`] = `[]`; -exports[`throw error with invalid config precedence option (configPrecedence) (stderr) 1`] = `"[error] Invalid --config-precedence value. Expected "cli-override", "file-override" or "prefer-file", but received "option/configPrecedence"."`; +exports[`throw error with invalid config precedence option (configPrecedence) (stderr) 1`] = ` +"[error] Invalid --config-precedence value. Expected one of the following values, but received "option/configPrecedence". +[error] - "cli-override" +[error] - "file-override" +[error] - "prefer-file"" +`; exports[`throw error with invalid config precedence option (configPrecedence) (stdout) 1`] = `""`; diff --git a/tests/integration/__tests__/__snapshots__/log-level.js.snap b/tests/integration/__tests__/__snapshots__/log-level.js.snap index 9fe2f774a..211202bb6 100644 --- a/tests/integration/__tests__/__snapshots__/log-level.js.snap +++ b/tests/integration/__tests__/__snapshots__/log-level.js.snap @@ -14,4 +14,11 @@ exports[`--write with --log-level=silent doesn't log filenames (write) 1`] = ` ] `; -exports[`Should use default level logger to log \`--log-level\` error (stderr) 1`] = `"[error] Invalid --log-level value. Expected "debug", "error", "log", "silent" or "warn", but received "a-unknown-log-level"."`; +exports[`Should use default level logger to log \`--log-level\` error (stderr) 1`] = ` +"[error] Invalid --log-level value. Expected one of the following values, but received "a-unknown-log-level". +[error] - "debug" +[error] - "error" +[error] - "log" +[error] - "silent" +[error] - "warn"" +`; diff --git a/yarn.lock b/yarn.lock index ca755b320..e8c9be385 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2495,7 +2495,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:5.3.0, chalk@npm:^5.2.0": +"chalk@npm:5.3.0, chalk@npm:^5.2.0, chalk@npm:^5.3.0": version: 5.3.0 resolution: "chalk@npm:5.3.0" checksum: 623922e077b7d1e9dedaea6f8b9e9352921f8ae3afe739132e0e00c275971bdd331268183b2628cf4ab1727c45ea1f28d7e24ac23ce1db1eb653c414ca8a5a80 @@ -5691,20 +5691,13 @@ __metadata: languageName: node linkType: hard -"leven@npm:4.0.0": +"leven@npm:4.0.0, leven@npm:^4.0.0": version: 4.0.0 resolution: "leven@npm:4.0.0" checksum: d70b9fef4cca487a38021bb173a5cae98d39b1c7f4a5b2439763bd89df8e389f178a3c941b6fc3fab1582f5052b5e8c91353d9607799a2ad3841e7ea22f9720f languageName: node linkType: hard -"leven@npm:^2.1.0": - version: 2.1.0 - resolution: "leven@npm:2.1.0" - checksum: f7b4a01b15c0ee2f92a04c0367ea025d10992b044df6f0d4ee1a845d4a488b343e99799e2f31212d72a2b1dea67124f57c1bb1b4561540df45190e44b5b8b394 - languageName: node - linkType: hard - "leven@npm:^3.1.0": version: 3.1.0 resolution: "leven@npm:3.1.0" @@ -7002,7 +6995,7 @@ __metadata: typescript: 5.1.6 unicode-regex: 4.0.0 unified: 9.2.2 - vnopts: 1.0.2 + vnopts: 2.0.0 wcwidth: 1.0.1 yaml-unist-parser: 2.0.1 bin: @@ -8171,7 +8164,7 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.8.1, tslib@npm:^1.9.3": +"tslib@npm:^1.8.1": version: 1.14.1 resolution: "tslib@npm:1.14.1" checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd @@ -8522,14 +8515,14 @@ __metadata: languageName: node linkType: hard -"vnopts@npm:1.0.2": - version: 1.0.2 - resolution: "vnopts@npm:1.0.2" +"vnopts@npm:2.0.0": + version: 2.0.0 + resolution: "vnopts@npm:2.0.0" dependencies: - chalk: ^2.4.1 - leven: ^2.1.0 - tslib: ^1.9.3 - checksum: a97865b852df90a755f2d18dcc12f08be185150b3961c7d5f4f952df392cdbbf97ac2ccc8939db744148feccb55ebfa5b6a5e83c88107500e3cae2d9e8ba7f68 + chalk: ^5.3.0 + leven: ^4.0.0 + tslib: ^2.6.0 + checksum: 3abf34620c6d5f99ed9e9b461feb7f263724f3ab09ac2066d55aa9eea8f13267f9f54205ed032a9a84bac49510370935db9f611b341587989969a8f25b543901 languageName: node linkType: hard