Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Enable eslint.config.js lookup from CLI #16235

Merged
merged 16 commits into from Aug 26, 2022
Merged

Conversation

nzakas
Copy link
Member

@nzakas nzakas commented Aug 23, 2022

Refs #13481

Prerequisites checklist

What is the purpose of this pull request? (put an "X" next to an item)

[ ] Documentation update
[ ] Bug fix (template)
[ ] New rule (template)
[ ] Changes an existing rule (template)
[ ] Add autofix to a rule
[ ] Add a CLI option
[x] Add something to the core
[ ] Other, please explain:

What changes did you make? (Give an overview)

This change enables flat config when there is an eslint.config.js file found:

  • I updated cli.js to do this and also updated the tests. For the tests, I tried to group them more logically than they were. I also split them up into tests that are valid for both eslintrc and flat config, and ones that are not.
  • I deleted the top-level .eslintrc so ESLint internally uses eslint.config.js now. Removing .eslintrc.js messed up a lot of tests that were relying on it. This has been a constant problem in this refactor -- a lot of hidden dependencies in the repo.
  • I updated several files that relied on environments to register Mocha globals. These now use /* globals */ instead.
  • I updated no-lone-blocks to use languageOptions.ecmaVersion instead of parserOptions.ecmaVersion.
  • I also updated the flat config docs to note how to enable this.

Is there anything you'd like reviewers to focus on?

Do these changes make sense? Any concerns with pushing this out?

@eslint-github-bot eslint-github-bot bot added triage An ESLint team member will look at this issue soon feature This change adds a new feature to ESLint labels Aug 23, 2022
@netlify
Copy link

netlify bot commented Aug 23, 2022

Deploy Preview for docs-eslint canceled.

Name Link
🔨 Latest commit 84b5266
🔍 Latest deploy log https://app.netlify.com/sites/docs-eslint/deploys/6307e9d84db17b00097d85ec

@nzakas
Copy link
Member Author

nzakas commented Aug 24, 2022

Looks like a couple of followups:

  1. I need to update the bin/eslint.js tests.
  2. It looks like suppressedMessages was added after the original work on FlatESLint had started, so I need to go back and add that in.

@nzakas nzakas marked this pull request as draft August 24, 2022 17:42
bin/eslint.js Show resolved Hide resolved
.eslintrc.js Outdated Show resolved Hide resolved
@nzakas nzakas marked this pull request as ready for review August 24, 2022 18:35
@nzakas
Copy link
Member Author

nzakas commented Aug 24, 2022

Okay, I think I got everything. 😓

lib/cli.js Outdated Show resolved Hide resolved
@mdjermanovic mdjermanovic added cli Relates to ESLint's command-line interface core Relates to ESLint's core APIs and features accepted There is consensus among the team that this change meets the criteria for inclusion and removed triage An ESLint team member will look at this issue soon labels Aug 25, 2022
@mdjermanovic
Copy link
Member

Something is wrong when passing a directory name to lint.

For example, when I run npx eslint tools -f tap, it shows the files from tools/, but also files from tests/:

TAP version 13
1..359
ok 1 - D:\projects\eslint\tests\_utils\in-memory-fs.js
ok 2 - D:\projects\eslint\tests\_utils\index.js
ok 3 - D:\projects\eslint\tests\_utils\test-lazy-loading-rules.js
ok 4 - D:\projects\eslint\tests\bin\eslint.js
ok 5 - D:\projects\eslint\tests\conf\config-schema.js
ok 6 - D:\projects\eslint\tests\conf\eslint-all.js
ok 7 - D:\projects\eslint\tests\conf\eslint-recommended.js
ok 8 - D:\projects\eslint\tests\lib\api.js
ok 9 - D:\projects\eslint\tests\lib\cli-engine\cli-engine.js
ok 10 - D:\projects\eslint\tests\lib\cli-engine\file-enumerator.js
ok 11 - D:\projects\eslint\tests\lib\cli-engine\formatters\checkstyle.js
ok 12 - D:\projects\eslint\tests\lib\cli-engine\formatters\compact.js
ok 13 - D:\projects\eslint\tests\lib\cli-engine\formatters\html.js
ok 14 - D:\projects\eslint\tests\lib\cli-engine\formatters\jslint-xml.js
ok 15 - D:\projects\eslint\tests\lib\cli-engine\formatters\json-with-metadata.js
ok 16 - D:\projects\eslint\tests\lib\cli-engine\formatters\json.js
ok 17 - D:\projects\eslint\tests\lib\cli-engine\formatters\junit.js
ok 18 - D:\projects\eslint\tests\lib\cli-engine\formatters\stylish.js
ok 19 - D:\projects\eslint\tests\lib\cli-engine\formatters\tap.js
ok 20 - D:\projects\eslint\tests\lib\cli-engine\formatters\unix.js
ok 21 - D:\projects\eslint\tests\lib\cli-engine\formatters\visualstudio.js
ok 22 - D:\projects\eslint\tests\lib\cli-engine\lint-result-cache.js
ok 23 - D:\projects\eslint\tests\lib\cli-engine\load-rules.js
ok 24 - D:\projects\eslint\tests\lib\cli.js
ok 25 - D:\projects\eslint\tests\lib\config\flat-config-array.js
ok 26 - D:\projects\eslint\tests\lib\config\flat-config-helpers.js
ok 27 - D:\projects\eslint\tests\lib\eslint\eslint.config.js
ok 28 - D:\projects\eslint\tests\lib\eslint\eslint.js
ok 29 - D:\projects\eslint\tests\lib\eslint\flat-eslint.js
ok 30 - D:\projects\eslint\tests\lib\linter\apply-disable-directives.js
ok 31 - D:\projects\eslint\tests\lib\linter\code-path-analysis\code-path-analyzer.js
ok 32 - D:\projects\eslint\tests\lib\linter\code-path-analysis\code-path.js
ok 33 - D:\projects\eslint\tests\lib\linter\config-comment-parser.js
ok 34 - D:\projects\eslint\tests\lib\linter\interpolate.js
ok 35 - D:\projects\eslint\tests\lib\linter\linter.js
ok 36 - D:\projects\eslint\tests\lib\linter\node-event-generator.js
ok 37 - D:\projects\eslint\tests\lib\linter\report-translator.js
ok 38 - D:\projects\eslint\tests\lib\linter\rule-fixer.js
ok 39 - D:\projects\eslint\tests\lib\linter\rules.js
ok 40 - D:\projects\eslint\tests\lib\linter\safe-emitter.js
ok 41 - D:\projects\eslint\tests\lib\linter\source-code-fixer.js
ok 42 - D:\projects\eslint\tests\lib\linter\timing.js
ok 43 - D:\projects\eslint\tests\lib\options.js
ok 44 - D:\projects\eslint\tests\lib\rule-tester\flat-rule-tester.js
ok 45 - D:\projects\eslint\tests\lib\rule-tester\no-test-runners.js
ok 46 - D:\projects\eslint\tests\lib\rule-tester\rule-tester.js
ok 47 - D:\projects\eslint\tests\lib\rules\accessor-pairs.js
ok 48 - D:\projects\eslint\tests\lib\rules\array-bracket-newline.js
ok 49 - D:\projects\eslint\tests\lib\rules\array-bracket-spacing.js
ok 50 - D:\projects\eslint\tests\lib\rules\array-callback-return.js
ok 51 - D:\projects\eslint\tests\lib\rules\array-element-newline.js
ok 52 - D:\projects\eslint\tests\lib\rules\arrow-body-style.js
ok 53 - D:\projects\eslint\tests\lib\rules\arrow-parens.js
ok 54 - D:\projects\eslint\tests\lib\rules\arrow-spacing.js
ok 55 - D:\projects\eslint\tests\lib\rules\block-scoped-var.js
ok 56 - D:\projects\eslint\tests\lib\rules\block-spacing.js
ok 57 - D:\projects\eslint\tests\lib\rules\brace-style.js
ok 58 - D:\projects\eslint\tests\lib\rules\callback-return.js
ok 59 - D:\projects\eslint\tests\lib\rules\camelcase.js
ok 60 - D:\projects\eslint\tests\lib\rules\capitalized-comments.js
ok 61 - D:\projects\eslint\tests\lib\rules\class-methods-use-this.js
ok 62 - D:\projects\eslint\tests\lib\rules\comma-dangle.js
ok 63 - D:\projects\eslint\tests\lib\rules\comma-spacing.js
ok 64 - D:\projects\eslint\tests\lib\rules\comma-style.js
ok 65 - D:\projects\eslint\tests\lib\rules\complexity.js
ok 66 - D:\projects\eslint\tests\lib\rules\computed-property-spacing.js
ok 67 - D:\projects\eslint\tests\lib\rules\consistent-return.js
ok 68 - D:\projects\eslint\tests\lib\rules\consistent-this.js
ok 69 - D:\projects\eslint\tests\lib\rules\constructor-super.js
ok 70 - D:\projects\eslint\tests\lib\rules\curly.js
ok 71 - D:\projects\eslint\tests\lib\rules\default-case-last.js
ok 72 - D:\projects\eslint\tests\lib\rules\default-case.js
ok 73 - D:\projects\eslint\tests\lib\rules\default-param-last.js
ok 74 - D:\projects\eslint\tests\lib\rules\dot-location.js
ok 75 - D:\projects\eslint\tests\lib\rules\dot-notation.js
ok 76 - D:\projects\eslint\tests\lib\rules\eol-last.js
ok 77 - D:\projects\eslint\tests\lib\rules\eqeqeq.js
ok 78 - D:\projects\eslint\tests\lib\rules\for-direction.js
ok 79 - D:\projects\eslint\tests\lib\rules\func-call-spacing.js
ok 80 - D:\projects\eslint\tests\lib\rules\func-name-matching.js
ok 81 - D:\projects\eslint\tests\lib\rules\func-names.js
ok 82 - D:\projects\eslint\tests\lib\rules\func-style.js
ok 83 - D:\projects\eslint\tests\lib\rules\function-call-argument-newline.js
ok 84 - D:\projects\eslint\tests\lib\rules\function-paren-newline.js
ok 85 - D:\projects\eslint\tests\lib\rules\generator-star-spacing.js
ok 86 - D:\projects\eslint\tests\lib\rules\getter-return.js
ok 87 - D:\projects\eslint\tests\lib\rules\global-require.js
ok 88 - D:\projects\eslint\tests\lib\rules\grouped-accessor-pairs.js
ok 89 - D:\projects\eslint\tests\lib\rules\guard-for-in.js
ok 90 - D:\projects\eslint\tests\lib\rules\handle-callback-err.js
ok 91 - D:\projects\eslint\tests\lib\rules\id-blacklist.js
ok 92 - D:\projects\eslint\tests\lib\rules\id-denylist.js
ok 93 - D:\projects\eslint\tests\lib\rules\id-length.js
ok 94 - D:\projects\eslint\tests\lib\rules\id-match.js
ok 95 - D:\projects\eslint\tests\lib\rules\implicit-arrow-linebreak.js
ok 96 - D:\projects\eslint\tests\lib\rules\indent-legacy.js
ok 97 - D:\projects\eslint\tests\lib\rules\indent.js
ok 98 - D:\projects\eslint\tests\lib\rules\init-declarations.js
ok 99 - D:\projects\eslint\tests\lib\rules\jsx-quotes.js
ok 100 - D:\projects\eslint\tests\lib\rules\key-spacing.js
ok 101 - D:\projects\eslint\tests\lib\rules\keyword-spacing.js
ok 102 - D:\projects\eslint\tests\lib\rules\line-comment-position.js
ok 103 - D:\projects\eslint\tests\lib\rules\linebreak-style.js
ok 104 - D:\projects\eslint\tests\lib\rules\lines-around-comment.js
ok 105 - D:\projects\eslint\tests\lib\rules\lines-around-directive.js
ok 106 - D:\projects\eslint\tests\lib\rules\lines-between-class-members.js
ok 107 - D:\projects\eslint\tests\lib\rules\max-classes-per-file.js
ok 108 - D:\projects\eslint\tests\lib\rules\max-depth.js
ok 109 - D:\projects\eslint\tests\lib\rules\max-len.js
ok 110 - D:\projects\eslint\tests\lib\rules\max-lines-per-function.js
ok 111 - D:\projects\eslint\tests\lib\rules\max-lines.js
ok 112 - D:\projects\eslint\tests\lib\rules\max-nested-callbacks.js
ok 113 - D:\projects\eslint\tests\lib\rules\max-params.js
ok 114 - D:\projects\eslint\tests\lib\rules\max-statements-per-line.js
ok 115 - D:\projects\eslint\tests\lib\rules\max-statements.js
ok 116 - D:\projects\eslint\tests\lib\rules\multiline-comment-style.js
ok 117 - D:\projects\eslint\tests\lib\rules\multiline-ternary.js
ok 118 - D:\projects\eslint\tests\lib\rules\new-cap.js
ok 119 - D:\projects\eslint\tests\lib\rules\new-parens.js
ok 120 - D:\projects\eslint\tests\lib\rules\newline-after-var.js
ok 121 - D:\projects\eslint\tests\lib\rules\newline-before-return.js
ok 122 - D:\projects\eslint\tests\lib\rules\newline-per-chained-call.js
ok 123 - D:\projects\eslint\tests\lib\rules\no-alert.js
ok 124 - D:\projects\eslint\tests\lib\rules\no-array-constructor.js
ok 125 - D:\projects\eslint\tests\lib\rules\no-async-promise-executor.js
ok 126 - D:\projects\eslint\tests\lib\rules\no-await-in-loop.js
ok 127 - D:\projects\eslint\tests\lib\rules\no-bitwise.js
ok 128 - D:\projects\eslint\tests\lib\rules\no-buffer-constructor.js
ok 129 - D:\projects\eslint\tests\lib\rules\no-caller.js
ok 130 - D:\projects\eslint\tests\lib\rules\no-case-declarations.js
ok 131 - D:\projects\eslint\tests\lib\rules\no-catch-shadow.js
ok 132 - D:\projects\eslint\tests\lib\rules\no-class-assign.js
ok 133 - D:\projects\eslint\tests\lib\rules\no-compare-neg-zero.js
ok 134 - D:\projects\eslint\tests\lib\rules\no-cond-assign.js
ok 135 - D:\projects\eslint\tests\lib\rules\no-confusing-arrow.js
ok 136 - D:\projects\eslint\tests\lib\rules\no-console.js
ok 137 - D:\projects\eslint\tests\lib\rules\no-const-assign.js
ok 138 - D:\projects\eslint\tests\lib\rules\no-constant-binary-expression.js
ok 139 - D:\projects\eslint\tests\lib\rules\no-constant-condition.js
ok 140 - D:\projects\eslint\tests\lib\rules\no-constructor-return.js
ok 141 - D:\projects\eslint\tests\lib\rules\no-continue.js
ok 142 - D:\projects\eslint\tests\lib\rules\no-control-regex.js
ok 143 - D:\projects\eslint\tests\lib\rules\no-debugger.js
ok 144 - D:\projects\eslint\tests\lib\rules\no-delete-var.js
ok 145 - D:\projects\eslint\tests\lib\rules\no-div-regex.js
ok 146 - D:\projects\eslint\tests\lib\rules\no-dupe-args.js
ok 147 - D:\projects\eslint\tests\lib\rules\no-dupe-class-members.js
ok 148 - D:\projects\eslint\tests\lib\rules\no-dupe-else-if.js
ok 149 - D:\projects\eslint\tests\lib\rules\no-dupe-keys.js
ok 150 - D:\projects\eslint\tests\lib\rules\no-duplicate-case.js
ok 151 - D:\projects\eslint\tests\lib\rules\no-duplicate-imports.js
ok 152 - D:\projects\eslint\tests\lib\rules\no-else-return.js
ok 153 - D:\projects\eslint\tests\lib\rules\no-empty-character-class.js
ok 154 - D:\projects\eslint\tests\lib\rules\no-empty-function.js
ok 155 - D:\projects\eslint\tests\lib\rules\no-empty-pattern.js
ok 156 - D:\projects\eslint\tests\lib\rules\no-empty.js
ok 157 - D:\projects\eslint\tests\lib\rules\no-eq-null.js
ok 158 - D:\projects\eslint\tests\lib\rules\no-eval.js
ok 159 - D:\projects\eslint\tests\lib\rules\no-ex-assign.js
ok 160 - D:\projects\eslint\tests\lib\rules\no-extend-native.js
ok 161 - D:\projects\eslint\tests\lib\rules\no-extra-bind.js
ok 162 - D:\projects\eslint\tests\lib\rules\no-extra-boolean-cast.js
ok 163 - D:\projects\eslint\tests\lib\rules\no-extra-label.js
ok 164 - D:\projects\eslint\tests\lib\rules\no-extra-parens.js
ok 165 - D:\projects\eslint\tests\lib\rules\no-extra-semi.js
ok 166 - D:\projects\eslint\tests\lib\rules\no-fallthrough.js
ok 167 - D:\projects\eslint\tests\lib\rules\no-floating-decimal.js
ok 168 - D:\projects\eslint\tests\lib\rules\no-func-assign.js
ok 169 - D:\projects\eslint\tests\lib\rules\no-global-assign.js
ok 170 - D:\projects\eslint\tests\lib\rules\no-implicit-coercion.js
ok 171 - D:\projects\eslint\tests\lib\rules\no-implicit-globals.js
ok 172 - D:\projects\eslint\tests\lib\rules\no-implied-eval.js
ok 173 - D:\projects\eslint\tests\lib\rules\no-import-assign.js
ok 174 - D:\projects\eslint\tests\lib\rules\no-inline-comments.js
ok 175 - D:\projects\eslint\tests\lib\rules\no-inner-declarations.js
ok 176 - D:\projects\eslint\tests\lib\rules\no-invalid-regexp.js
ok 177 - D:\projects\eslint\tests\lib\rules\no-invalid-this.js
ok 178 - D:\projects\eslint\tests\lib\rules\no-irregular-whitespace.js
ok 179 - D:\projects\eslint\tests\lib\rules\no-iterator.js
ok 180 - D:\projects\eslint\tests\lib\rules\no-label-var.js
ok 181 - D:\projects\eslint\tests\lib\rules\no-labels.js
ok 182 - D:\projects\eslint\tests\lib\rules\no-lone-blocks.js
ok 183 - D:\projects\eslint\tests\lib\rules\no-lonely-if.js
ok 184 - D:\projects\eslint\tests\lib\rules\no-loop-func.js
ok 185 - D:\projects\eslint\tests\lib\rules\no-loss-of-precision.js
ok 186 - D:\projects\eslint\tests\lib\rules\no-magic-numbers.js
ok 187 - D:\projects\eslint\tests\lib\rules\no-misleading-character-class.js
ok 188 - D:\projects\eslint\tests\lib\rules\no-mixed-operators.js
ok 189 - D:\projects\eslint\tests\lib\rules\no-mixed-requires.js
ok 190 - D:\projects\eslint\tests\lib\rules\no-mixed-spaces-and-tabs.js
ok 191 - D:\projects\eslint\tests\lib\rules\no-multi-assign.js
ok 192 - D:\projects\eslint\tests\lib\rules\no-multi-spaces.js
ok 193 - D:\projects\eslint\tests\lib\rules\no-multi-str.js
ok 194 - D:\projects\eslint\tests\lib\rules\no-multiple-empty-lines.js
ok 195 - D:\projects\eslint\tests\lib\rules\no-native-reassign.js
ok 196 - D:\projects\eslint\tests\lib\rules\no-negated-condition.js
ok 197 - D:\projects\eslint\tests\lib\rules\no-negated-in-lhs.js
ok 198 - D:\projects\eslint\tests\lib\rules\no-nested-ternary.js
ok 199 - D:\projects\eslint\tests\lib\rules\no-new-func.js
ok 200 - D:\projects\eslint\tests\lib\rules\no-new-object.js
ok 201 - D:\projects\eslint\tests\lib\rules\no-new-require.js
ok 202 - D:\projects\eslint\tests\lib\rules\no-new-symbol.js
ok 203 - D:\projects\eslint\tests\lib\rules\no-new-wrappers.js
ok 204 - D:\projects\eslint\tests\lib\rules\no-new.js
ok 205 - D:\projects\eslint\tests\lib\rules\no-nonoctal-decimal-escape.js
ok 206 - D:\projects\eslint\tests\lib\rules\no-obj-calls.js
ok 207 - D:\projects\eslint\tests\lib\rules\no-octal-escape.js
ok 208 - D:\projects\eslint\tests\lib\rules\no-octal.js
ok 209 - D:\projects\eslint\tests\lib\rules\no-param-reassign.js
ok 210 - D:\projects\eslint\tests\lib\rules\no-path-concat.js
ok 211 - D:\projects\eslint\tests\lib\rules\no-plusplus.js
ok 212 - D:\projects\eslint\tests\lib\rules\no-process-env.js
ok 213 - D:\projects\eslint\tests\lib\rules\no-process-exit.js
ok 214 - D:\projects\eslint\tests\lib\rules\no-promise-executor-return.js
ok 215 - D:\projects\eslint\tests\lib\rules\no-proto.js
ok 216 - D:\projects\eslint\tests\lib\rules\no-prototype-builtins.js
ok 217 - D:\projects\eslint\tests\lib\rules\no-redeclare.js
ok 218 - D:\projects\eslint\tests\lib\rules\no-regex-spaces.js
ok 219 - D:\projects\eslint\tests\lib\rules\no-restricted-exports.js
ok 220 - D:\projects\eslint\tests\lib\rules\no-restricted-globals.js
ok 221 - D:\projects\eslint\tests\lib\rules\no-restricted-imports.js
ok 222 - D:\projects\eslint\tests\lib\rules\no-restricted-modules.js
ok 223 - D:\projects\eslint\tests\lib\rules\no-restricted-properties.js
ok 224 - D:\projects\eslint\tests\lib\rules\no-restricted-syntax.js
ok 225 - D:\projects\eslint\tests\lib\rules\no-return-assign.js
ok 226 - D:\projects\eslint\tests\lib\rules\no-return-await.js
ok 227 - D:\projects\eslint\tests\lib\rules\no-script-url.js
ok 228 - D:\projects\eslint\tests\lib\rules\no-self-assign.js
ok 229 - D:\projects\eslint\tests\lib\rules\no-self-compare.js
ok 230 - D:\projects\eslint\tests\lib\rules\no-sequences.js
ok 231 - D:\projects\eslint\tests\lib\rules\no-setter-return.js
ok 232 - D:\projects\eslint\tests\lib\rules\no-shadow-restricted-names.js
ok 233 - D:\projects\eslint\tests\lib\rules\no-shadow.js
ok 234 - D:\projects\eslint\tests\lib\rules\no-spaced-func.js
ok 235 - D:\projects\eslint\tests\lib\rules\no-sparse-arrays.js
ok 236 - D:\projects\eslint\tests\lib\rules\no-sync.js
ok 237 - D:\projects\eslint\tests\lib\rules\no-tabs.js
ok 238 - D:\projects\eslint\tests\lib\rules\no-template-curly-in-string.js
ok 239 - D:\projects\eslint\tests\lib\rules\no-ternary.js
ok 240 - D:\projects\eslint\tests\lib\rules\no-this-before-super.js
ok 241 - D:\projects\eslint\tests\lib\rules\no-throw-literal.js
ok 242 - D:\projects\eslint\tests\lib\rules\no-trailing-spaces.js
ok 243 - D:\projects\eslint\tests\lib\rules\no-undef-init.js
ok 244 - D:\projects\eslint\tests\lib\rules\no-undef.js
ok 245 - D:\projects\eslint\tests\lib\rules\no-undefined.js
ok 246 - D:\projects\eslint\tests\lib\rules\no-underscore-dangle.js
ok 247 - D:\projects\eslint\tests\lib\rules\no-unexpected-multiline.js
ok 248 - D:\projects\eslint\tests\lib\rules\no-unmodified-loop-condition.js
ok 249 - D:\projects\eslint\tests\lib\rules\no-unneeded-ternary.js
ok 250 - D:\projects\eslint\tests\lib\rules\no-unreachable-loop.js
ok 251 - D:\projects\eslint\tests\lib\rules\no-unreachable.js
ok 252 - D:\projects\eslint\tests\lib\rules\no-unsafe-finally.js
ok 253 - D:\projects\eslint\tests\lib\rules\no-unsafe-negation.js
ok 254 - D:\projects\eslint\tests\lib\rules\no-unsafe-optional-chaining.js
ok 255 - D:\projects\eslint\tests\lib\rules\no-unused-expressions.js
ok 256 - D:\projects\eslint\tests\lib\rules\no-unused-labels.js
ok 257 - D:\projects\eslint\tests\lib\rules\no-unused-private-class-members.js
ok 258 - D:\projects\eslint\tests\lib\rules\no-unused-vars.js
ok 259 - D:\projects\eslint\tests\lib\rules\no-use-before-define.js
ok 260 - D:\projects\eslint\tests\lib\rules\no-useless-backreference.js
ok 261 - D:\projects\eslint\tests\lib\rules\no-useless-call.js
ok 262 - D:\projects\eslint\tests\lib\rules\no-useless-catch.js
ok 263 - D:\projects\eslint\tests\lib\rules\no-useless-computed-key.js
ok 264 - D:\projects\eslint\tests\lib\rules\no-useless-concat.js
ok 265 - D:\projects\eslint\tests\lib\rules\no-useless-constructor.js
ok 266 - D:\projects\eslint\tests\lib\rules\no-useless-escape.js
ok 267 - D:\projects\eslint\tests\lib\rules\no-useless-rename.js
ok 268 - D:\projects\eslint\tests\lib\rules\no-useless-return.js
ok 269 - D:\projects\eslint\tests\lib\rules\no-var.js
ok 270 - D:\projects\eslint\tests\lib\rules\no-void.js
ok 271 - D:\projects\eslint\tests\lib\rules\no-warning-comments.js
ok 272 - D:\projects\eslint\tests\lib\rules\no-whitespace-before-property.js
ok 273 - D:\projects\eslint\tests\lib\rules\no-with.js
ok 274 - D:\projects\eslint\tests\lib\rules\nonblock-statement-body-position.js
ok 275 - D:\projects\eslint\tests\lib\rules\object-curly-newline.js
ok 276 - D:\projects\eslint\tests\lib\rules\object-curly-spacing.js
ok 277 - D:\projects\eslint\tests\lib\rules\object-property-newline.js
ok 278 - D:\projects\eslint\tests\lib\rules\object-shorthand.js
ok 279 - D:\projects\eslint\tests\lib\rules\one-var-declaration-per-line.js
ok 280 - D:\projects\eslint\tests\lib\rules\one-var.js
ok 281 - D:\projects\eslint\tests\lib\rules\operator-assignment.js
ok 282 - D:\projects\eslint\tests\lib\rules\operator-linebreak.js
ok 283 - D:\projects\eslint\tests\lib\rules\padded-blocks.js
ok 284 - D:\projects\eslint\tests\lib\rules\padding-line-between-statements.js
ok 285 - D:\projects\eslint\tests\lib\rules\prefer-arrow-callback.js
ok 286 - D:\projects\eslint\tests\lib\rules\prefer-const.js
ok 287 - D:\projects\eslint\tests\lib\rules\prefer-destructuring.js
ok 288 - D:\projects\eslint\tests\lib\rules\prefer-exponentiation-operator.js
ok 289 - D:\projects\eslint\tests\lib\rules\prefer-named-capture-group.js
ok 290 - D:\projects\eslint\tests\lib\rules\prefer-numeric-literals.js
ok 291 - D:\projects\eslint\tests\lib\rules\prefer-object-has-own.js
ok 292 - D:\projects\eslint\tests\lib\rules\prefer-object-spread.js
ok 293 - D:\projects\eslint\tests\lib\rules\prefer-promise-reject-errors.js
ok 294 - D:\projects\eslint\tests\lib\rules\prefer-reflect.js
ok 295 - D:\projects\eslint\tests\lib\rules\prefer-regex-literals.js
ok 296 - D:\projects\eslint\tests\lib\rules\prefer-rest-params.js
ok 297 - D:\projects\eslint\tests\lib\rules\prefer-spread.js
ok 298 - D:\projects\eslint\tests\lib\rules\prefer-template.js
ok 299 - D:\projects\eslint\tests\lib\rules\quote-props.js
ok 300 - D:\projects\eslint\tests\lib\rules\quotes.js
ok 301 - D:\projects\eslint\tests\lib\rules\radix.js
ok 302 - D:\projects\eslint\tests\lib\rules\require-atomic-updates.js
ok 303 - D:\projects\eslint\tests\lib\rules\require-await.js
ok 304 - D:\projects\eslint\tests\lib\rules\require-jsdoc.js
ok 305 - D:\projects\eslint\tests\lib\rules\require-unicode-regexp.js
ok 306 - D:\projects\eslint\tests\lib\rules\require-yield.js
ok 307 - D:\projects\eslint\tests\lib\rules\rest-spread-spacing.js
ok 308 - D:\projects\eslint\tests\lib\rules\semi-spacing.js
ok 309 - D:\projects\eslint\tests\lib\rules\semi-style.js
ok 310 - D:\projects\eslint\tests\lib\rules\semi.js
ok 311 - D:\projects\eslint\tests\lib\rules\sort-imports.js
ok 312 - D:\projects\eslint\tests\lib\rules\sort-keys.js
ok 313 - D:\projects\eslint\tests\lib\rules\sort-vars.js
ok 314 - D:\projects\eslint\tests\lib\rules\space-before-blocks.js
ok 315 - D:\projects\eslint\tests\lib\rules\space-before-function-paren.js
ok 316 - D:\projects\eslint\tests\lib\rules\space-in-parens.js
ok 317 - D:\projects\eslint\tests\lib\rules\space-infix-ops.js
ok 318 - D:\projects\eslint\tests\lib\rules\space-unary-ops.js
ok 319 - D:\projects\eslint\tests\lib\rules\spaced-comment.js
ok 320 - D:\projects\eslint\tests\lib\rules\strict.js
ok 321 - D:\projects\eslint\tests\lib\rules\switch-colon-spacing.js
ok 322 - D:\projects\eslint\tests\lib\rules\symbol-description.js
ok 323 - D:\projects\eslint\tests\lib\rules\template-curly-spacing.js
ok 324 - D:\projects\eslint\tests\lib\rules\template-tag-spacing.js
ok 325 - D:\projects\eslint\tests\lib\rules\unicode-bom.js
ok 326 - D:\projects\eslint\tests\lib\rules\use-isnan.js
ok 327 - D:\projects\eslint\tests\lib\rules\utils\ast-utils.js
ok 328 - D:\projects\eslint\tests\lib\rules\utils\fix-tracker.js
ok 329 - D:\projects\eslint\tests\lib\rules\valid-jsdoc.js
ok 330 - D:\projects\eslint\tests\lib\rules\valid-typeof.js
ok 331 - D:\projects\eslint\tests\lib\rules\vars-on-top.js
ok 332 - D:\projects\eslint\tests\lib\rules\wrap-iife.js
ok 333 - D:\projects\eslint\tests\lib\rules\wrap-regex.js
ok 334 - D:\projects\eslint\tests\lib\rules\yield-star-spacing.js
ok 335 - D:\projects\eslint\tests\lib\rules\yoda.js
ok 336 - D:\projects\eslint\tests\lib\shared\config-validator.js
ok 337 - D:\projects\eslint\tests\lib\shared\runtime-info.js
ok 338 - D:\projects\eslint\tests\lib\shared\string-utils.js
ok 339 - D:\projects\eslint\tests\lib\shared\traverser.js
ok 340 - D:\projects\eslint\tests\lib\source-code\source-code.js
ok 341 - D:\projects\eslint\tests\lib\source-code\token-store.js
ok 342 - D:\projects\eslint\tests\lib\unsupported-api.js
ok 343 - D:\projects\eslint\tests\tools\code-sample-minimizer.js
ok 344 - D:\projects\eslint\tests\tools\config-rule.js
ok 345 - D:\projects\eslint\tests\tools\eslint-fuzzer.js
ok 346 - D:\projects\eslint\tests\tools\internal-rules\multiline-comment-style.js
ok 347 - D:\projects\eslint\tests\tools\internal-rules\no-invalid-meta.js
ok 348 - D:\projects\eslint\tools\code-sample-minimizer.js
ok 349 - D:\projects\eslint\tools\config-rule.js
ok 350 - D:\projects\eslint\tools\eslint-fuzzer.js
ok 351 - D:\projects\eslint\tools\fetch-docs-links.js
ok 352 - D:\projects\eslint\tools\fuzzer-runner.js
ok 353 - D:\projects\eslint\tools\internal-rules\index.js
ok 354 - D:\projects\eslint\tools\internal-rules\multiline-comment-style.js
ok 355 - D:\projects\eslint\tools\internal-rules\no-invalid-meta.js
ok 356 - D:\projects\eslint\tools\internal-testers\event-generator-tester.js
ok 357 - D:\projects\eslint\tools\internal-testers\test-parser.js
ok 358 - D:\projects\eslint\tools\update-readme.js
ok 359 - D:\projects\eslint\tools\update-rule-types.js

I believe the cause is somewhere inside this code, globbyPatterns ends up containing tests/**/*.js.

@mdjermanovic
Copy link
Member

Changes in this PR LGTM. The bug with directories seems to be a previously existing bug in the FlatESLint class. @nzakas what do you think about merging this for today's release?

@mdjermanovic
Copy link
Member

Since this is opt-in and still marked as an experimental feature, I'll go ahead and merge this PR for today's release.

@mdjermanovic mdjermanovic merged commit 3e5839e into main Aug 26, 2022
@mdjermanovic mdjermanovic deleted the flat-config-cli branch August 26, 2022 21:00
@prescience-data
Copy link

Change appears to break all current and historic WebStorm versions built-in plugin:

#16250 (comment)

crapStone pushed a commit to Calciumdibromid/CaBr2 that referenced this pull request Sep 1, 2022
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | devDependencies | minor | [`8.22.0` -> `8.23.0`](https://renovatebot.com/diffs/npm/eslint/8.22.0/8.23.0) |

---

### Release Notes

<details>
<summary>eslint/eslint</summary>

### [`v8.23.0`](https://github.com/eslint/eslint/releases/tag/v8.23.0)

[Compare Source](eslint/eslint@v8.22.0...v8.23.0)

#### Features

-   [`3e5839e`](eslint/eslint@3e5839e) feat: Enable eslint.config.js lookup from CLI ([#&#8203;16235](eslint/eslint#16235)) (Nicholas C. Zakas)
-   [`30b1a2d`](eslint/eslint@30b1a2d) feat: add `allowEmptyCase` option to no-fallthrough rule ([#&#8203;15887](eslint/eslint#15887)) (Amaresh  S M)
-   [`43f03aa`](eslint/eslint@43f03aa) feat: no-warning-comments support comments with decoration ([#&#8203;16120](eslint/eslint#16120)) (Lachlan Hunt)

#### Documentation

-   [`b1918da`](eslint/eslint@b1918da) docs: package.json conventions ([#&#8203;16206](eslint/eslint#16206)) (Patrick McElhaney)
-   [`0e03c33`](eslint/eslint@0e03c33) docs: remove word immediately ([#&#8203;16217](eslint/eslint#16217)) (Strek)
-   [`c6790db`](eslint/eslint@c6790db) docs: add anchor link for "migrating from jscs" ([#&#8203;16207](eslint/eslint#16207)) (Percy Ma)
-   [`7137344`](eslint/eslint@7137344) docs: auto-generation edit link ([#&#8203;16213](eslint/eslint#16213)) (Percy Ma)

#### Chores

-   [`2e004ab`](eslint/eslint@2e004ab) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).3.1 ([#&#8203;16249](eslint/eslint#16249)) (Milos Djermanovic)
-   [`d35fbbe`](eslint/eslint@d35fbbe) chore: Upgrade to espree@9.4.0 ([#&#8203;16243](eslint/eslint#16243)) (Milos Djermanovic)
-   [`ed26229`](eslint/eslint@ed26229) test: add no-extra-parens tests with rest properties ([#&#8203;16236](eslint/eslint#16236)) (Milos Djermanovic)
-   [`deaf69f`](eslint/eslint@deaf69f) chore: fix off-by-one `min-width: 1023px` media queries ([#&#8203;15974](eslint/eslint#15974)) (Milos Djermanovic)
-   [`63dec9f`](eslint/eslint@63dec9f) refactor: simplify `parseListConfig` ([#&#8203;16241](eslint/eslint#16241)) (Milos Djermanovic)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4xNzcuMSIsInVwZGF0ZWRJblZlciI6IjMyLjE4MS4wIn0=-->

Co-authored-by: cabr2-bot <cabr2.help@gmail.com>
Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1527
Reviewed-by: Epsilon_02 <epsilon_02@noreply.codeberg.org>
Co-authored-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
Co-committed-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
@eslint-github-bot eslint-github-bot bot locked and limited conversation to collaborators Feb 23, 2023
@eslint-github-bot eslint-github-bot bot added the archived due to age This issue has been archived; please open a new issue for any further discussion label Feb 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
accepted There is consensus among the team that this change meets the criteria for inclusion archived due to age This issue has been archived; please open a new issue for any further discussion cli Relates to ESLint's command-line interface core Relates to ESLint's core APIs and features feature This change adds a new feature to ESLint
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants