Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 8, 2026

Bumps @primer/react from 38.5.0 to 38.7.0.

Release notes

Sourced from @​primer/react's releases.

@​primer/react@​38.7.0

Minor Changes

Patch Changes

  • #7354 efbebdf Thanks @​llastflowers! - update SelectPanel Multi Select Modal story

  • #7426 094be60 Thanks @​kelsey-myers! - Add focusPrependedElements prop to useFocusZone, FilteredActionList, and SelectPanel

  • #7349 713d5a5 Thanks @​mattcosta7! - PageLayout: Optimize drag/resize performance with inline styles and new optimizations

    Refactored:

    • Use direct attribute selectors (.Pane[data-dragging='true']) instead of descendant selectors for CSS containment (O(1) vs O(n) selector matching)
    • Extract optimization utilities to paneUtils.ts
    • Apply drag handle visual feedback via inline styles and CSS variables

    Added:

    • content-visibility: auto during drag/resize to skip off-screen content rendering
    • rAF throttle for drag updates (one update per frame, latest position wins)
    • Containment during window resize (parity with drag)

    These changes improve style recalculation performance on large DOMs (100k+ nodes) by eliminating descendant selector traversal.

  • #7337 de970d6 Thanks @​mattcosta7! - perf(Autocomplete): Split context to reduce unnecessary re-renders

    Split AutocompleteContext into separate contexts for static values, setters, and dynamic state. Components now subscribe only to the context slices they need, reducing re-renders.

  • #7325 cc7e10e Thanks @​mattcosta7! - perf(BaseStyles): Remove expensive :has([data-color-mode]) selectors

    Remove :has([data-color-mode]) selectors that scanned the entire DOM on every style recalculation. Input color-scheme is already handled by global selectors in the codebase.

  • #7329 501a41f Thanks @​mattcosta7! - perf(Dialog): Add feature flag for CSS :has() selector performance optimization

    • Add primer_react_css_has_selector_perf feature flag (default: false)
    • When flag is OFF: uses legacy body:has(.Dialog.DisableScroll) selector
    • When flag is ON: uses optimized direct body[data-dialog-scroll-disabled] data attribute with ref counting
    • Enables gradual rollout and easy rollback of performance optimization
  • #7342 a8b42b2 Thanks @​mattcosta7! - perf(hasInteractiveNodes): Optimize with combined selector and early attribute checks

    • Use combined querySelectorAll selector instead of recursive traversal
    • Check attribute-based states (disabled, hidden, inert) before getComputedStyle
    • Only call getComputedStyle when CSS-based visibility check is needed

... (truncated)

Commits
  • 428469d Release tracking (#7365)
  • 027562e Revert "ToggleSwitch: Add overflow: hidden to .StatusTextItem" (#7428)
  • 094be60 Add focusPrependedElements prop to useFocusZone, FilteredActionList, and Sele...
  • d418509 Adds character counts to TextArea and TextInput components (#7293)
  • cb0e5a5 chore(deps): bump zod from 4.1.13 to 4.3.5 (#7423)
  • 7a682d0 ActionBar: Add ability to change focus target on menu close (#7400)
  • 713d5a5 refactor(PageLayout): drag/resize performance with inline styles and O(1) CSS...
  • 06c8320 ToggleSwitch: Add overflow: hidden to .StatusTextItem (#7399)
  • 501a41f perf(Dialog): Replace body:has() with direct class and scope footer selector ...
  • cc7e10e perf(BaseStyles): Remove expensive :has([data-color-mode]) selectors (#7325)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [@primer/react](https://github.com/primer/react) from 38.5.0 to 38.7.0.
- [Release notes](https://github.com/primer/react/releases)
- [Commits](https://github.com/primer/react/compare/@primer/react@38.5.0...@primer/react@38.7.0)

---
updated-dependencies:
- dependency-name: "@primer/react"
  dependency-version: 38.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jan 8, 2026
@dependabot dependabot bot requested a review from a team as a code owner January 8, 2026 07:17
@dependabot dependabot bot requested a review from jonrohan January 8, 2026 07:17
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jan 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant