GeezerVison is showing github.com — tools: import rather than require ESLint plugins · nodejs/node@8e64d38
File treeExpand file treeCollapse file tree Open diff view settings Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: benchmark/eslint.config_partial.mjs +1-3Lines changed: 1 addition & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | | -import { requireEslintTool } from '../tools/eslint/eslint.config_utils.mjs'; | 2 | | - | 3 | | -const globals = requireEslintTool('globals'); | | 1 | +import { globals } from '../tools/eslint/eslint.config_utils.mjs'; | 4 | 2 |
| 5 | 3 | export default [ | 6 | 4 | { | |
Collapse file Copy file name to clipboardExpand all lines: doc/eslint.config_partial.mjs +1-3Lines changed: 1 addition & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | 1 | import { | | 2 | + globals, | 2 | 3 | noRestrictedSyntaxCommonAll, | 3 | 4 | noRestrictedSyntaxCommonLib, | 4 | | - requireEslintTool, | 5 | 5 | } from '../tools/eslint/eslint.config_utils.mjs'; | 6 | 6 | import { builtinModules } from 'node:module'; | 7 | 7 |
| 8 | 8 | const builtin = builtinModules.filter((name) => !name.startsWith('node:')); | 9 | 9 |
| 10 | | -const globals = requireEslintTool('globals'); | 11 | | - | 12 | 10 | export default [ | 13 | 11 | { | 14 | 12 | files: ['doc/**/*.md/*.{js,mjs,cjs}'], | |
Collapse file Copy file name to clipboardExpand all lines: eslint.config.mjs +6-6Lines changed: 6 additions & 6 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -7,20 +7,20 @@ import libConfig from './lib/eslint.config_partial.mjs'; | 7 | 7 | import testConfig from './test/eslint.config_partial.mjs'; | 8 | 8 | import toolsConfig from './tools/eslint/eslint.config_partial.mjs'; | 9 | 9 | import { | | 10 | + importEslintTool, | 10 | 11 | noRestrictedSyntaxCommonAll, | 11 | 12 | noRestrictedSyntaxCommonLib, | 12 | | - requireEslintTool, | 13 | 13 | resolveEslintTool, | 14 | 14 | } from './tools/eslint/eslint.config_utils.mjs'; | 15 | 15 | import nodeCore from './tools/eslint/eslint-plugin-node-core.js'; | 16 | 16 |
| 17 | | -const js = requireEslintTool('@eslint/js'); | 18 | | -const babelEslintParser = requireEslintTool('@babel/eslint-parser'); | | 17 | +const { default: js } = await importEslintTool('@eslint/js'); | | 18 | +const { default: babelEslintParser } = await importEslintTool('@babel/eslint-parser'); | 19 | 19 | const babelPluginSyntaxImportAttributes = resolveEslintTool('@babel/plugin-syntax-import-attributes'); | 20 | 20 | const babelPluginSyntaxImportSource = resolveEslintTool('@babel/plugin-syntax-import-source'); | 21 | | -const jsdoc = requireEslintTool('eslint-plugin-jsdoc'); | 22 | | -const markdown = requireEslintTool('eslint-plugin-markdown'); | 23 | | -const stylisticJs = requireEslintTool('@stylistic/eslint-plugin-js'); | | 21 | +const { default: jsdoc } = await importEslintTool('eslint-plugin-jsdoc'); | | 22 | +const { default: markdown } = await importEslintTool('eslint-plugin-markdown'); | | 23 | +const { default: stylisticJs } = await importEslintTool('@stylistic/eslint-plugin-js'); | 24 | 24 |
| 25 | 25 | nodeCore.RULES_DIR = fileURLToPath(new URL('./tools/eslint-rules', import.meta.url)); | 26 | 26 |
| |
Collapse file Copy file name to clipboardExpand all lines: test/eslint.config_partial.mjs +1-3Lines changed: 1 addition & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | 1 | /* eslint-disable @stylistic/js/max-len */ | 2 | 2 |
| 3 | 3 | import { | | 4 | + globals, | 4 | 5 | noRestrictedSyntaxCommonAll, | 5 | | - requireEslintTool, | 6 | 6 | } from '../tools/eslint/eslint.config_utils.mjs'; | 7 | 7 |
| 8 | | -const globals = requireEslintTool('globals'); | 9 | | - | 10 | 8 | export default [ | 11 | 9 | { | 12 | 10 | files: ['test/**/*.{js,mjs,cjs}'], | |
Collapse file Copy file name to clipboardExpand all lines: tools/eslint/eslint.config_partial.mjs +1-3Lines changed: 1 addition & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | | -import { requireEslintTool } from './eslint.config_utils.mjs'; | 2 | | - | 3 | | -const globals = requireEslintTool('globals'); | | 1 | +import { globals } from './eslint.config_utils.mjs'; | 4 | 2 |
| 5 | 3 | export default [ | 6 | 4 | { | |
Collapse file Copy file name to clipboardExpand all lines: tools/eslint/eslint.config_utils.mjs +6-2Lines changed: 6 additions & 2 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | 1 | import { createRequire } from 'node:module'; | 2 | 2 |
| 3 | | -export const requireEslintTool = createRequire(new URL(import.meta.url)); | 4 | | -export const resolveEslintTool = (request) => requireEslintTool.resolve(request); | | 3 | +export { default as globals } from 'globals'; | | 4 | + | | 5 | +export const importEslintTool = (specifier) => import(specifier); | | 6 | + | | 7 | +const localRequire = createRequire(new URL(import.meta.url)); | | 8 | +export const resolveEslintTool = (request) => localRequire.resolve(request); | 5 | 9 |
| 6 | 10 | export const noRestrictedSyntaxCommonAll = [ | 7 | 11 | { | |
|