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

Create rule: a11y-no-title-attribute #453

Merged
merged 7 commits into from
Jul 12, 2023

Conversation

kendallgassner
Copy link
Contributor

What

A new rule to guard against the title attribute.

The title attribute is an inaccessible version of a tooltip. It is often used to provide context when text is truncated or add additional context to an interactive element like a link. This practice is exclusionary and prevents keyboard and mobile users from accessing information.

@kendallgassner kendallgassner requested a review from a team as a code owner July 11, 2023 17:02

<!-- end auto-generated rule header -->

The title attribute is strongly discouraged. The only exception is on an `<iframe>` element. It is hardly useful and cannot be accessed by multiple groups of users including keyboard-only users and mobile users.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of this is directly from the rails rule. With the exception of the last sentence.

@@ -76,7 +76,6 @@ module.exports = {
message:
'Avoid visually hidding interactive elements. Visually hiding interactive elements can be confusing to sighted keyboard users as it appears their focus has been lost when they navigate to the hidden element.',
})
return
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just unnessary.

@khiga8
Copy link
Contributor

khiga8 commented Jul 11, 2023

I wonder if title is ever used in Primer React as a prop that means something else 🤔, so we don't accidentally falsely flag it.

Do you know @TylerJDev?

Copy link
Contributor

@khiga8 khiga8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So speeedy! This looks good to me! I have one question, which maybe @TylerJDev knows the answer to?

@TylerJDev
Copy link

TylerJDev commented Jul 11, 2023

@khiga8 SelectPanel uses title for the heading, as well as ActionList for one of the subcomponents. Not sure if there are more instances, but I can gather any additional components that use title as a prop if it's helpful!

@khiga8
Copy link
Contributor

khiga8 commented Jul 11, 2023

Thanks @TylerJDev! I wonder what the best approach would be to minimize false positives?

We could start conservatively and only run this check on HTML elements, if there's a way to identify that easily (all lower case?).

Alternatively, we could create an ignore-list that can be configured.

What do you think @TylerJDev and @kendallgassner?

@kendallgassner
Copy link
Contributor Author

@khiga I lean towards a list of semantic html elements -- its less work to manage.

@TylerJDev
Copy link

I think I prefer the first option of only running this on native HTML elements. I thinking for an ignore list, that should primarily be Primer's responsibility, and might be hard to maintain if we hade on in this repo.

I do wonder if it'd make sense to make a duplicate rule in eslint-plugin-primer-react that would handle the same logic as this rule, but only for Primer components? There's a decent bit of title usage on components that do not support this as a custom prop, so it could be worth it, but would love to know any additional thoughts.

@khiga8
Copy link
Contributor

khiga8 commented Jul 11, 2023

@TylerJDev That sounds good. I think starting with HTML only will minimize false positives so I like that too.

I do wonder if it'd make sense to make a duplicate rule in eslint-plugin-primer-react that would handle the same logic as this rule, but only for Primer components?

If we do introduce an ignore list config for this rule, it could be maintained by eslint-plugin-primer-react in recommended.js, so we wouldn't need to duplicate the rule. eslint-plugin-primer-react already maintains configs for this library (though it's out of date right now).

Note: the config in eslint-plugin-primer-react is out of date and should to be updated as part of primer/eslint-plugin-primer-react#56.

Copy link
Contributor

@khiga8 khiga8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yay!

@kendallgassner kendallgassner merged commit 65fa6f2 into main Jul 12, 2023
@kendallgassner kendallgassner deleted the add-a11y-no-title-attribute branch July 12, 2023 16:02
ianlewis referenced this pull request in slsa-framework/slsa-github-generator Aug 9, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/jest](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`29.5.2` ->
`29.5.3`](https://renovatebot.com/diffs/npm/@types%2fjest/29.5.2/29.5.3)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fjest/29.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fjest/29.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fjest/29.5.2/29.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fjest/29.5.2/29.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`18.16.18` ->
`18.17.4`](https://renovatebot.com/diffs/npm/@types%2fnode/18.16.18/18.17.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/18.17.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/18.17.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/18.16.18/18.17.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/18.16.18/18.17.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/typescript-eslint)
| [`5.60.0` ->
`5.62.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/5.60.0/5.62.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2feslint-plugin/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2feslint-plugin/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2feslint-plugin/5.60.0/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2feslint-plugin/5.60.0/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@typescript-eslint/parser](https://togithub.com/typescript-eslint/typescript-eslint)
| [`5.60.0` ->
`5.62.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/5.60.0/5.62.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2fparser/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2fparser/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2fparser/5.60.0/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2fparser/5.60.0/5.62.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [eslint](https://eslint.org)
([source](https://togithub.com/eslint/eslint)) | [`8.43.0` ->
`8.46.0`](https://renovatebot.com/diffs/npm/eslint/8.43.0/8.46.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint/8.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint/8.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint/8.43.0/8.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint/8.43.0/8.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[eslint-plugin-github](https://togithub.com/github/eslint-plugin-github)
| [`4.8.0` ->
`4.9.2`](https://renovatebot.com/diffs/npm/eslint-plugin-github/4.8.0/4.9.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-plugin-github/4.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-plugin-github/4.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-plugin-github/4.8.0/4.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-plugin-github/4.8.0/4.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [jest](https://jestjs.io/)
([source](https://togithub.com/facebook/jest)) | [`29.5.0` ->
`29.6.2`](https://renovatebot.com/diffs/npm/jest/29.5.0/29.6.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/jest/29.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jest/29.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jest/29.5.0/29.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jest/29.5.0/29.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[sigstore](https://togithub.com/sigstore/sigstore-js/tree/main/packages/client#readme)
([source](https://togithub.com/sigstore/sigstore-js)) | [`1.6.0` ->
`1.8.0`](https://renovatebot.com/diffs/npm/sigstore/1.6.0/1.8.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/sigstore/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/sigstore/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/sigstore/1.6.0/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sigstore/1.6.0/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [ts-jest](https://kulshekhar.github.io/ts-jest)
([source](https://togithub.com/kulshekhar/ts-jest)) | [`29.1.0` ->
`29.1.1`](https://renovatebot.com/diffs/npm/ts-jest/29.1.0/29.1.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/ts-jest/29.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ts-jest/29.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ts-jest/29.1.0/29.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ts-jest/29.1.0/29.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [typescript](https://www.typescriptlang.org/)
([source](https://togithub.com/Microsoft/TypeScript)) | [`5.1.3` ->
`5.1.6`](https://renovatebot.com/diffs/npm/typescript/5.1.3/5.1.6) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.1.3/5.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.1.3/5.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### ⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the
Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>typescript-eslint/typescript-eslint
(@&#8203;typescript-eslint/eslint-plugin)</summary>

###
[`v5.62.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#5620-2023-07-10)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.61.0...v5.62.0)

##### Bug Fixes

- **eslint-plugin:** \[comma-spacing] allow no space after trailing
comma in objects and arrays
([#&#8203;6938](https://togithub.com/typescript-eslint/typescript-eslint/issues/6938))
([24bdacc](https://togithub.com/typescript-eslint/typescript-eslint/commit/24bdacc7e5df40c92031a1bd7e9815d66a35b31d))
- **eslint-plugin:** \[prefer-includes] escape special characters
([#&#8203;7161](https://togithub.com/typescript-eslint/typescript-eslint/issues/7161))
([5a347a5](https://togithub.com/typescript-eslint/typescript-eslint/commit/5a347a5978bc5737412bd12d61eb6058163cf4a0)),
closes
[#&#8203;7145](https://togithub.com/typescript-eslint/typescript-eslint/issues/7145)
- **eslint-plugin:** replace auto-fix of class literal property style
rule with suggestion
([#&#8203;7054](https://togithub.com/typescript-eslint/typescript-eslint/issues/7054))
([a8c824a](https://togithub.com/typescript-eslint/typescript-eslint/commit/a8c824a1e84453f93cd2b464fc102bc878c1aff3))

##### Features

- **eslint-plugin:** \[prefer-nullish-coalescing] add `ignorePrimitives`
option
([#&#8203;6487](https://togithub.com/typescript-eslint/typescript-eslint/issues/6487))
([6edaa04](https://togithub.com/typescript-eslint/typescript-eslint/commit/6edaa04565576f0af7e60bc08602bd781c847804))

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v5.61.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#5610-2023-07-03)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.1...v5.61.0)

##### Features

- **eslint-plugin:** \[ban-types] ban types in extends and implements
([#&#8203;7129](https://togithub.com/typescript-eslint/typescript-eslint/issues/7129))
([997783f](https://togithub.com/typescript-eslint/typescript-eslint/commit/997783ff108ca18af709667ef3fdfa7134a8eefe))
- use graphemer instead of grapheme-splitter
([#&#8203;7069](https://togithub.com/typescript-eslint/typescript-eslint/issues/7069))
([faea3ff](https://togithub.com/typescript-eslint/typescript-eslint/commit/faea3ff8b4d750974c41262b44db314f20d0c99c))

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

####
[5.60.1](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.0...v5.60.1)
(2023-06-26)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v5.60.1`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#5601-2023-06-26)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.0...v5.60.1)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

</details>

<details>
<summary>typescript-eslint/typescript-eslint
(@&#8203;typescript-eslint/parser)</summary>

###
[`v5.62.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#5620-2023-07-10)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.61.0...v5.62.0)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v5.61.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#5610-2023-07-03)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.1...v5.61.0)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

####
[5.60.1](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.0...v5.60.1)
(2023-06-26)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v5.60.1`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#5601-2023-06-26)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v5.60.0...v5.60.1)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

</details>

<details>
<summary>eslint/eslint (eslint)</summary>

### [`v8.46.0`](https://togithub.com/eslint/eslint/releases/tag/v8.46.0)

[Compare
Source](https://togithub.com/eslint/eslint/compare/v8.45.0...v8.46.0)

#### Features

-
[`8a93438`](https://togithub.com/eslint/eslint/commit/8a9343871f7dade19d910ca8e2a4177bfca28b64)
feat: `require-unicode-regexp` support `v` flag
([#&#8203;17402](https://togithub.com/eslint/eslint/issues/17402))
(SUZUKI Sosuke)
-
[`1a2f966`](https://togithub.com/eslint/eslint/commit/1a2f966fabe35103141d2f936180d2f1a72154db)
feat: `no-useless-escape` support `v` flag
([#&#8203;17420](https://togithub.com/eslint/eslint/issues/17420))
(Yosuke Ota)
-
[`ee68d1d`](https://togithub.com/eslint/eslint/commit/ee68d1d9630892d99ae0d8dabe2f9f8d3b1338be)
feat: `no-empty-character-class` support `v` flag
([#&#8203;17419](https://togithub.com/eslint/eslint/issues/17419))
(Milos Djermanovic)
-
[`853d32b`](https://togithub.com/eslint/eslint/commit/853d32baa8934c08b59a738470b72522e1505f6f)
feat: deprecate no-return-await
([#&#8203;17417](https://togithub.com/eslint/eslint/issues/17417))
(Carlos Lopez)
-
[`d4f02e4`](https://togithub.com/eslint/eslint/commit/d4f02e4bf1b9ae4e1fc8f2bc4e4851ae3c36a127)
feat: `no-control-regex` support `v` flag
([#&#8203;17405](https://togithub.com/eslint/eslint/issues/17405))
(Yosuke Ota)
-
[`2a35f3e`](https://togithub.com/eslint/eslint/commit/2a35f3e6ed27deafbebba48b6aec570d3abf9974)
feat: `prefer-named-capture-group` support `v` flag
([#&#8203;17409](https://togithub.com/eslint/eslint/issues/17409))
(Yosuke Ota)
-
[`8ca8b50`](https://togithub.com/eslint/eslint/commit/8ca8b50b0425b3bad34a9505bc3095168e2f59d8)
feat: Better error message for flat config plugins
([#&#8203;17399](https://togithub.com/eslint/eslint/issues/17399))
(Nicholas C. Zakas)
-
[`509f753`](https://togithub.com/eslint/eslint/commit/509f75395035822280245772e2a95732a0dde0e1)
feat: `no-misleading-character-class` support `v` flag
([#&#8203;17406](https://togithub.com/eslint/eslint/issues/17406))
(Yosuke Ota)
-
[`3caf514`](https://togithub.com/eslint/eslint/commit/3caf51487decdf93a4b17765a2af2a51c337e974)
feat: `no-regex-spaces` support `v` flag
([#&#8203;17407](https://togithub.com/eslint/eslint/issues/17407))
(Yosuke Ota)
-
[`b7fad2b`](https://togithub.com/eslint/eslint/commit/b7fad2b52f23667628cf209663795a721c88d0ba)
feat: `prefer-regex-literals` support `v` flag
([#&#8203;17410](https://togithub.com/eslint/eslint/issues/17410))
(Yosuke Ota)
-
[`a6a3ad4`](https://togithub.com/eslint/eslint/commit/a6a3ad4ae438ea7fc3a1d97cd2555f6534b565f1)
feat: `no-useless-backreference` support `v` flag
([#&#8203;17408](https://togithub.com/eslint/eslint/issues/17408))
(Yosuke Ota)
-
[`94954a7`](https://togithub.com/eslint/eslint/commit/94954a715448d5794f2892bf212fe986b43228ed)
feat: `no-invalid-regexp` support `v` flag
([#&#8203;17404](https://togithub.com/eslint/eslint/issues/17404))
(Yosuke Ota)
-
[`1af6eac`](https://togithub.com/eslint/eslint/commit/1af6eac5727080c809e37c07dc729b44ef24483c)
feat: adds option for allowing empty object patterns as parameter
([#&#8203;17365](https://togithub.com/eslint/eslint/issues/17365))
(Tanuj Kanti)
-
[`cf03104`](https://togithub.com/eslint/eslint/commit/cf03104b278fea59ef46e09f667110f5eaaf95e3)
feat: Improve config error messages
([#&#8203;17385](https://togithub.com/eslint/eslint/issues/17385))
(Nicholas C. Zakas)

#### Bug Fixes

-
[`9803c7c`](https://togithub.com/eslint/eslint/commit/9803c7c04078f0672d8a480fd39cf3bbef8017e6)
fix: FlatESLint#getRulesMetaForResults shouldn't throw on unknown rules
([#&#8203;17393](https://togithub.com/eslint/eslint/issues/17393))
(Milos Djermanovic)
-
[`42faa17`](https://togithub.com/eslint/eslint/commit/42faa17b1c93f801b14bea2840d1d528e25c7211)
fix: Update no-loop-func to not overlap with no-undef
([#&#8203;17358](https://togithub.com/eslint/eslint/issues/17358)) (Matt
Wilkinson)

#### Documentation

-
[`4d474e3`](https://togithub.com/eslint/eslint/commit/4d474e351ba6ce0242f18e55c27cb3ae17b84f63)
docs: update with TypeScript info
([#&#8203;17423](https://togithub.com/eslint/eslint/issues/17423))
(James)
-
[`091f44e`](https://togithub.com/eslint/eslint/commit/091f44e4c72007edb2ac6d4db4eafa5501e41e94)
docs: File extension named processor deprecation
([#&#8203;17362](https://togithub.com/eslint/eslint/issues/17362)) (Matt
Wilkinson)
-
[`9254a6c`](https://togithub.com/eslint/eslint/commit/9254a6cea845dfaf2f3f52f718cb9b071853aa09)
docs: Update README (GitHub Actions Bot)
-
[`6d6dc51`](https://togithub.com/eslint/eslint/commit/6d6dc5141f535728029eef8735854a421bc08eba)
docs: fix overlapping of `open in playground` button
([#&#8203;17403](https://togithub.com/eslint/eslint/issues/17403))
(Tanuj Kanti)
-
[`7fc3a2c`](https://togithub.com/eslint/eslint/commit/7fc3a2ce68979a2c2a6fc779e647b3004ab6f4ac)
docs: Add private class features info to no-underscore-dangle
([#&#8203;17386](https://togithub.com/eslint/eslint/issues/17386)) (Matt
Wilkinson)
-
[`da73e58`](https://togithub.com/eslint/eslint/commit/da73e583e1703a420551d8fa8f7c70b56dc88dd5)
docs: Migrating `eslint-env` configuration comments
([#&#8203;17390](https://togithub.com/eslint/eslint/issues/17390))
(Francesco Trotta)
-
[`80dffed`](https://togithub.com/eslint/eslint/commit/80dffed4c81dcc71fb72bc187aff2f87d141a6ed)
docs: fix Ignoring Files section in config migration guide
([#&#8203;17392](https://togithub.com/eslint/eslint/issues/17392))
(Milos Djermanovic)
-
[`8a9abb7`](https://togithub.com/eslint/eslint/commit/8a9abb7cf424bd49d45c09345dc45ae95f29cc9d)
docs: Update README (GitHub Actions Bot)
-
[`7e9be4b`](https://togithub.com/eslint/eslint/commit/7e9be4bd7331d0e8e8e0af0b075a2f6d28d1bea3)
docs: Update README (GitHub Actions Bot)
-
[`0b0bbe0`](https://togithub.com/eslint/eslint/commit/0b0bbe07d4fb0870f3916e975b8ec6978f838077)
docs: Update README (GitHub Actions Bot)

#### Chores

-
[`d1eb7e4`](https://togithub.com/eslint/eslint/commit/d1eb7e46e954c64af8d7d13d087b3a18f43e6d72)
chore: Update ecosystem dependencies
([#&#8203;17427](https://togithub.com/eslint/eslint/issues/17427))
(Nicholas C. Zakas)
-
[`fab9e97`](https://togithub.com/eslint/eslint/commit/fab9e97ef9dff40e98a5b3b97bdd3b0ff5439d46)
chore: package.json update for eslint-config-eslint release (ESLint
Jenkins)
-
[`6246711`](https://togithub.com/eslint/eslint/commit/6246711e0650d03afe044c36acde048ed2d39ee3)
chore: package.json update for
[@&#8203;eslint/js](https://togithub.com/eslint/js) release (ESLint
Jenkins)
-
[`0aa0bc3`](https://togithub.com/eslint/eslint/commit/0aa0bc365a5425440c8e86c96104d0053a51b602)
chore: Add PRs to triage project
([#&#8203;17421](https://togithub.com/eslint/eslint/issues/17421))
(Nicholas C. Zakas)

### [`v8.45.0`](https://togithub.com/eslint/eslint/releases/tag/v8.45.0)

[Compare
Source](https://togithub.com/eslint/eslint/compare/v8.44.0...v8.45.0)

##### Features

-
[`cdd063c`](https://togithub.com/eslint/eslint/commit/cdd063c388bbfe1781d7a864a832f03a2c1cc277)
feat: Expose LegacyESLint in unsupported API
([#&#8203;17341](https://togithub.com/eslint/eslint/issues/17341))
(Nicholas C. Zakas)
-
[`d34abe5`](https://togithub.com/eslint/eslint/commit/d34abe59eb23932dcbc79757d7932d08ee8b20e5)
feat: fix indent rule for else-if
([#&#8203;17318](https://togithub.com/eslint/eslint/issues/17318))
(Milos Djermanovic)

##### Bug Fixes

-
[`b79b6fb`](https://togithub.com/eslint/eslint/commit/b79b6fb64473969b426d086b484d2e29594a5e9a)
fix: Fix suggestion message in `no-useless-escape`
([#&#8203;17339](https://togithub.com/eslint/eslint/issues/17339))
(Francesco Trotta)
-
[`c667055`](https://togithub.com/eslint/eslint/commit/c667055fb9da8ebac3a99f6e5a8b5565cc86af8e)
fix: provide unique `fix` and `fix.range` objects in lint messages
([#&#8203;17332](https://togithub.com/eslint/eslint/issues/17332))
(Milos Djermanovic)

##### Documentation

-
[`89f3225`](https://togithub.com/eslint/eslint/commit/89f3225108c66425e4132f76db6c1ab13aac98d7)
docs: add playground links to correct and incorrect code blocks
([#&#8203;17306](https://togithub.com/eslint/eslint/issues/17306)) (Josh
Goldberg ✨)
-
[`f8892b5`](https://togithub.com/eslint/eslint/commit/f8892b52920b8967f9e7bec23c75b74e03977d6b)
docs: Expand rule option schema docs
([#&#8203;17198](https://togithub.com/eslint/eslint/issues/17198)) (Matt
Wilkinson)
-
[`8bcbf11`](https://togithub.com/eslint/eslint/commit/8bcbf11b6050418262ffa8e0ca37f365ae92e7ce)
docs: Config Migration Guide
([#&#8203;17230](https://togithub.com/eslint/eslint/issues/17230)) (Ben
Perlmutter)
-
[`bb30908`](https://togithub.com/eslint/eslint/commit/bb3090897166dbfd2931a43a70e2a5c1f3fa0a07)
docs: Update README (GitHub Actions Bot)
-
[`84d243b`](https://togithub.com/eslint/eslint/commit/84d243b245b01b667f0752b592e8bda02a9aa2b1)
docs: Update README (GitHub Actions Bot)
-
[`b762632`](https://togithub.com/eslint/eslint/commit/b762632298f20c4f81e7d01ab850c3f5e3874637)
docs: Update README (GitHub Actions Bot)
-
[`138c096`](https://togithub.com/eslint/eslint/commit/138c096bc9468b553dbafc0e573c6522a17a7922)
docs: add more prefer-destructuring examples with array destructuring
([#&#8203;17330](https://togithub.com/eslint/eslint/issues/17330))
(Milos Djermanovic)
-
[`1fc50a8`](https://togithub.com/eslint/eslint/commit/1fc50a89753346f4f4c786ffd20ac4cf185bb036)
docs: `max-len` rule `code` and `tabWidth` as positional arguments
([#&#8203;17331](https://togithub.com/eslint/eslint/issues/17331))
(Jesús Leganés-Combarro)

##### Chores

-
[`68f63d7`](https://togithub.com/eslint/eslint/commit/68f63d76ce785fab4f42b76f1599026eea379bf7)
chore: package.json update for
[@&#8203;eslint/js](https://togithub.com/eslint/js) release (ESLint
Jenkins)
-
[`5ca9b4d`](https://togithub.com/eslint/eslint/commit/5ca9b4d29f747e9cf5c9055e85c93b3b605d57fc)
chore: update eslint-config-eslint exports
([#&#8203;17336](https://togithub.com/eslint/eslint/issues/17336))
(Milos Djermanovic)
-
[`7bf2e86`](https://togithub.com/eslint/eslint/commit/7bf2e86022c9e95db4ca1472fddfa2ea4edd1870)
chore: remove unused dependencies
([#&#8203;17352](https://togithub.com/eslint/eslint/issues/17352))
(Percy Ma)
-
[`c6f8cd0`](https://togithub.com/eslint/eslint/commit/c6f8cd0d62e4a3c314c6860ff367490bbd05325a)
chore: Remove `defaultIgnores` from FlatESLint private members
([#&#8203;17349](https://togithub.com/eslint/eslint/issues/17349))
(Francesco Trotta)
-
[`0052374`](https://togithub.com/eslint/eslint/commit/0052374035672efe9129343fc00ee51a4c288ff3)
chore: move jsdoc settings to eslint-config-eslint
([#&#8203;17338](https://togithub.com/eslint/eslint/issues/17338)) (唯然)

### [`v8.44.0`](https://togithub.com/eslint/eslint/releases/tag/v8.44.0)

[Compare
Source](https://togithub.com/eslint/eslint/compare/v8.43.0...v8.44.0)

#### Features

-
[`1766771`](https://togithub.com/eslint/eslint/commit/176677180a4a1209fc192771521c9192e1f67578)
feat: add `es2023` and `es2024` environments
([#&#8203;17328](https://togithub.com/eslint/eslint/issues/17328))
(Milos Djermanovic)
-
[`4c50400`](https://togithub.com/eslint/eslint/commit/4c5040022639ae804c15b366afc6e64982bd8ae3)
feat: add `ecmaVersion: 2024`, regexp `v` flag parsing
([#&#8203;17324](https://togithub.com/eslint/eslint/issues/17324))
(Milos Djermanovic)
-
[`4d411e4`](https://togithub.com/eslint/eslint/commit/4d411e4c7063274d6d346f1b7ee46f7575d0bbd2)
feat: add ternaryOperandBinaryExpressions option to no-extra-parens rule
([#&#8203;17270](https://togithub.com/eslint/eslint/issues/17270))
(Percy Ma)
-
[`c8b1f4d`](https://togithub.com/eslint/eslint/commit/c8b1f4d61a256727755d561bf53f889b6cd712e0)
feat: Move `parserServices` to `SourceCode`
([#&#8203;17311](https://togithub.com/eslint/eslint/issues/17311))
(Milos Djermanovic)
-
[`ef6e24e`](https://togithub.com/eslint/eslint/commit/ef6e24e42670f321d996948623846d9caaedac99)
feat: treat unknown nodes as having the lowest precedence
([#&#8203;17302](https://togithub.com/eslint/eslint/issues/17302)) (Brad
Zacher)
-
[`1866e1d`](https://togithub.com/eslint/eslint/commit/1866e1df6175e4ba0ae4a0d88dc3c956bb310035)
feat: allow flat config files to export a Promise
([#&#8203;17301](https://togithub.com/eslint/eslint/issues/17301))
(Milos Djermanovic)

#### Bug Fixes

-
[`a36bcb6`](https://togithub.com/eslint/eslint/commit/a36bcb67f26be42c794797d0cc9948b9cfd4ff71)
fix: no-unused-vars false positive with logical assignment operators
([#&#8203;17320](https://togithub.com/eslint/eslint/issues/17320))
(Gweesin Chan)
-
[`7620b89`](https://togithub.com/eslint/eslint/commit/7620b891e81c234f30f9dbcceb64a05fd0dde65e)
fix: Remove `no-unused-labels` autofix before potential directives
([#&#8203;17314](https://togithub.com/eslint/eslint/issues/17314))
(Francesco Trotta)
-
[`391ed38`](https://togithub.com/eslint/eslint/commit/391ed38b09bd1a3abe85db65b8fcda980ab3d6f4)
fix: Remove `no-extra-semi` autofix before potential directives
([#&#8203;17297](https://togithub.com/eslint/eslint/issues/17297))
(Francesco Trotta)

#### Documentation

-
[`526e911`](https://togithub.com/eslint/eslint/commit/526e91106e6fe101578e9478a9d7f4844d4f72ac)
docs: resubmit pr 17115 doc changes
([#&#8203;17291](https://togithub.com/eslint/eslint/issues/17291)) (唯然)
-
[`e1314bf`](https://togithub.com/eslint/eslint/commit/e1314bf85a52bb0d05b1c9ca3b4c1732bae22172)
docs: Integration section and tutorial
([#&#8203;17132](https://togithub.com/eslint/eslint/issues/17132)) (Ben
Perlmutter)
-
[`19a8c5d`](https://togithub.com/eslint/eslint/commit/19a8c5d84596a9f7f2aa428c1696ba86daf854e6)
docs: Update README (GitHub Actions Bot)

#### Chores

-
[`49e46ed`](https://togithub.com/eslint/eslint/commit/49e46edf3c8dc71d691a97fc33b63ed80ae0db0c)
chore: upgrade
[@&#8203;eslint/js](https://togithub.com/eslint/js)[@&#8203;8](https://togithub.com/8).44.0
([#&#8203;17329](https://togithub.com/eslint/eslint/issues/17329))
(Milos Djermanovic)
-
[`a1cb642`](https://togithub.com/eslint/eslint/commit/a1cb6421f9d185901cd99e5f696e912226ef6632)
chore: package.json update for
[@&#8203;eslint/js](https://togithub.com/eslint/js) release (ESLint
Jenkins)
-
[`840a264`](https://togithub.com/eslint/eslint/commit/840a26462bbf6c27c52c01b85ee2018062157951)
test: More test cases for no-case-declarations
([#&#8203;17315](https://togithub.com/eslint/eslint/issues/17315))
(Elian Cordoba)
-
[`e6e74f9`](https://togithub.com/eslint/eslint/commit/e6e74f9eef0448129dd4775628aba554a2d8c8c9)
chore: package.json update for eslint-config-eslint release (ESLint
Jenkins)
-
[`eb3d794`](https://togithub.com/eslint/eslint/commit/eb3d7946e1e9f70254008744dba2397aaa730114)
chore: upgrade semver@7.5.3
([#&#8203;17323](https://togithub.com/eslint/eslint/issues/17323))
(Ziyad El Abid)
-
[`cf88439`](https://togithub.com/eslint/eslint/commit/cf884390ad8071d88eae05df9321100f1770363d)
chore: upgrade optionator@0.9.3
([#&#8203;17319](https://togithub.com/eslint/eslint/issues/17319))
(Milos Djermanovic)
-
[`9718a97`](https://togithub.com/eslint/eslint/commit/9718a9781d69d2c40b68c631aed97700b32c0082)
refactor: remove unnecessary code in `flat-eslint.js`
([#&#8203;17308](https://togithub.com/eslint/eslint/issues/17308))
(Milos Djermanovic)
-
[`f82e56e`](https://togithub.com/eslint/eslint/commit/f82e56e9acfb9562ece76441472d5657d7d5e296)
perf: various performance improvements
([#&#8203;17135](https://togithub.com/eslint/eslint/issues/17135))
(moonlightaria)
-
[`da81e66`](https://togithub.com/eslint/eslint/commit/da81e66e22b4f3d3fe292cf70c388753304deaad)
chore: update eslint-plugin-jsdoc to 46.2.5
([#&#8203;17245](https://togithub.com/eslint/eslint/issues/17245)) (唯然)
-
[`b991640`](https://togithub.com/eslint/eslint/commit/b991640176d5dce4750f7cc71c56cd6f284c882f)
chore: switch eslint-config-eslint to the flat format
([#&#8203;17247](https://togithub.com/eslint/eslint/issues/17247)) (唯然)

</details>

<details>
<summary>github/eslint-plugin-github (eslint-plugin-github)</summary>

###
[`v4.9.2`](https://togithub.com/github/eslint-plugin-github/releases/tag/v4.9.2)

[Compare
Source](https://togithub.com/github/eslint-plugin-github/compare/v4.9.1...v4.9.2)

#### What's Changed

- Use `getLiteralPropValue` for sr-only class by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/466](https://togithub.com/github/eslint-plugin-github/pull/466)

**Full Changelog**:
github/eslint-plugin-github@v4.9.1...v4.9.2

###
[`v4.9.1`](https://togithub.com/github/eslint-plugin-github/releases/tag/v4.9.1)

[Compare
Source](https://togithub.com/github/eslint-plugin-github/compare/v4.9.0...v4.9.1)

#### Bug fixes

This release includes bug fixes for a few accessibility rules including:
`a11y-aria-role-supports-props`, `a11y-no-title-attribute`, and
`jsx-a11y/no-interactive-element-to-noninteractive-role`.

#### What's Changed

- Ignore calls to a method named innerText by
[@&#8203;camchenry](https://togithub.com/camchenry) in
[https://github.com/github/eslint-plugin-github/pull/455](https://togithub.com/github/eslint-plugin-github/pull/455)
- bump `prettier` and `eslint-plugin-prettier` to latest versions by
[@&#8203;shiftkey](https://togithub.com/shiftkey) in
[https://github.com/github/eslint-plugin-github/pull/457](https://togithub.com/github/eslint-plugin-github/pull/457)
- chore(deps): bump the all-dependencies group with 5 updates by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/github/eslint-plugin-github/pull/458](https://togithub.com/github/eslint-plugin-github/pull/458)
- Set config override for false positive rule by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/460](https://togithub.com/github/eslint-plugin-github/pull/460)
- Re-introduce accidentally removed testing commands by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/459](https://togithub.com/github/eslint-plugin-github/pull/459)
- Fix bugs with `getRole` and `getElementType` by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/461](https://togithub.com/github/eslint-plugin-github/pull/461)
- \[Fix] Only look at semantic elements for `a11y-no-title-attribute` by
[@&#8203;kendallgassner](https://togithub.com/kendallgassner) in
[https://github.com/github/eslint-plugin-github/pull/464](https://togithub.com/github/eslint-plugin-github/pull/464)
- Check for presence of attribute in `getRole` rather than the value by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/463](https://togithub.com/github/eslint-plugin-github/pull/463)

#### New Contributors

- [@&#8203;camchenry](https://togithub.com/camchenry) made their first
contribution in
[https://github.com/github/eslint-plugin-github/pull/455](https://togithub.com/github/eslint-plugin-github/pull/455)
- [@&#8203;shiftkey](https://togithub.com/shiftkey) made their first
contribution in
[https://github.com/github/eslint-plugin-github/pull/457](https://togithub.com/github/eslint-plugin-github/pull/457)

**Full Changelog**:
github/eslint-plugin-github@v4.9.0...v4.9.1

###
[`v4.9.0`](https://togithub.com/github/eslint-plugin-github/releases/tag/v4.9.0)

[Compare
Source](https://togithub.com/github/eslint-plugin-github/compare/v4.8.0...v4.9.0)

#### What's Changed

- create rule: github/a11y-no-visually-hidden-interactive-element by
[@&#8203;kendallgassner](https://togithub.com/kendallgassner) in
[https://github.com/github/eslint-plugin-github/pull/446](https://togithub.com/github/eslint-plugin-github/pull/446)
- Add polymorphic component check in `getElementType` by
[@&#8203;kendallgassner](https://togithub.com/kendallgassner) in
[https://github.com/github/eslint-plugin-github/pull/449](https://togithub.com/github/eslint-plugin-github/pull/449)
- Adds `svg-has-accessible-name` rule by
[@&#8203;lindseywild](https://togithub.com/lindseywild) in
[https://github.com/github/eslint-plugin-github/pull/450](https://togithub.com/github/eslint-plugin-github/pull/450)
- chore(deps): bump semver from 5.7.1 to 5.7.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/github/eslint-plugin-github/pull/451](https://togithub.com/github/eslint-plugin-github/pull/451)
- Create rule: a11y-no-title-attribute by
[@&#8203;kendallgassner](https://togithub.com/kendallgassner) in
[https://github.com/github/eslint-plugin-github/pull/453](https://togithub.com/github/eslint-plugin-github/pull/453)
- Bump aria-query and update to fix tests by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/448](https://togithub.com/github/eslint-plugin-github/pull/448)
- Rename `role-supports-aria-props` to `a11y-` by
[@&#8203;khiga8](https://togithub.com/khiga8) in
[https://github.com/github/eslint-plugin-github/pull/454](https://togithub.com/github/eslint-plugin-github/pull/454)

#### New Contributors

- [@&#8203;kendallgassner](https://togithub.com/kendallgassner) made
their first contribution in
[https://github.com/github/eslint-plugin-github/pull/446](https://togithub.com/github/eslint-plugin-github/pull/446)
- [@&#8203;lindseywild](https://togithub.com/lindseywild) made their
first contribution in
[https://github.com/github/eslint-plugin-github/pull/450](https://togithub.com/github/eslint-plugin-github/pull/450)

**Full Changelog**:
github/eslint-plugin-github@v4.8.0...v4.9.0

</details>

<details>
<summary>facebook/jest (jest)</summary>

###
[`v29.6.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2962)

[Compare
Source](https://togithub.com/facebook/jest/compare/v29.6.1...v29.6.2)

##### Fixes

- `[jest-circus]` Fix snapshot matchers in concurrent tests when nr of
tests exceeds `maxConcurrency`
([#&#8203;14335](https://togithub.com/jestjs/jest/pull/14335))
- `[@jest/core]` When running global setup and teardown, do not try to
change the `message` property of the thrown error object when the
`message` property is unwritable
([#&#8203;14113](https://togithub.com/jestjs/jest/pull/14113))
- `[jest-snapshot]` Move `@types/prettier` from `dependencies` to
`devDependencies`
([#&#8203;14328](https://togithub.com/jestjs/jest/pull/14328))
- `[jest-snapshot]` Throw an explicit error if Prettier v3 is used
([#&#8203;14367](https://togithub.com/jestjs/jest/pull/14367))
- `[jest-reporters]` Add "skipped" and "todo" symbols to Github Actions
Reporter ([#&#8203;14309](https://togithub.com/jestjs/jest/pull/14309))

##### Chore & Maintenance

- `[@jest/core]` Use `pluralize` from `jest-util` rather than own
internal ([#&#8203;14322](https://togithub.com/jestjs/jest/pull/14322))

###
[`v29.6.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2961)

[Compare
Source](https://togithub.com/facebook/jest/compare/v29.6.0...v29.6.1)

##### Fixes

- `[jest-circus]` Revert
[#&#8203;14110](https://togithub.com/jestjs/jest/pull/14110) as it was a
breaking change
([#&#8203;14304](https://togithub.com/jestjs/jest/pull/14304))

###
[`v29.6.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2960)

[Compare
Source](https://togithub.com/facebook/jest/compare/v29.5.0...v29.6.0)

##### Features

- `[jest-circus, jest-snapshot]` Add support for snapshot matchers in
concurrent tests
([#&#8203;14139](https://togithub.com/jestjs/jest/pull/14139))
- `[jest-cli]` Include type definitions to generated config files
([#&#8203;14078](https://togithub.com/facebook/jest/pull/14078))
- `[jest-snapshot]` Support arrays as property matchers
([#&#8203;14025](https://togithub.com/facebook/jest/pull/14025))
- `[jest-core, jest-circus, jest-reporter, jest-runner]` Added support
for reporting about start individual test cases using jest-circus
([#&#8203;14174](https://togithub.com/jestjs/jest/pull/14174))

##### Fixes

- `[jest-circus]` Prevent false test failures caused by promise
rejections handled asynchronously
([#&#8203;14110](https://togithub.com/jestjs/jest/pull/14110))
- `[jest-config]` Handle frozen config object
([#&#8203;14054](https://togithub.com/facebook/jest/pull/14054))
- `[jest-config]` Allow `coverageDirectory` and `collectCoverageFrom` in
project config
([#&#8203;14180](https://togithub.com/jestjs/jest/pull/14180))
- `[jest-core]` Always use workers in watch mode to avoid crashes
([#&#8203;14059](https://togithub.com/facebook/jest/pull/14059)).
- `[jest-environment-jsdom, jest-environment-node]` Fix assignment of
`customExportConditions` via `testEnvironmentOptions` when custom env
subclass defines a default value
([#&#8203;13989](https://togithub.com/facebook/jest/pull/13989))
- `[jest-matcher-utils]` Fix copying value of inherited getters
([#&#8203;14007](https://togithub.com/facebook/jest/pull/14007))
- `[jest-mock]` Tweak typings to allow `jest.replaceProperty()` replace
methods ([#&#8203;14008](https://togithub.com/facebook/jest/pull/14008))
- `[jest-mock]` Improve user input validation and error messages of
`spyOn` and `replaceProperty` methods
([#&#8203;14087](https://togithub.com/facebook/jest/pull/14087))
- `[jest-runtime]` Bind `jest.isolateModulesAsync` to `this`
([#&#8203;14083](https://togithub.com/facebook/jest/pull/14083))
- `[jest-runtime]` Forward `wrapperLength` to the `Script` constructor
as `columnOffset` for accurate debugging
([#&#8203;14148](https://togithub.com/facebook/jest/pull/14148))
- `[jest-runtime]` Guard `_isMockFunction` access with `in`
([#&#8203;14188](https://togithub.com/facebook/jest/pull/14188))
- `[jest-snapshot]` Fix a potential bug when not using prettier and
improve performance
([#&#8203;14036](https://togithub.com/facebook/jest/pull/14036))
- `[@jest/transform]` Do not instrument `.json` modules
([#&#8203;14048](https://togithub.com/facebook/jest/pull/14048))
- `[jest-worker]` Restart a shut down worker before sending it a task
([#&#8203;14015](https://togithub.com/facebook/jest/pull/14015))

##### Chore & Maintenance

- `[*]` Update `semver` dependency to get vulnerability fix
([#&#8203;14262](https://togithub.com/jestjs/jest/pull/14262))
- `[docs]` Updated documentation for the `--runTestsByPath` CLI command
([#&#8203;14004](https://togithub.com/facebook/jest/pull/14004))
- `[docs]` Updated documentation regarding the synchronous fallback when
asynchronous code transforms are unavailable
([#&#8203;14056](https://togithub.com/facebook/jest/pull/14056))
- `[docs]` Update jest statistics of use and downloads in website Index.

</details>

<details>
<summary>sigstore/sigstore-js (sigstore)</summary>

###
[`v1.8.0`](https://togithub.com/sigstore/sigstore-js/releases/tag/sigstore%401.8.0)

[Compare
Source](https://togithub.com/sigstore/sigstore-js/compare/sigstore@1.7.0...sigstore@1.8.0)

##### Minor Changes

- [`f1b8bad`](https://togithub.com/sigstore/sigstore-js/commit/f1b8bad):
Support for verifying v0.2 Sigstore bundles that contain inclusion
proofs from Rekor
- [`d9b1540`](https://togithub.com/sigstore/sigstore-js/commit/d9b1540):
Integrate
[@&#8203;sigstore/bundle](https://togithub.com/sigstore/bundle) package

##### Patch Changes

- [`e0c16ec`](https://togithub.com/sigstore/sigstore-js/commit/e0c16ec):
Bump
[@&#8203;sigstore/protobuf-specs](https://togithub.com/sigstore/protobuf-specs)
from 0.1.0 to 0.2.0
- [`6abe9ec`](https://togithub.com/sigstore/sigstore-js/commit/6abe9ec):
Fix bug when setting `tlogThreshold`/`ctLogThreshold` verification
options to 0
- Updated dependencies
\[[`e0c16ec`](https://togithub.com/sigstore/sigstore-js/commit/e0c16ec)]
- Updated dependencies
\[[`f1b8bad`](https://togithub.com/sigstore/sigstore-js/commit/f1b8bad)]
- Updated dependencies
\[[`a388e25`](https://togithub.com/sigstore/sigstore-js/commit/a388e25)]
- Updated dependencies
\[[`e0c16ec`](https://togithub.com/sigstore/sigstore-js/commit/e0c16ec)]
- Updated dependencies
\[[`2a5f500`](https://togithub.com/sigstore/sigstore-js/commit/2a5f500)]
- Updated dependencies
\[[`2a869ba`](https://togithub.com/sigstore/sigstore-js/commit/2a869ba)]
-
[@&#8203;sigstore/bundle](https://togithub.com/sigstore/bundle)[@&#8203;1](https://togithub.com/1).0.0
-
[@&#8203;sigstore/tuf](https://togithub.com/sigstore/tuf)[@&#8203;1](https://togithub.com/1).0.3

###
[`v1.7.0`](https://togithub.com/sigstore/sigstore-js/releases/tag/sigstore%401.7.0)

[Compare
Source](https://togithub.com/sigstore/sigstore-js/compare/sigstore@1.6.0...sigstore@1.7.0)

##### Minor Changes

- [`f374dd3`](https://togithub.com/sigstore/sigstore-js/commit/f374dd3):
Include transparency log inclusion proof in Sigstore bundle
- [`fbfb315`](https://togithub.com/sigstore/sigstore-js/commit/fbfb315):
Exports new `createVerifier` function

##### Patch Changes

- [`bd1e1e1`](https://togithub.com/sigstore/sigstore-js/commit/bd1e1e1):
Internal refactoring of Typescript types
- Updated dependencies
\[[`b97be71`](https://togithub.com/sigstore/sigstore-js/commit/b97be71)]
-
[@&#8203;sigstore/tuf](https://togithub.com/sigstore/tuf)[@&#8203;1](https://togithub.com/1).0.1

</details>

<details>
<summary>kulshekhar/ts-jest (ts-jest)</summary>

###
[`v29.1.1`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2911-2023-06-23)

[Compare
Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.1.0...v29.1.1)

##### Security Fixes

-   bump `semver` to `7.5.3`

</details>

<details>
<summary>Microsoft/TypeScript (typescript)</summary>

###
[`v5.1.6`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.1.6):
TypeScript 5.1.6

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v5.1.5...v5.1.6)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript v5.1.0
(Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.0%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.1
(RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.1%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.2
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.2%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.3
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.3%22+is%3Aclosed+).
- (5.1.4 [intentionally
skipped](https://togithub.com/microsoft/TypeScript/issues/53031#issuecomment-1610038922))
- [fixed issues query for Typescript v5.1.5
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.5%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.6
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.6%22+is%3Aclosed+).

Downloads are available on
[npm](https://www.npmjs.com/package/typescript)

###
[`v5.1.5`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.1.5):
TypeScript 5.1.5

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v5.1.3...v5.1.5)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript v5.1.0
(Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.0%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.1
(RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.1%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.2
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.2%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.1.3
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.3%22+is%3Aclosed+).
- (5.1.4 [intentionally
skipped](https://togithub.com/microsoft/TypeScript/issues/53031#issuecomment-1610038922))
- [fixed issues query for Typescript v5.1.5
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.1.5%22+is%3Aclosed+).

Downloads are available on:

-   [npm](https://www.npmjs.com/package/typescript)
- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/slsa-framework/slsa-github-generator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4yNy4xIiwidXBkYXRlZEluVmVyIjoiMzYuMjcuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

---------

Signed-off-by: Mend Renovate <bot@renovateapp.com>
Signed-off-by: Ian Lewis <ianlewis@google.com>
Co-authored-by: Ian Lewis <ianlewis@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants