From a63ed722a64040d2be90f36e45f1f5060a9fe28e Mon Sep 17 00:00:00 2001 From: Milos Djermanovic Date: Thu, 9 May 2024 10:26:05 +0200 Subject: [PATCH] refactor: Use `node:` protocol for built-in Node.js modules (#18434) --- .eslintrc.js | 2 +- Makefile.js | 8 ++++---- bin/eslint.js | 2 +- docs/.eleventy.js | 2 +- docs/src/_data/site.js | 4 ++-- docs/tools/validate-links.js | 2 +- eslint.config.js | 2 +- lib/cli-engine/cli-engine.js | 4 ++-- lib/cli-engine/file-enumerator.js | 4 ++-- lib/cli-engine/lint-result-cache.js | 4 ++-- lib/cli-engine/load-rules.js | 4 ++-- lib/cli.js | 6 +++--- lib/eslint/eslint-helpers.js | 4 ++-- lib/eslint/eslint.js | 8 ++++---- lib/eslint/legacy-eslint.js | 6 +++--- .../code-path-analysis/code-path-analyzer.js | 2 +- lib/linter/code-path-analysis/fork-context.js | 2 +- lib/linter/linter.js | 2 +- lib/linter/report-translator.js | 2 +- lib/rule-tester/rule-tester.js | 6 +++--- lib/shared/runtime-info.js | 4 ++-- lib/source-code/token-store/index.js | 2 +- packages/eslint-config-eslint/nodejs.js | 3 ++- tests/_utils/test-lazy-loading-rules.js | 4 ++-- tests/bin/eslint.js | 6 +++--- tests/lib/cli-engine/cli-engine.js | 12 ++++++------ tests/lib/cli-engine/file-enumerator.js | 6 +++--- tests/lib/cli-engine/lint-result-cache.js | 4 ++-- tests/lib/cli.js | 8 ++++---- tests/lib/eslint/eslint.js | 18 +++++++++--------- tests/lib/eslint/legacy-eslint.js | 16 ++++++++-------- .../code-path-analysis/code-path-analyzer.js | 6 +++--- .../lib/linter/code-path-analysis/code-path.js | 2 +- tests/lib/linter/node-event-generator.js | 2 +- tests/lib/rule-tester/no-test-runners.js | 2 +- tests/lib/rule-tester/rule-tester.js | 4 ++-- tests/lib/rules/array-bracket-spacing.js | 2 +- tests/lib/rules/comma-dangle.js | 2 +- tests/lib/rules/indent-legacy.js | 4 ++-- tests/lib/rules/indent.js | 4 ++-- tests/lib/rules/object-curly-newline.js | 2 +- tests/lib/rules/object-curly-spacing.js | 2 +- tests/lib/rules/utils/ast-utils.js | 2 +- tests/lib/shared/runtime-info.js | 2 +- tests/lib/source-code/source-code.js | 4 ++-- tests/tools/check-rule-examples.js | 6 +++--- tools/check-emfile-handling.js | 8 ++++---- tools/check-rule-examples.js | 2 +- tools/code-sample-minimizer.js | 2 +- tools/eslint-fuzzer.js | 2 +- tools/fetch-docs-links.js | 4 ++-- tools/internal-rules/index.js | 4 ++-- .../internal-testers/event-generator-tester.js | 2 +- tools/update-eslint-all.js | 2 +- tools/update-readme.js | 2 +- wdio.conf.js | 2 +- webpack.config.js | 8 ++++++++ 57 files changed, 126 insertions(+), 117 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index c51fc72691a..df8d4a83d35 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -16,7 +16,7 @@ "use strict"; -const path = require("path"); +const path = require("node:path"); const INTERNAL_FILES = { CLI_ENGINE_PATTERN: "lib/cli-engine/**/*", diff --git a/Makefile.js b/Makefile.js index 6d37023f79a..9641d8e5697 100644 --- a/Makefile.js +++ b/Makefile.js @@ -12,12 +12,12 @@ const checker = require("npm-license"), ReleaseOps = require("eslint-release"), - fs = require("fs"), + fs = require("node:fs"), glob = require("glob"), marked = require("marked"), matter = require("gray-matter"), - os = require("os"), - path = require("path"), + os = require("node:os"), + path = require("node:path"), semver = require("semver"), ejs = require("ejs"), loadPerf = require("load-perf"), @@ -885,7 +885,7 @@ target.checkRuleFiles = function() { }; target.checkRuleExamples = function() { - const { execFileSync } = require("child_process"); + const { execFileSync } = require("node:child_process"); // We don't need the stack trace of execFileSync if the command fails. try { diff --git a/bin/eslint.js b/bin/eslint.js index 5f8eaa9b451..fa3960e23b7 100755 --- a/bin/eslint.js +++ b/bin/eslint.js @@ -64,7 +64,7 @@ function readStdin() { function getErrorMessage(error) { // Lazy loading because this is used only if an error happened. - const util = require("util"); + const util = require("node:util"); // Foolproof -- third-party module might throw non-object. if (typeof error !== "object" || error === null) { diff --git a/docs/.eleventy.js b/docs/.eleventy.js index 629f98bb585..c526abae509 100644 --- a/docs/.eleventy.js +++ b/docs/.eleventy.js @@ -7,7 +7,7 @@ const pluginTOC = require("eleventy-plugin-nesting-toc"); const markdownItAnchor = require("markdown-it-anchor"); const markdownItContainer = require("markdown-it-container"); const Image = require("@11ty/eleventy-img"); -const path = require("path"); +const path = require("node:path"); const { slug } = require("github-slugger"); const yaml = require("js-yaml"); const { highlighter, lineNumberPlugin } = require("./src/_plugins/md-syntax-highlighter"); diff --git a/docs/src/_data/site.js b/docs/src/_data/site.js index 62f17da93dd..95cd46aac54 100644 --- a/docs/src/_data/site.js +++ b/docs/src/_data/site.js @@ -9,8 +9,8 @@ // Requirements //----------------------------------------------------------------------------- -const path = require("path"); -const fs = require("fs"); +const path = require("node:path"); +const fs = require("node:fs"); const yaml = require("js-yaml"); //----------------------------------------------------------------------------- diff --git a/docs/tools/validate-links.js b/docs/tools/validate-links.js index 091dd2fe640..1ca0dd27186 100644 --- a/docs/tools/validate-links.js +++ b/docs/tools/validate-links.js @@ -1,6 +1,6 @@ "use strict"; -const path = require("path"); +const path = require("node:path"); const TapRender = require("@munter/tap-render"); const spot = require("tap-spot"); const hyperlink = require("hyperlink"); diff --git a/eslint.config.js b/eslint.config.js index 2d7b781f661..0e862e343e1 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -25,7 +25,7 @@ // Requirements //----------------------------------------------------------------------------- -const path = require("path"); +const path = require("node:path"); const internalPlugin = require("eslint-plugin-internal-rules"); const eslintPluginRulesRecommendedConfig = require("eslint-plugin-eslint-plugin/configs/rules-recommended"); const eslintPluginTestsRecommendedConfig = require("eslint-plugin-eslint-plugin/configs/tests-recommended"); diff --git a/lib/cli-engine/cli-engine.js b/lib/cli-engine/cli-engine.js index 4fe54843e88..43fcc73d029 100644 --- a/lib/cli-engine/cli-engine.js +++ b/lib/cli-engine/cli-engine.js @@ -15,8 +15,8 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"); -const path = require("path"); +const fs = require("node:fs"); +const path = require("node:path"); const defaultOptions = require("../../conf/default-cli-options"); const pkg = require("../../package.json"); diff --git a/lib/cli-engine/file-enumerator.js b/lib/cli-engine/file-enumerator.js index 5dff8d09ccd..da5d1039da7 100644 --- a/lib/cli-engine/file-enumerator.js +++ b/lib/cli-engine/file-enumerator.js @@ -34,8 +34,8 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"); -const path = require("path"); +const fs = require("node:fs"); +const path = require("node:path"); const getGlobParent = require("glob-parent"); const isGlob = require("is-glob"); const escapeRegExp = require("escape-string-regexp"); diff --git a/lib/cli-engine/lint-result-cache.js b/lib/cli-engine/lint-result-cache.js index fcdf4ca1e5d..75e770f4b28 100644 --- a/lib/cli-engine/lint-result-cache.js +++ b/lib/cli-engine/lint-result-cache.js @@ -8,8 +8,8 @@ // Requirements //----------------------------------------------------------------------------- -const assert = require("assert"); -const fs = require("fs"); +const assert = require("node:assert"); +const fs = require("node:fs"); const fileEntryCache = require("file-entry-cache"); const stringify = require("json-stable-stringify-without-jsonify"); const pkg = require("../../package.json"); diff --git a/lib/cli-engine/load-rules.js b/lib/cli-engine/load-rules.js index 81bab63fab6..a58f954e868 100644 --- a/lib/cli-engine/load-rules.js +++ b/lib/cli-engine/load-rules.js @@ -9,8 +9,8 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"), - path = require("path"); +const fs = require("node:fs"), + path = require("node:path"); const rulesDirCache = {}; diff --git a/lib/cli.js b/lib/cli.js index 4a60d457a72..d07f81b28f2 100644 --- a/lib/cli.js +++ b/lib/cli.js @@ -15,9 +15,9 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"), - path = require("path"), - { promisify } = require("util"), +const fs = require("node:fs"), + path = require("node:path"), + { promisify } = require("node:util"), { LegacyESLint } = require("./eslint"), { ESLint, shouldUseFlatConfig, locateConfigFileToUse } = require("./eslint/eslint"), createCLIOptions = require("./options"), diff --git a/lib/eslint/eslint-helpers.js b/lib/eslint/eslint-helpers.js index 97c8c99dd8b..65dfbfb83f4 100644 --- a/lib/eslint/eslint-helpers.js +++ b/lib/eslint/eslint-helpers.js @@ -9,8 +9,8 @@ // Requirements //----------------------------------------------------------------------------- -const path = require("path"); -const fs = require("fs"); +const path = require("node:path"); +const fs = require("node:fs"); const fsp = fs.promises; const isGlob = require("is-glob"); const hash = require("../cli-engine/hash"); diff --git a/lib/eslint/eslint.js b/lib/eslint/eslint.js index 900353385cf..29fabca6a34 100644 --- a/lib/eslint/eslint.js +++ b/lib/eslint/eslint.js @@ -9,9 +9,9 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs/promises"); -const { existsSync } = require("fs"); -const path = require("path"); +const fs = require("node:fs/promises"); +const { existsSync } = require("node:fs"); +const path = require("node:path"); const findUp = require("find-up"); const { version } = require("../../package.json"); const { Linter } = require("../linter"); @@ -38,7 +38,7 @@ const { processOptions } = require("./eslint-helpers"); -const { pathToFileURL } = require("url"); +const { pathToFileURL } = require("node:url"); const { FlatConfigArray } = require("../config/flat-config-array"); const LintResultCache = require("../cli-engine/lint-result-cache"); const { Retrier } = require("@humanwhocodes/retry"); diff --git a/lib/eslint/legacy-eslint.js b/lib/eslint/legacy-eslint.js index 9c86163ef63..a781fe9c86c 100644 --- a/lib/eslint/legacy-eslint.js +++ b/lib/eslint/legacy-eslint.js @@ -10,9 +10,9 @@ // Requirements //------------------------------------------------------------------------------ -const path = require("path"); -const fs = require("fs"); -const { promisify } = require("util"); +const path = require("node:path"); +const fs = require("node:fs"); +const { promisify } = require("node:util"); const { CLIEngine, getCLIEngineInternalSlots } = require("../cli-engine/cli-engine"); const BuiltinRules = require("../rules"); const { diff --git a/lib/linter/code-path-analysis/code-path-analyzer.js b/lib/linter/code-path-analysis/code-path-analyzer.js index f5f26d0f470..16e9d18aa64 100644 --- a/lib/linter/code-path-analysis/code-path-analyzer.js +++ b/lib/linter/code-path-analysis/code-path-analyzer.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"), +const assert = require("node:assert"), { breakableTypePattern } = require("../../shared/ast-utils"), CodePath = require("./code-path"), CodePathSegment = require("./code-path-segment"), diff --git a/lib/linter/code-path-analysis/fork-context.js b/lib/linter/code-path-analysis/fork-context.js index 695d3bfa7e2..f5783b0d02c 100644 --- a/lib/linter/code-path-analysis/fork-context.js +++ b/lib/linter/code-path-analysis/fork-context.js @@ -13,7 +13,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"), +const assert = require("node:assert"), CodePathSegment = require("./code-path-segment"); //------------------------------------------------------------------------------ diff --git a/lib/linter/linter.js b/lib/linter/linter.js index 9154fd703e5..a1e5bf91e28 100644 --- a/lib/linter/linter.js +++ b/lib/linter/linter.js @@ -11,7 +11,7 @@ //------------------------------------------------------------------------------ const - path = require("path"), + path = require("node:path"), eslintScope = require("eslint-scope"), evk = require("eslint-visitor-keys"), espree = require("espree"), diff --git a/lib/linter/report-translator.js b/lib/linter/report-translator.js index c4a159a993e..4a44babe1d9 100644 --- a/lib/linter/report-translator.js +++ b/lib/linter/report-translator.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); +const assert = require("node:assert"); const ruleFixer = require("./rule-fixer"); const { interpolate } = require("./interpolate"); diff --git a/lib/rule-tester/rule-tester.js b/lib/rule-tester/rule-tester.js index f965fbbe472..a22888c83d3 100644 --- a/lib/rule-tester/rule-tester.js +++ b/lib/rule-tester/rule-tester.js @@ -11,9 +11,9 @@ //------------------------------------------------------------------------------ const - assert = require("assert"), - util = require("util"), - path = require("path"), + assert = require("node:assert"), + util = require("node:util"), + path = require("node:path"), equal = require("fast-deep-equal"), Traverser = require("../shared/traverser"), { getRuleOptionsSchema } = require("../config/flat-config-helpers"), diff --git a/lib/shared/runtime-info.js b/lib/shared/runtime-info.js index e172e5b3572..29de6fc8d84 100644 --- a/lib/shared/runtime-info.js +++ b/lib/shared/runtime-info.js @@ -9,9 +9,9 @@ // Requirements //------------------------------------------------------------------------------ -const path = require("path"); +const path = require("node:path"); const spawn = require("cross-spawn"); -const os = require("os"); +const os = require("node:os"); const log = require("../shared/logging"); const packageJson = require("../../package.json"); diff --git a/lib/source-code/token-store/index.js b/lib/source-code/token-store/index.js index d222c87bbf4..8f8d6de769f 100644 --- a/lib/source-code/token-store/index.js +++ b/lib/source-code/token-store/index.js @@ -8,7 +8,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); +const assert = require("node:assert"); const { isCommentToken } = require("@eslint-community/eslint-utils"); const cursors = require("./cursors"); const ForwardTokenCursor = require("./forward-token-cursor"); diff --git a/packages/eslint-config-eslint/nodejs.js b/packages/eslint-config-eslint/nodejs.js index d61c1ee7600..64102c313a5 100644 --- a/packages/eslint-config-eslint/nodejs.js +++ b/packages/eslint-config-eslint/nodejs.js @@ -5,7 +5,8 @@ const recommendedModuleConfig = require("eslint-plugin-n/configs/recommended-mod const sharedRules = { "n/callback-return": ["error", ["cb", "callback", "next"]], - "n/handle-callback-err": ["error", "err"] + "n/handle-callback-err": ["error", "err"], + "n/prefer-node-protocol": "error" }; const cjsConfigs = [ diff --git a/tests/_utils/test-lazy-loading-rules.js b/tests/_utils/test-lazy-loading-rules.js index 66a4a661376..6b51cf862af 100644 --- a/tests/_utils/test-lazy-loading-rules.js +++ b/tests/_utils/test-lazy-loading-rules.js @@ -11,8 +11,8 @@ "use strict"; -const path = require("path"); -const assert = require("assert"); +const path = require("node:path"); +const assert = require("node:assert"); const { addHook } = require("pirates"); const { diff --git a/tests/bin/eslint.js b/tests/bin/eslint.js index 44e5bfb22ed..3197506ff8b 100644 --- a/tests/bin/eslint.js +++ b/tests/bin/eslint.js @@ -9,10 +9,10 @@ // Requirements //----------------------------------------------------------------------------- -const childProcess = require("child_process"); -const fs = require("fs"); +const childProcess = require("node:child_process"); +const fs = require("node:fs"); const assert = require("chai").assert; -const path = require("path"); +const path = require("node:path"); //------------------------------------------------------------------------------ // Data diff --git a/tests/lib/cli-engine/cli-engine.js b/tests/lib/cli-engine/cli-engine.js index f7b30083dca..4491b428cc4 100644 --- a/tests/lib/cli-engine/cli-engine.js +++ b/tests/lib/cli-engine/cli-engine.js @@ -10,11 +10,11 @@ //------------------------------------------------------------------------------ const assert = require("chai").assert, - path = require("path"), + path = require("node:path"), sinon = require("sinon"), shell = require("shelljs"), - fs = require("fs"), - os = require("os"), + fs = require("node:fs"), + os = require("node:os"), hash = require("../../../lib/cli-engine/hash"), { Legacy: { @@ -787,7 +787,7 @@ describe("CLIEngine", () => { // @scope for @scope/eslint-plugin describe("(plugin shorthand)", () => { - const Module = require("module"); + const Module = require("node:module"); let originalFindPath = null; /* eslint-disable no-underscore-dangle -- Private Node API overriding */ @@ -5123,7 +5123,7 @@ describe("CLIEngine", () => { writeFileSync() {} }, localCLIEngine = proxyquire("../../../lib/cli-engine/cli-engine", { - fs: fakeFS + "node:fs": fakeFS }).CLIEngine, report = { results: [ @@ -5153,7 +5153,7 @@ describe("CLIEngine", () => { writeFileSync() {} }, localCLIEngine = proxyquire("../../../lib/cli-engine/cli-engine", { - fs: fakeFS + "node:fs": fakeFS }).CLIEngine, report = { results: [ diff --git a/tests/lib/cli-engine/file-enumerator.js b/tests/lib/cli-engine/file-enumerator.js index 88dfce6bd7e..0cf78aa7425 100644 --- a/tests/lib/cli-engine/file-enumerator.js +++ b/tests/lib/cli-engine/file-enumerator.js @@ -8,9 +8,9 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"); -const path = require("path"); -const os = require("os"); +const fs = require("node:fs"); +const path = require("node:path"); +const os = require("node:os"); const { assert } = require("chai"); const sh = require("shelljs"); const sinon = require("sinon"); diff --git a/tests/lib/cli-engine/lint-result-cache.js b/tests/lib/cli-engine/lint-result-cache.js index 41c72308f42..04dd49ca84d 100644 --- a/tests/lib/cli-engine/lint-result-cache.js +++ b/tests/lib/cli-engine/lint-result-cache.js @@ -10,8 +10,8 @@ const assert = require("chai").assert, { CLIEngine } = require("../../../lib/cli-engine"), - fs = require("fs"), - path = require("path"), + fs = require("node:fs"), + path = require("node:path"), proxyquire = require("proxyquire"), sinon = require("sinon"); diff --git a/tests/lib/cli.js b/tests/lib/cli.js index 4c91be3665b..3fcf6fa66a2 100644 --- a/tests/lib/cli.js +++ b/tests/lib/cli.js @@ -15,13 +15,13 @@ //------------------------------------------------------------------------------ const assert = require("chai").assert, - stdAssert = require("assert"), + stdAssert = require("node:assert"), { ESLint, LegacyESLint } = require("../../lib/eslint"), BuiltinRules = require("../../lib/rules"), - path = require("path"), + path = require("node:path"), sinon = require("sinon"), - fs = require("fs"), - os = require("os"), + fs = require("node:fs"), + os = require("node:os"), sh = require("shelljs"); const proxyquire = require("proxyquire").noCallThru().noPreserveCache(); diff --git a/tests/lib/eslint/eslint.js b/tests/lib/eslint/eslint.js index 53a43fe19d9..708454fb248 100644 --- a/tests/lib/eslint/eslint.js +++ b/tests/lib/eslint/eslint.js @@ -10,12 +10,12 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); -const util = require("util"); -const fs = require("fs"); -const fsp = require("fs/promises"); -const os = require("os"); -const path = require("path"); +const assert = require("node:assert"); +const util = require("node:util"); +const fs = require("node:fs"); +const fsp = require("node:fs/promises"); +const os = require("node:os"); +const path = require("node:path"); const timers = require("node:timers/promises"); const escapeStringRegExp = require("escape-string-regexp"); const fCache = require("file-entry-cache"); @@ -1083,7 +1083,7 @@ describe("ESLint", () => { ); const { ESLint: LocalESLint } = proxyquire("../../../lib/eslint/eslint", { - "fs/promises": { + "node:fs/promises": { readFile: spy, "@noCallThru": false // allows calling other methods of `fs/promises` } @@ -5570,7 +5570,7 @@ describe("ESLint", () => { it("should call fs.writeFile() for each result with output", async () => { const spy = sinon.spy(() => Promise.resolve()); const { ESLint: localESLint } = proxyquire("../../../lib/eslint/eslint", { - "fs/promises": { + "node:fs/promises": { writeFile: spy } }); @@ -5596,7 +5596,7 @@ describe("ESLint", () => { it("should call fs.writeFile() for each result with output and not at all for a result without output", async () => { const spy = sinon.spy(() => Promise.resolve()); const { ESLint: localESLint } = proxyquire("../../../lib/eslint/eslint", { - "fs/promises": { + "node:fs/promises": { writeFile: spy } }); diff --git a/tests/lib/eslint/legacy-eslint.js b/tests/lib/eslint/legacy-eslint.js index 81a08ff8c5f..dd2dbdfc5c0 100644 --- a/tests/lib/eslint/legacy-eslint.js +++ b/tests/lib/eslint/legacy-eslint.js @@ -10,10 +10,10 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); -const fs = require("fs"); -const os = require("os"); -const path = require("path"); +const assert = require("node:assert"); +const fs = require("node:fs"); +const os = require("node:os"); +const path = require("node:path"); const escapeStringRegExp = require("escape-string-regexp"); const fCache = require("file-entry-cache"); const sinon = require("sinon"); @@ -27,7 +27,7 @@ const { const hash = require("../../../lib/cli-engine/hash"); const { unIndent, createCustomTeardown } = require("../../_utils"); const coreRules = require("../../../lib/rules"); -const childProcess = require("child_process"); +const childProcess = require("node:child_process"); //------------------------------------------------------------------------------ // Tests @@ -912,7 +912,7 @@ describe("LegacyESLint", () => { }); describe('plugin shorthand notation ("@scope" for "@scope/eslint-plugin")', () => { - const Module = require("module"); + const Module = require("node:module"); let originalFindPath = null; /* eslint-disable no-underscore-dangle -- Override Node API */ @@ -5836,7 +5836,7 @@ describe("LegacyESLint", () => { }; const spy = fakeFS.writeFile; const { LegacyESLint: localESLint } = proxyquire("../../../lib/eslint/legacy-eslint", { - fs: fakeFS + "node:fs": fakeFS }); const results = [ @@ -5863,7 +5863,7 @@ describe("LegacyESLint", () => { }; const spy = fakeFS.writeFile; const { LegacyESLint: localESLint } = proxyquire("../../../lib/eslint/legacy-eslint", { - fs: fakeFS + "node:fs": fakeFS }); const results = [ { diff --git a/tests/lib/linter/code-path-analysis/code-path-analyzer.js b/tests/lib/linter/code-path-analysis/code-path-analyzer.js index c85ef35638b..dde4bef4198 100644 --- a/tests/lib/linter/code-path-analysis/code-path-analyzer.js +++ b/tests/lib/linter/code-path-analysis/code-path-analyzer.js @@ -9,9 +9,9 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"), - fs = require("fs"), - path = require("path"), +const assert = require("node:assert"), + fs = require("node:fs"), + path = require("node:path"), vk = require("eslint-visitor-keys"), { Linter } = require("../../../../lib/linter"), EventGeneratorTester = require("../../../../tools/internal-testers/event-generator-tester"), diff --git a/tests/lib/linter/code-path-analysis/code-path.js b/tests/lib/linter/code-path-analysis/code-path.js index f7613cd99ee..aefc913aa45 100644 --- a/tests/lib/linter/code-path-analysis/code-path.js +++ b/tests/lib/linter/code-path-analysis/code-path.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"), +const assert = require("node:assert"), { Linter } = require("../../../../lib/linter"); const linter = new Linter({ configType: "eslintrc" }); diff --git a/tests/lib/linter/node-event-generator.js b/tests/lib/linter/node-event-generator.js index 2719bf30e30..004ba64452e 100644 --- a/tests/lib/linter/node-event-generator.js +++ b/tests/lib/linter/node-event-generator.js @@ -8,7 +8,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"), +const assert = require("node:assert"), sinon = require("sinon"), espree = require("espree"), vk = require("eslint-visitor-keys"), diff --git a/tests/lib/rule-tester/no-test-runners.js b/tests/lib/rule-tester/no-test-runners.js index 8e5785cef98..4c59dd0ee15 100644 --- a/tests/lib/rule-tester/no-test-runners.js +++ b/tests/lib/rule-tester/no-test-runners.js @@ -5,7 +5,7 @@ */ "use strict"; -const assert = require("assert"); +const assert = require("node:assert"); const { RuleTester } = require("../../../lib/rule-tester"); const tmpIt = it; const tmpDescribe = describe; diff --git a/tests/lib/rule-tester/rule-tester.js b/tests/lib/rule-tester/rule-tester.js index 4cb34b96dfe..389092673fc 100644 --- a/tests/lib/rule-tester/rule-tester.js +++ b/tests/lib/rule-tester/rule-tester.js @@ -8,10 +8,10 @@ // Requirements //------------------------------------------------------------------------------ const sinon = require("sinon"), - EventEmitter = require("events"), + EventEmitter = require("node:events"), { RuleTester } = require("../../../lib/rule-tester"), assert = require("chai").assert, - nodeAssert = require("assert"); + nodeAssert = require("node:assert"); //----------------------------------------------------------------------------- // Helpers diff --git a/tests/lib/rules/array-bracket-spacing.js b/tests/lib/rules/array-bracket-spacing.js index b93595fbe1e..003e7a6f2dd 100644 --- a/tests/lib/rules/array-bracket-spacing.js +++ b/tests/lib/rules/array-bracket-spacing.js @@ -8,7 +8,7 @@ // Requirements //------------------------------------------------------------------------------ -const path = require("path"), +const path = require("node:path"), rule = require("../../../lib/rules/array-bracket-spacing"), RuleTester = require("../../../lib/rule-tester/rule-tester"); diff --git a/tests/lib/rules/comma-dangle.js b/tests/lib/rules/comma-dangle.js index 19c963b3296..9f0140f669c 100644 --- a/tests/lib/rules/comma-dangle.js +++ b/tests/lib/rules/comma-dangle.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const path = require("path"), +const path = require("node:path"), { unIndent } = require("../../_utils"), rule = require("../../../lib/rules/comma-dangle"), RuleTester = require("../../../lib/rule-tester/rule-tester"); diff --git a/tests/lib/rules/indent-legacy.js b/tests/lib/rules/indent-legacy.js index 7a1deaa1c1f..6d3ec2eea8b 100644 --- a/tests/lib/rules/indent-legacy.js +++ b/tests/lib/rules/indent-legacy.js @@ -11,8 +11,8 @@ const rule = require("../../../lib/rules/indent-legacy"), RuleTester = require("../../../lib/rule-tester/rule-tester"); -const fs = require("fs"); -const path = require("path"); +const fs = require("node:fs"); +const path = require("node:path"); //------------------------------------------------------------------------------ // Tests diff --git a/tests/lib/rules/indent.js b/tests/lib/rules/indent.js index 044772945e7..8afbcc0ec9f 100644 --- a/tests/lib/rules/indent.js +++ b/tests/lib/rules/indent.js @@ -11,8 +11,8 @@ const rule = require("../../../lib/rules/indent"), RuleTester = require("../../../lib/rule-tester/rule-tester"); -const fs = require("fs"); -const path = require("path"); +const fs = require("node:fs"); +const path = require("node:path"); //------------------------------------------------------------------------------ // Helpers diff --git a/tests/lib/rules/object-curly-newline.js b/tests/lib/rules/object-curly-newline.js index 28f5306a7b4..fc249d99436 100644 --- a/tests/lib/rules/object-curly-newline.js +++ b/tests/lib/rules/object-curly-newline.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const resolvePath = require("path").resolve, +const resolvePath = require("node:path").resolve, rule = require("../../../lib/rules/object-curly-newline"), RuleTester = require("../../../lib/rule-tester/rule-tester"); diff --git a/tests/lib/rules/object-curly-spacing.js b/tests/lib/rules/object-curly-spacing.js index c0755dd62e2..44159555854 100644 --- a/tests/lib/rules/object-curly-spacing.js +++ b/tests/lib/rules/object-curly-spacing.js @@ -8,7 +8,7 @@ // Requirements //------------------------------------------------------------------------------ -const resolvePath = require("path").resolve, +const resolvePath = require("node:path").resolve, rule = require("../../../lib/rules/object-curly-spacing"), RuleTester = require("../../../lib/rule-tester/rule-tester"); diff --git a/tests/lib/rules/utils/ast-utils.js b/tests/lib/rules/utils/ast-utils.js index 7700f2ce7e9..88c1e4a7b6c 100644 --- a/tests/lib/rules/utils/ast-utils.js +++ b/tests/lib/rules/utils/ast-utils.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const assert = require("chai").assert, - util = require("util"), + util = require("node:util"), espree = require("espree"), astUtils = require("../../../../lib/rules/utils/ast-utils"), { Linter } = require("../../../../lib/linter"), diff --git a/tests/lib/shared/runtime-info.js b/tests/lib/shared/runtime-info.js index ac549c0d001..d7334eff20b 100644 --- a/tests/lib/shared/runtime-info.js +++ b/tests/lib/shared/runtime-info.js @@ -12,7 +12,7 @@ const assert = require("chai").assert; const sinon = require("sinon"); const spawn = require("cross-spawn"); -const os = require("os"); +const os = require("node:os"); const { unIndent } = require("../../_utils"); const RuntimeInfo = require("../../../lib/shared/runtime-info"); const log = require("../../../lib/shared/logging"); diff --git a/tests/lib/source-code/source-code.js b/tests/lib/source-code/source-code.js index 555acfadca7..37913288646 100644 --- a/tests/lib/source-code/source-code.js +++ b/tests/lib/source-code/source-code.js @@ -8,8 +8,8 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"), - path = require("path"), +const fs = require("node:fs"), + path = require("node:path"), assert = require("chai").assert, espree = require("espree"), eslintScope = require("eslint-scope"), diff --git a/tests/tools/check-rule-examples.js b/tests/tools/check-rule-examples.js index 442d0bedc1f..04d0331b4ca 100644 --- a/tests/tools/check-rule-examples.js +++ b/tests/tools/check-rule-examples.js @@ -4,9 +4,9 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); -const { execFile } = require("child_process"); -const { promisify } = require("util"); +const assert = require("node:assert"); +const { execFile } = require("node:child_process"); +const { promisify } = require("node:util"); const { LATEST_ECMA_VERSION } = require("../../conf/ecma-version"); //------------------------------------------------------------------------------ diff --git a/tools/check-emfile-handling.js b/tools/check-emfile-handling.js index be0fd262ebc..a7ed695f3de 100644 --- a/tools/check-emfile-handling.js +++ b/tools/check-emfile-handling.js @@ -9,10 +9,10 @@ // Requirements //------------------------------------------------------------------------------ -const fs = require("fs"); -const { readFile } = require("fs/promises"); -const { execSync } = require("child_process"); -const os = require("os"); +const fs = require("node:fs"); +const { readFile } = require("node:fs/promises"); +const { execSync } = require("node:child_process"); +const os = require("node:os"); //------------------------------------------------------------------------------ // Helpers diff --git a/tools/check-rule-examples.js b/tools/check-rule-examples.js index 224a8c2b42b..69708e758d4 100644 --- a/tools/check-rule-examples.js +++ b/tools/check-rule-examples.js @@ -5,7 +5,7 @@ //------------------------------------------------------------------------------ const { parse } = require("espree"); -const { readFile } = require("fs").promises; +const { readFile } = require("node:fs").promises; const { glob } = require("glob"); const matter = require("gray-matter"); const markdownIt = require("markdown-it"); diff --git a/tools/code-sample-minimizer.js b/tools/code-sample-minimizer.js index e1eb4995cc0..4b354680fa2 100644 --- a/tools/code-sample-minimizer.js +++ b/tools/code-sample-minimizer.js @@ -3,7 +3,7 @@ const evk = require("eslint-visitor-keys"); const recast = require("recast"); const espree = require("espree"); -const assert = require("assert"); +const assert = require("node:assert"); /** * Determines whether an AST node could be an expression, based on the type diff --git a/tools/eslint-fuzzer.js b/tools/eslint-fuzzer.js index d951ad3377c..cb49a7ebd6a 100644 --- a/tools/eslint-fuzzer.js +++ b/tools/eslint-fuzzer.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); +const assert = require("node:assert"); const eslump = require("eslump"); const espree = require("espree"); const SourceCodeFixer = require("../lib/linter/source-code-fixer"); diff --git a/tools/fetch-docs-links.js b/tools/fetch-docs-links.js index 9cdd05aab1a..930a585cbf6 100644 --- a/tools/fetch-docs-links.js +++ b/tools/fetch-docs-links.js @@ -27,8 +27,8 @@ const metascraper = require("metascraper")([ require("metascraper-description")() ]); const got = require("got"); -const path = require("path"); -const fs = require("fs").promises; +const path = require("node:path"); +const fs = require("node:fs").promises; const glob = require("fast-glob"); //----------------------------------------------------------------------------- diff --git a/tools/internal-rules/index.js b/tools/internal-rules/index.js index a3a3cd19971..1b40f7763df 100644 --- a/tools/internal-rules/index.js +++ b/tools/internal-rules/index.js @@ -1,7 +1,7 @@ "use strict"; -const fs = require("fs"); -const path = require("path"); +const fs = require("node:fs"); +const path = require("node:path"); module.exports = { rules: Object.assign( diff --git a/tools/internal-testers/event-generator-tester.js b/tools/internal-testers/event-generator-tester.js index 46cbafb0ffe..454c221e56a 100644 --- a/tools/internal-testers/event-generator-tester.js +++ b/tools/internal-testers/event-generator-tester.js @@ -10,7 +10,7 @@ // Requirements //------------------------------------------------------------------------------ -const assert = require("assert"); +const assert = require("node:assert"); //------------------------------------------------------------------------------ // Public Interface diff --git a/tools/update-eslint-all.js b/tools/update-eslint-all.js index f6a802de1b7..e6cf4af1638 100644 --- a/tools/update-eslint-all.js +++ b/tools/update-eslint-all.js @@ -9,7 +9,7 @@ // Requirements //----------------------------------------------------------------------------- -const fs = require("fs"); +const fs = require("node:fs"); const builtInRules = require("../lib/rules"); //------------------------------------------------------------------------------ diff --git a/tools/update-readme.js b/tools/update-readme.js index 167db70b379..8918ecbc1cc 100644 --- a/tools/update-readme.js +++ b/tools/update-readme.js @@ -13,7 +13,7 @@ // Requirements //----------------------------------------------------------------------------- -const fs = require("fs"); +const fs = require("node:fs"); const { stripIndents } = require("common-tags"); const ejs = require("ejs"); const got = require("got"); diff --git a/wdio.conf.js b/wdio.conf.js index f32d757133e..8703052e88f 100644 --- a/wdio.conf.js +++ b/wdio.conf.js @@ -1,6 +1,6 @@ "use strict"; -const path = require("path"); +const path = require("node:path"); const commonjs = require("vite-plugin-commonjs").default; exports.config = { diff --git a/webpack.config.js b/webpack.config.js index a22c99bf861..fb426465ef1 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,4 +1,6 @@ "use strict"; + +const webpack = require("webpack"); const NodePolyfillPlugin = require("node-polyfill-webpack-plugin"); /** @type {import("webpack").Configuration} */ @@ -44,6 +46,12 @@ module.exports = { ] }, plugins: [ + new webpack.NormalModuleReplacementPlugin( + /^node:/u, + resource => { + resource.request = resource.request.replace(/^node:/u, ""); + } + ), new NodePolyfillPlugin() ], resolve: {