Releases: eslint/eslint
Releases Β· eslint/eslint
v9.15.0
Features
01557cefeat: Implement Language#normalizeLanguageOptions() (#19104) (Nicholas C. Zakas)2edc0e2feat: add meta.defaultOptions (#17656) (Josh Goldberg β¨)bdec50efeat: fixno-useless-computed-keyfalse negative with__proto__(#19123) (Milos Djermanovic)3087c9efeat: addmetaobject to@eslint/jsplugin (#19095) (Francesco Trotta)
Bug Fixes
fd33f13fix: update types forno-restricted-importsrule (#19060) (Nitin Kumar)bd35098fix: switch away from Node.js node:assert and AssertionError (#19082) (Josh Goldberg β¨)9db5b15fix: unsafe report forno-lonely-if(#19087) (Abraham Guo)68fa497fix: ignore files on a different drive on Windows (#19069) (Francesco Trotta)4ce625afix: upgrade @humanwhocodes/[email protected] to avoid debug logs (#19102) (Milos Djermanovic)
Documentation
d927920docs: fix styles in no-js mode (#18916) (Tanuj Kanti)09bc2a8docs: Update README (GitHub Actions Bot)39089c8docs: addno-useless-computed-keyexamples with object patterns (#19109) (Milos Djermanovic)895c60fdocs: add missing messageId property and suggestion properties (#19122) (fnx)298625edocs: Change CLI -c to use flat config (#19103) (Nicholas C. Zakas)522d8a3docs: add deprecation onindent,quotesandsemirule types (#19090) (Marco Pasqualetti)
Chores
2967d91chore: upgrade @eslint/[email protected] (#19133) (Milos Djermanovic)b441beechore: package.json update for @eslint/js release (Jenkins)7d6bf4achore: upgrade @eslint/[email protected] (#19131) (Milos Djermanovic)902e707chore: upgrade @eslint/[email protected] (#19130) (Milos Djermanovic)5ff6c1dchore: bump cross-spawn (#19125) (Ian Bobinac)cceccc7chore: update dependency @eslint/json to ^0.6.0 (#19117) (renovate[bot])0da3f73chore: update algolia referrer (#19114) (Strek)4f08332ci: unpintrunk-io/trunk-action(#19108) (Francesco Trotta)6b75683perf: optimizetext-tableby replacing regex withtrimEnd(#19061) (Nitin Kumar)
v9.14.0
Features
3fa009ffeat: add support for Import Attributes and RegExp Modifiers (#19076) (Milos Djermanovic)b0faee3feat: add types for the@eslint/jspackage (#19010) (Nitin Kumar)
Bug Fixes
24d0172fix: enable retry concurrency limit for readFile() (#19077) (Nicholas C. Zakas)b442067fix: Don't crash when directory is deleted during traversal. (#19067) (Nicholas C. Zakas)d474443fix: avoid call stack overflow while processing globs (#19035) (Livia Medeiros)
Documentation
151c965docs: updatecontext.languageOptions.parserdescription (#19084) (Nitin Kumar)dc34f94docs: Update README (GitHub Actions Bot)f16e846docs: Update README (GitHub Actions Bot)ee0a77edocs: change link from @types/eslint to lib/types (#19049) (Karl Horky)50f03a1docs: Clarify global ignores in config migration guide (#19032) (Milos Djermanovic)
Build Related
37c9177build: update@wdio/*dependencies (#19068) (Francesco Trotta)35a8858build: exclude flawed dendency versions (#19065) (Francesco Trotta)
Chores
f36cb16chore: upgrade @eslint/[email protected] (#19086) (Milos Djermanovic)28be447chore: package.json update for @eslint/js release (Jenkins)f48a2a0test: addno-invalid-regexptests with RegExp Modifiers (#19075) (Milos Djermanovic)425202eperf: Fix caching in config loaders (#19042) (Milos Djermanovic)3d44b3cci: run tests in Node.js 23 (#19055) (Francesco Trotta)7259627test: ensure tmp directory cleanup incheck-emfile-handling.js(#19036) (Livia Medeiros)
v9.13.0
Features
381c32bfeat: Allow languages to providedefaultLanguageOptions(#19003) (Milos Djermanovic)bf723bdfeat: Improve eslintrc warning message (#19023) (Milos Djermanovic)1def4cdfeat: drop support for jiti v1.21 (#18996) (Francesco Trotta)f879be2feat: exportESLint.defaultConfig(#18983) (Nitin Kumar)
Bug Fixes
78836d4fix: update thecomplexityrule type (#19027) (Nitin Kumar)064c8b6fix: update rule types (#18925) (Nitin Kumar)
Documentation
abdbfa8docs: markLintMessage#nodeTypeas deprecated (#19019) (Nitin Kumar)19e68d3docs: update deprecated rules type definitions (#19018) (Nitin Kumar)7dd402ddocs: Update examples of passing multiple values to a CLI option (#19006) (Milos Djermanovic)5dcbc51docs: Add example with side-effect imports to no-restricted-imports (#18997) (Milos Djermanovic)1ee87cadocs: Update README (GitHub Actions Bot)2c3dbdcdocs: Use prerendered sponsors for README (#18988) (Milos Djermanovic)
Chores
68d2d9dchore: upgrade to@eslint/[email protected]and@eslint/core@^0.7.0(#19034) (Francesco Trotta)2211f0achore: package.json update for @eslint/js release (Jenkins)c7abaefperf: using Node.js compile cache (#19012) (ε―ηΆ)1d7c077chore: add pkg.type "commonjs" (#19011) (ε―ηΆ)468e3bdtest: fixESLinttests (#19021) (Francesco Trotta)ed4635fci: upgrade [email protected] (#18992) (Milos Djermanovic)efad767chore: remove unused ignore dependency (#18993) (Amaresh S M)
v9.12.0
Features
5a6a053feat: update tojitiv2 (#18954) (Arya Emami)17a07fbfeat: Hooks for test cases (RuleTester) (#18771) (Anna Bocharova)2ff0e51feat: Implement alternate config lookup (#18742) (Nicholas C. Zakas)2d17453feat: Implement modified cyclomatic complexity (#18896) (Dmitry Pashkevich)
Bug Fixes
ea380cafix: Upgrade retry to avoid EMFILE errors (#18986) (Nicholas C. Zakas)fdd6319fix: Issues with type definitions (#18940) (Arya Emami)
Documentation
ecbd522docs: Mention code explorer (#18978) (Nicholas C. Zakas)7ea4eccdocs: Clarifying the Use of Meta Objects (#18697) (Amaresh S M)d3e4b2edocs: Clarify how to exclude.jsfiles (#18976) (Milos Djermanovic)57232ffdocs: Mention plugin-kit in language docs (#18973) (Nicholas C. Zakas)b80ed00docs: Update README (GitHub Actions Bot)cb69ab3docs: Update README (GitHub Actions Bot)7fb0d95docs: Update README (GitHub Actions Bot)493348adocs: Update README (GitHub Actions Bot)87a582cdocs: fix typo inid-matchrule (#18944) (Jay)
Chores
555aafdchore: upgrade to@eslint/[email protected](#18987) (Francesco Trotta)873ae60chore: package.json update for @eslint/js release (Jenkins)d0a5414refactor: replace strip-ansi with native module (#18982) (Cristopher)b827029chore: Enable JSON5 linting (#18979) (Milos Djermanovic)8f55ca2chore: Upgrade espree, eslint-visitor-keys, eslint-scope (#18962) (Nicholas C. Zakas)c1a2725chore: update dependency mocha to ^10.7.3 (#18945) (Milos Djermanovic)
v9.11.1
Bug Fixes
20fd916fix: add@eslint/core,@types/estree, &@types/json-schemadeps (#18938) (Nitin Kumar)2738322fix: add missing types forrequire-atomic-updatesrule (#18937) (KristΓ³f PoduszlΓ³)d71ff30fix: add missing types forobject-shorthandrule (#18935) (KristΓ³f PoduszlΓ³)561cadcfix: add missing types forno-unsafe-negationrule (#18932) (KristΓ³f PoduszlΓ³)8843656fix: add missing types forno-underscore-danglerule (#18931) (KristΓ³f PoduszlΓ³)92cde5cfix: add missing types forno-shadowrule (#18930) (KristΓ³f PoduszlΓ³)b3cbe11fix: add missing types forno-sequencesrule (#18929) (KristΓ³f PoduszlΓ³)976f77ffix: add missing types forno-unused-expressionsrule (#18933) (KristΓ³f PoduszlΓ³)
Documentation
Chores
df4a859chore: upgrade @eslint/[email protected] (#18943) (Milos Djermanovic)36d8095chore: package.json update for @eslint/js release (Jenkins)
v9.11.0
Features
ec30c73feat: add "eslint/universal" to exportLinter(#18883) (ε―ηΆ)c591da6feat: Add language to types (#18917) (Nicholas C. Zakas)492eb8ffeat: limit the name given toImportSpecifierinid-length(#18861) (Tanuj Kanti)19c6856feat: Addno-useless-constructorsuggestion (#18799) (Jordan Thomson)a48f8c2feat: add typeFormatterFunction, updateLoadedFormatter(#18872) (Francesco Trotta)
Bug Fixes
5e5f39bfix: add missing types forno-restricted-exportsrule (#18914) (KristΓ³f PoduszlΓ³)8f630ebfix: add missing types forno-param-reassignoptions (#18906) (KristΓ³f PoduszlΓ³)d715781fix: add missing types forno-extra-boolean-castoptions (#18902) (KristΓ³f PoduszlΓ³)2de5742fix: add missing types forno-misleading-character-classoptions (#18905) (KristΓ³f PoduszlΓ³)c153084fix: add missing types forno-implicit-coercionoptions (#18903) (KristΓ³f PoduszlΓ³)fa11b2efix: add missing types forno-empty-functionoptions (#18901) (KristΓ³f PoduszlΓ³)a0deed1fix: add missing types forcamelcaseoptions (#18897) (KristΓ³f PoduszlΓ³)
Documentation
e4e5709docs: correctprefer-object-has-owntype definition comment (#18924) (Nitin Kumar)91cbd18docs: add unicode abbreviations in no-irregular-whitespace rule (#18894) (Alix Royere)59cfc0fdocs: clarifyresultsMetainLoadedFormattertype (#18881) (Milos Djermanovic)adcc50ddocs: Update README (GitHub Actions Bot)4edac1adocs: Update README (GitHub Actions Bot)
Build Related
Chores
ca21a64chore: upgrade @eslint/[email protected] (#18927) (Milos Djermanovic)a10f90achore: package.json update for @eslint/js release (Jenkins)e4e02ccrefactor: Extract processor logic into ProcessorService (#18818) (Nicholas C. Zakas)6d4484dchore: updates for v8.57.1 release (Jenkins)71f37c5refactor: use optional chaining when validating config rules (#18893) (lucasrmendonca)2c2805fchore: Add PR note to all templates (#18892) (Nicholas C. Zakas)7b852cerefactor: useDirectiveclass from@eslint/plugin-kit(#18884) (Milos Djermanovic)d594dddchore: update dependency @eslint/core to ^0.6.0 (#18863) (renovate[bot])78b2421chore: Update change.yml (#18882) (Nicholas C. Zakas)a416f0achore: enable$ExpectTypecomments in .ts files (#18869) (Francesco Trotta)
v8.57.1
Bug Fixes
a19072ffix: add logic to handle fixTypes in the lintText() method (#18900) (Francesco Trotta)04c7188fix: Don't lint same file multiple times (#18899) (Francesco Trotta)87ec3c4fix: do not throw when defining a global named__defineSetter__(#18898) (Francesco Trotta)60a1267fix: Provide helpful error message for nullish configs (#18889) (Milos Djermanovic)a0dea8efix: allownamein global ignores, fix--no-ignorefor non-global (#18875) (Milos Djermanovic)3836bb4fix: do not crash on error infs.walkfilter (#18886) (Milos Djermanovic)2dec349fix: skip processor code blocks that match only universal patterns (#18880) (Milos Djermanovic)
Documentation
6a5add4docs: v8.x Add EOL banner (#18744) (Amaresh S M)b034575docs: v8.x add version support page to the dropdown (#18731) (Amaresh S M)760ef7ddocs: v8.x add version support page in the side navbar (#18740) (Amaresh S M)428b7eadocs: Add Powered by Algolia label to the search (#18658) (Amaresh S M)c68c07fdocs: version selectors synchronization (#18265) (Milos Djermanovic)
Build Related
Chores
140ec45chore: upgrade @eslint/[email protected] (#18913) (Milos Djermanovic)bcdfc04chore: package.json update for @eslint/js release (Jenkins)3f6ce8dchore: pin [email protected] (#18910) (Milos Djermanovic)9f07549chore: ignore/docs/v8.xin link checker (#18660) (Milos Djermanovic)
v9.10.0
Features
301b90dfeat: Add types (#18854) (Nicholas C. Zakas)bcf0df5feat: limit namespace import identifier in id-length rule (#18849) (ChaedongIm)45c18e1feat: addrequireFlagoption torequire-unicode-regexprule (#18836) (Brett Zamir)183b459feat: add error message for duplicate flags inno-invalid-regexp(#18837) (Tanuj Kanti)c69b406feat: report duplicate allowed flags inno-invalid-regexp(#18754) (Tanuj Kanti)
Documentation
bee0e7adocs: update README (#18865) (Milos Djermanovic)5d80b59docs: specify thatruleIdcan benullin custom formatter docs (#18857) (Milos Djermanovic)156b1c3docs: Update README (GitHub Actions Bot)f6fdef9docs: Update README (GitHub Actions Bot)a20c870docs: Update README (GitHub Actions Bot)90e699bdocs: Update README (GitHub Actions Bot)
Chores
24c3ff7chore: upgrade to @eslint/[email protected] (#18866) (Francesco Trotta)1ebdde1chore: package.json update for @eslint/js release (Jenkins)e8fc5bdchore: update dependency @eslint/core to ^0.5.0 (#18848) (renovate[bot])343f992refactor: don't usenode.valuewhen removing unused directives (#18835) (Milos Djermanovic)3db18b0refactor: Extract FileContext into class (#18831) (Nicholas C. Zakas)931d650refactor: Use @eslint/plugin-kit (#18822) (Nicholas C. Zakas)ed5cf0cchore: update dependency @eslint/json to ^0.4.0 (#18829) (Milos Djermanovic)d1f0831chore: added missing ids (#18817) (Strek)ec92813refactor: Config class (#18763) (Nicholas C. Zakas)
v9.9.1
Bug Fixes
Documentation
4840930docs: Update README with version support and clean up content (#18804) (Nicholas C. Zakas)f61f40ddocs: Update globals examples (#18805) (Nicholas C. Zakas)241fceadocs: Use and define languages (#18795) (Nicholas C. Zakas)5dbdd63docs: eslint-plugin-markdown -> @eslint/markdown (#18797) (Nicholas C. Zakas)c6c8ddddocs: update links to eslint-visitor-keys repo (#18796) (Francesco Trotta)f981d05docs: Update README (GitHub Actions Bot)b516974docs: update links toeslint/jsrepo (#18781) (Francesco Trotta)fb7a3f5docs: update note for package managers (#18779) (Jay)
Chores
b0c34d0chore: upgrade to @eslint/[email protected] (#18809) (Francesco Trotta)cd5a0dachore: package.json update for @eslint/js release (Jenkins)e112642refactor: Extract parsing logic from Linter (#18790) (Nicholas C. Zakas)0f68a85chore: use eslint-plugin-yml on yaml files only (#18801) (Milos Djermanovic)f8d1b3cchore: update dependencies for browser tests (#18794) (Christian Bromann)aed2624chore: update dependency @eslint/config-array to ^0.18.0 (#18788) (renovate[bot])5c29128chore: update dependency @eslint/core to ^0.4.0 (#18789) (renovate[bot])5d66fb2chore: migrate linting workflow to use trunk check meta-linter (#18643) (Chris Clearwater)bf96855chore: add ids to github issue templates (#18775) (Strek)
v9.9.0
Features
41d0206feat: Add support for TS config files (#18134) (Arya Emami)3a4eaf9feat: add suggestion torequire-awaitto removeasynckeyword (#18716) (Dave)
Documentation
9fe068cdocs: how to author plugins with configs that extend other configs (#18753) (Alec Gibson)48117b2docs: add version support page in the side navbar (#18738) (Amaresh S M)fec2951docs: add version support page to the dropdown (#18730) (Amaresh S M)38a0661docs: Fix typo (#18735) (Zaina Al Habash)3c32a9edocs: Update yarn command for creating ESLint config (#18739) (Temitope Ogunleye)f9ac978docs: Update README (GitHub Actions Bot)
Chores
461b2c3chore: upgrade to@eslint/[email protected](#18765) (Francesco Trotta)59dba1bchore: package.json update for @eslint/js release (Jenkins)fea8563chore: update dependency @eslint/core to ^0.3.0 (#18724) (renovate[bot])aac191echore: update dependency @eslint/json to ^0.3.0 (#18760) (renovate[bot])b97fa05chore: update wdio dependencies for more stable tests (#18759) (Christian Bromann)