Skip to content

chore(deps): update npm deps - #98

Open
renovate[bot] wants to merge 1 commit into
devfrom
renovate/npm-deps
Open

renovate[bot] wants to merge 1 commit into
devfrom
renovate/npm-deps

Conversation

@renovate

@renovate renovate Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@playwright/test (source) ^1.63.0 → ^1.64.1 age confidence
@tailwindcss/vite (source) ^4.3.3 → ^4.3.4 age confidence
@tanstack/eslint-plugin-query (source) ^5.104.1 → ^5.105.3 age confidence
@tanstack/react-query (source) ^5.104.1 → ^5.105.3 age confidence
@tanstack/react-router (source) ^1.170.41 → ^1.170.46 age confidence
@testing-library/user-event ^14.6.7 → ^14.6.8 age confidence
@vitejs/plugin-react (source) ^6.1.1 → ^6.2.1 age confidence
eslint (source) ^10.12.0 → ^10.14.0 age confidence
eslint-plugin-react-compiler (source) ^19.1.0-rc.3 → ^19.1.0-rc.1-rc-af1b7da-20250421 age confidence
globals ^17.13.0 → ^17.14.0 age confidence
i18next (source) ^26.4.2 → ^26.7.1 age confidence
jsdom ^30.1.2 → ^30.1.3 age confidence
lucide-react (source) ^1.52.0 → ^1.68.0 age confidence
radix-ui (source) ^1.6.7 → ^1.8.1 age confidence
react (source) ^19.3.0 → ^19.3.1 age confidence
react-dom (source) ^19.3.0 → ^19.3.1 age confidence
react-i18next ^17.0.15 → ^17.1.12 age confidence
shadcn (source) ^4.21.1 → ^4.23.0 age confidence
tailwindcss (source) ^4.3.3 → ^4.3.4 age confidence
typescript-eslint (source) ^8.71.0 → ^8.72.1 age confidence
vite (source) ^8.3.2 → ^8.3.5 age confidence
vitest (source) ^5.0.3 → ^5.1.0 age confidence
zod (source) ^4.6.5 → ^4.6.7 age confidence

Release Notes

microsoft/playwright (@​playwright/test)

v1.64.1

Compare Source

Bug Fixes
  • #​43247 [Bug]: _electron.launch intermittently loses a packaged app's first window since 1.64.0
  • #​43242 [Regression]: Chromium 155+ aborts a preflighted cross-origin redirect whenever any route is registered (net::ERR_ABORTED)

v1.64.0

Compare Source

🧰 WebMCP

New page.webmcp and frame.webmcp give access to the tools that a page registers through the experimental WebMCP browser API, so you can test them like any other part of your app:

const browser = await chromium.launch({ args: ['--enable-features=WebMCP'] });
const page = await browser.newPage();
await page.goto('https://example.com');

for (const tool of await page.webmcp.tools())
  console.log(tool.name, tool.description);

const result = await page.webmcp.callTool('add', { a: 2, b: 40 });
console.log(result.content[0].text); // "42"

Playwright MCP also supports WebMCP by default, with page-defined tools offered to the agent as webmcp_<tool>. Pass --no-webmcp to opt out.

playwright-cli exposes them as well:

playwright-cli webmcp-list
playwright-cli webmcp-call search_catalog --params '{"query":"cats"}'

🎬 Better videos

Videos can now be recorded at a custom frame rate, and the decorations for actions are styled with plain CSS:

// playwright.config.ts
import { defineConfig } from '@playwright/test';

export default defineConfig({
  use: {
    video: {
      mode: 'on',
      size: { width: 1920, height: 1080 },
      fps: 60,
      show: {
        actions: {
          style: {
            point: 'width: 20px; height: 20px; border-radius: 50%; background: red',
            highlight: 'outline: 2px solid #&#8203;333; background: rgba(0, 128, 255, .15)',
            title: 'font-size: 16px',
          },
        },
      },
    },
  },
});
  • New fps option in testOptions.video, recordVideo and
    screencast.start(). Firefox and WebKit currently capture up to 25 frames per second.
  • New style option takes CSS declarations for the point marker, the target
    highlight and the action title. It replaces the fontSize option, which is now deprecated.
  • The cursor stays visible at the last action point, survives navigations and travels along a natural, eased path.
  • Videos are encoded with VP9 instead of VP8, which takes less CPU and produces smaller files of the same or better
    quality.
  • All video options are also available in Playwright MCP and playwright-cli.

🎯 Test runner

  • New testProject.default option keeps a project in the config without running it by default. You can configure every browser you care about, and let a plain npx playwright test run just your favourite one:

    // playwright.config.ts
    import { defineConfig, devices } from '@playwright/test';
    
    export default defineConfig({
      projects: [
        { name: 'chromium', use: devices['Desktop Chrome'] },
        { name: 'firefox', use: devices['Desktop Firefox'], default: false },
        { name: 'webkit', use: devices['Desktop Safari'], default: false },
      ],
    });
    npx playwright test                     # runs chromium only
    npx playwright test --project=firefox   # runs firefox
    npx playwright test --project="*"       # runs all three, for example on CI
  • New --shuffle command line option schedules tests in a random order, which helps to find tests that accidentally depend on each other.

    npx playwright test --shuffle
    # Running 42 tests using 4 workers, shuffle seed 271828182
    # ...
    
    # Pass the seed to reproduce the same order.
    npx playwright test --shuffle 271828182
  • New lock option in test.describe.configure() adds test locks to all tests in a file or a group:

    test.describe.configure({ lock: 'user-settings' });
  • New type option of toHaveScreenshot in testConfig.expect stores all unnamed screenshots as WebP:

    // playwright.config.ts
    export default defineConfig({
      expect: {
        toHaveScreenshot: { type: 'webp' },
      },
    });

🪆 Locator.within()

New locator.within() combines two locators that you already have, reading in the natural order —
"this button, within that dialog":

const saveButton = page.getByRole('button', { name: 'Save' });
const dialog = page.getByTestId('settings-dialog');

await saveButton.within(dialog).click();

Relative locators such as locator.nth() or locator.first() are resolved inside each parent
separately, which makes column-like queries straightforward:

// The third cell of every row, not the third cell in the table.
const thirdColumn = page.getByRole('cell').nth(2).within(page.getByRole('row'));
await expect(thirdColumn).toHaveText(['Apple', 'Banana', 'Cherry']);

New APIs

Breaking changes ⚠️

  • screen property is now forwarded from the device descriptors. If you use ...devices['Desktop Chrome'] and alike, window.screen and media queries now see the emulated screen size. You can opt-out by explicitly setting screen to undefined:

    // playwright.config.ts
    export default defineConfig({
      use: {
        ...devices['Desktop Chrome'],
        screen: undefined,
      },
    });
  • JSX in your test files now follows your tsconfig.json. Playwright compiles JSX in test files according to the jsx, jsxFactory, jsxFragmentFactory and jsxImportSource tsconfig options, and defaults to the automatic runtime from react/jsx-runtime.

  • --update-snapshots=missing now passes the test run. Tests that only create missing snapshots now pass in the 'missing' mode of testConfig.updateSnapshots, so that CI can generate new snapshots and verify the existing ones in a single run. The mode used when the option is not specified is now called 'default' and behaves as before: missing snapshots are written and the test fails.

  • Elements inside hidden iframes are considered hidden. Elements inside an iframe that is not visible, for example with visibility: hidden, are now considered hidden by actions, locator.isVisible() and expect(locator).toBeVisible().

Browser Versions

  • Chromium 156.0.8078.4
  • Mozilla Firefox 157.0
  • WebKit 27.2

This version was also tested against the following stable channels:

  • Google Chrome 155
  • Microsoft Edge 155
tailwindlabs/tailwindcss (@​tailwindcss/vite)

v4.3.4

Compare Source

Added
  • Add @tailwindcss/turbopack, a Turbopack loader for using Tailwind CSS with Next.js (#​20367)
Fixed
  • Ensure watch mode detects changes to symlinked @source files whose real paths aren't otherwise scanned (#​20356)
  • Ensure variants using @scope wrap generated utilities instead of nesting inside them (#​20369)
  • Ensure nested @scope rules preserve their scoping semantics when flattened (#​20369)
  • Preserve declarations directly inside @scope by wrapping them in :where(:scope) (#​20369)
  • Ensure generated utilities include a space in empty var() fallbacks (e.g. var(--tw-blur,) → var(--tw-blur, )) (#​20373)
  • Canonicalization: convert arbitrary breakpoint and container query variants to named equivalents (e.g. max-[64rem]:flex → max-lg:flex) (#​20380)
  • Prevent @tailwindcss/vite from crashing on every edit under Vite's experimental bundledDev mode (#​20379)
  • Ensure @tailwindcss/oxide falls back to WASM on platforms without native bindings (#​20383)
  • Extract class candidates from Ruby %w and %W literals using angle brackets or custom delimiters (e.g. %w<flex>, %w|flex|), including in Slim and Haml templates (#​20387)
  • Preserve whitespace in --default(…) values in functional @utility definitions (e.g. --default(box alphabetic) no longer becomes boxalphabetic) (#​20392)
  • Ensure automatic source detection respects negation-based .gitignore files (e.g. /* followed by !/… patterns) (#​20397)
  • Ensure root theme('…') namespace lookups in JavaScript plugins and config files return the full namespace object instead of the value of its DEFAULT key (#​20399)
  • Skip ignored directories when generating watch globs instead of walking their contents on every rebuild (#​20408)
  • Drop invalid UTF-8 candidates during class detection (#​20389)
  • Prevent @tailwindcss/vite from forcing full-page reloads for scanned files that Vite does not handle as modules (e.g. .php files) (#​20414)
  • Canonicalization: don't merge utilities that reference different theme variables set to CSS-wide keywords like unset (#​20417)
  • Don't generate utilities when a modifier is used that would otherwise be silently ignored (e.g. rounded-sm/[5], shadow-sm/foo, stroke-2/50) (#​20419)
  • Preserve and, or, and not inside selectors in supports-[…] variants (e.g. supports-[selector(a:not(.foo))]:flex) (#​20420)
  • Don't warn about Angular's ::ng-deep and :host-context() when optimizing CSS (#​20434)
  • Don't generate CSS for candidates containing an empty additional modifier (e.g. bg-red-500/50/ and group-hover/foo//bar:flex) (#​20466)
  • Ensure min-*, max-*, and container query variants with decimal values are sorted numerically (e.g. min-[40.25rem] before min-[40.5rem]) (#​20512)
  • Ensure CSS comments ending with \*/ are closed correctly instead of swallowing the CSS that follows (e.g. /* C:\temp\*/) (#​20508)
  • Improve style invalidation performance of group-* and peer-* variants (#​20513)
  • Ensure cached compilers release their loadModule and loadStylesheet callbacks after compilation (#​20531)
  • Canonicalization: preserve & when moving a pseudo-element into * or ** (e.g. [&_::before]:flex → **:[&::before]:flex) (#​20550)
  • Ensure the Set.prototype.intersection polyfill in canonicalizeCandidates(…) returns the intersection instead of the first set on Node.js < 22 (#​20562)
  • Canonicalization: ensure inline theme(…) alphas with more than 2 decimals migrate to a percentage modifier with the same opacity (e.g. theme(colors.red.500/.12345) → text-red-500/[12.345%], not text-red-500/[12.345]) (#​20563)
  • Canonicalization: preserve inline theme(…) alphas as an arbitrary percentage when a custom --opacity-* theme value would change the opacity (e.g. theme(colors.red.500/50%) → text-red-500/[50%] with --opacity-50: 10%) (#​20563)
  • Ensure the @property fallback isn't applied in Safari versions that no longer support margin-trim: inline (#​20569)
  • Treat viewport units like dvmin and svi and font-relative units like cap and rex as lengths in arbitrary values (e.g. text-[10dvmin] generates font-size instead of color) (#​20516)
  • Write plugin logs to stderr in tailwindcss canonicalize so they don't end up in the results on stdout (#​20561)
  • Extract class shorthands on later lines when Pug text, comments, or quoted attribute values contain unbalanced brackets, or a quote that doesn't start a string (e.g. input(pattern=/"/.source)) (#​20547, #​20572)
  • Underline the correct occurrence of an unsupported data type in --value(…) warnings (#​20554)
  • Canonicalization: prefer an existing candidate when collapsing utilities over another utility with the same default theme value (e.g. text-foreground text-primary → text-primary, not text-card-checked-border) (#​20540)
  • Canonicalization: don't collapse utilities into a utility that uses another theme variable with the same default value (e.g. mt-card mb-card → my-card, not my-4) (#​20574)
  • Ensure @tailwindcss/postcss rewrites relative url(…)s of stylesheets that are inlined before it runs (e.g. @imports in Vite) in optimized builds (#​20576)
  • Drop nested rules that put a combinator after a pseudo-element when using pseudo-element variants (e.g. selection:* on a utility with a nested & > * rule) (#​20575)
  • Don't generate CSS for arbitrary values with unbalanced parentheses or brackets (e.g. w-[calc(1px] or [--x:a[b]) (#​20577)
  • Canonicalization: prevent collapse: true from taking exponentially longer when classes are linked through a utility that sets many properties (e.g. sr-only) (#​20558)
  • Ensure & is substituted inside :-moz-any(…) and :-webkit-any(…) in custom variants (e.g. @custom-variant firefox (:-moz-any(&));) (#​20486)
  • Ensure the standalone macOS binaries have a valid code signature, so macOS 27 no longer kills them at launch (#​20578)
  • Ensure @tailwindcss/turbopack and @tailwindcss/webpack rebuild when the input CSS changes (e.g. next dev with Turbopack no longer serves the CSS of the previous edit) (#​20582)
  • Canonicalization: don't drop a utility that sets a --tw-* variable when an unrelated property has the same value (e.g. link mt-4 no longer becomes mt-4 when link sets margin-top: 16px and --tw-translate-x: 16px) (#​20593)
  • Decode single-digit hexadecimal escapes in theme variable and @utility names as the CSS spec does (e.g. @theme { --color-\0: red; } no longer registers --color-0) (#​20591)
  • Don't treat !important inside strings, comments or url() in declaration values as the important flag (e.g. content: "a !important b") (#​20627)
  • Parse a custom property at the end of the input when it has no trailing ; (e.g. --foo: bar as the last declaration) (#​20653)
  • Keep a declaration without a ; at the end of the CSS input (e.g. color: red) (#​20655)
TanStack/query (@​tanstack/eslint-plugin-query)

v5.105.3

Compare Source

No changes in this release.

v5.105.2

Compare Source

No changes in this release.

v5.105.1

Compare Source

Patch Changes
  • #​12409 ec19101 - Fix stable-query-client detection for arrow functions, function expressions, and clients created directly in JSX. Keep state initializers and nested helper functions valid.

v5.105.0

Compare Source

No changes in this release.

v5.104.5

Compare Source

No changes in this release.

v5.104.4

Compare Source

Patch Changes
  • #​12044 a5f1b09 - refactor(eslint-plugin-query/exhaustive-deps): remove the unused fixable from the rule metadata, as the rule only provides suggestions

  • #​11889 1cf6eb4 - Detect unstable query dependencies in aliased React hooks imported from react.

v5.104.3

Compare Source

No changes in this release.

v5.104.2

Compare Source

No changes in this release.

TanStack/query (@​tanstack/react-query)

v5.105.3

Compare Source

Patch Changes

v5.105.2

Compare Source

Patch Changes

v5.105.1

Compare Source

Patch Changes
  • #​11373 7ccba6e - fix({react,preact,angular,solid,vue}-query/infiniteQueryOptions): correct the overload selected for a possibly-undefined 'initialData'

  • #​12390 18e54bf - Exclude fetchStatus from the filters accepted by QueryClient.isFetching, useIsFetching, and injectIsFetching. These APIs always count queries with fetchStatus: 'fetching'.

  • Updated dependencies [6f8a48d, 18e54bf]:

v5.105.0

Compare Source

Patch Changes

v5.104.5

Compare Source

Patch Changes
  • #​12117 1f8d134 - Recompute useMutationState and useIsMutating results when their filters, selector, or query client change, without waiting for a mutation cache update.
  • Updated dependencies [f608f93]:

v5.104.4

Compare Source

Patch Changes

v5.104.3

Compare Source

Patch Changes

v5.104.2

Compare Source

Patch Changes
TanStack/router (@​tanstack/react-router)

v1.170.46

Compare Source

Patch Changes
  • #​8670 32a3360 - Reference agent skills in other packages by their intent load identifier (@tanstack/<package>#<skill>) instead of relative file links that break once packages are installed.

  • #​8671 689a7c5 - Publish the @tanstack/react-router agent skills (react-router, compositions/router-query, lifecycle/migrate-from-react-router), which were missing from the package's files list.

  • Updated dependencies [32a3360]:

v1.170.45

Compare Source

Patch Changes

v1.170.44

Compare Source

Patch Changes

v1.170.43

Compare Source

Patch Changes

v1.170.42

Compare Source

Patch Changes
  • #​8594 2413cc0 - reduce component nesting per route match

  • #​8602 efc2042 - Links of a route that the pending navigation leaves skip deriving the destination location, and clicks and preloads follow the href a Link displays. buildLocation now builds mask and routeMasks locations from the same _fromLocation as the destination.

  • #​8602 efc2042 - Fixed Link destinations that resolve to a route mask are now reused across navigations instead of being rebuilt every time. A mounted Link now follows changes to its href and reloadDocument props, and React Links no longer each subscribe to a hydration flag.

  • #​8579 d35aab4 - Cancel pending link preload timers when starting navigation to avoid redundant preloading while the destination is loading.

  • Updated dependencies [dfe3dea, dfe3dea, dfe3dea, efc2042, efc2042, dfe3dea, 663282b]:

testing-library/user-event (@​testing-library/user-event)

v14.6.8

Compare Source

Bug Fixes
  • treat programmatic null input values as empty string (#​1329) (1951eb7)
vitejs/vite-plugin-react (@​vitejs/plugin-react)

v6.2.1

Compare Source

Fix refreshInclude and refreshExclude options not working (#​1543)

Fix mistake from #​1516

v6.2.0

Compare Source

Add refreshInclude and refreshExclude options (#​1516)

Add refreshInclude and refreshExclude options to skip fast refresh for certain files that won't run in the browser.

Expand oxc-transform-react peer dependency range (#​1540)

The peer dependency version range for oxc-transform-react was expanded from ^0.152.0 to >=0.152.0 <0.157.0.

Expand @rolldown/plugin-babel peer dependency range (#​1541)

The peer dependency version range for @rolldown/plugin-babel was expanded from ^0.1.7 || ^0.2.0 to ^0.1.7 || ^0.2.0 || ^0.3.0.

v6.1.2

Compare Source

Fix HMR for compound components (#​1484)

Adding or removing a component from a compound component was not handled, creating stale updates. Doing this now triggers hmr invalidate on the file and propagates the invalidation to importers.

Fix compiler.logDiagnostics option not working (#​1483)

With oxc-transform-react >= 0.148, the logDiagnostics was not working. This version fixes it and requires oxc-transform-react >= 0.152 as a peer dependency if you are using the compiler option. compiler.logDiagnostics option is now deprecated and should be swapped for the builtin compiler.reportDiagnostics.

Disable refresh for non-jsx with compiler enabled (fix #​1478) (#​1485)

When the compiler was enabled, TS files could trigger fast refresh which would cause runtime errors. The logic now follows what the builtin oxc plugin in Vite does.

eslint/eslint (eslint)

v10.14.0

Compare Source

Features

  • d23a7f9 feat: fix property descriptor handling in func-name-matching (#​21400) (xbinaryx)

Bug Fixes

Documentation

  • 0f94f47 docs: remove zh-hans from docs language switcher (#​21437) (lumir)
  • dab466e docs: Update README (GitHub Actions Bot)
  • 97431f8 docs: replace --rulesdir with a virtual plugin in custom rules docs (#​21452) (Pixel)
  • 7697550 docs: Update README (GitHub Actions Bot)
  • 0c699d5 docs: Remove Tidelift commercial support (#​21416) (Milos Djermanovic)
  • 0880666 docs: update loadESLint() documentation for v10 (#​21374) (Minseon Kim)
  • e06fe87 docs: Revise AI acknowledgment options in PR template (#​21414) (Nicholas C. Zakas)

Chores

  • 0e2ab70 ci: disable eslint-plugin-unicorn ecosystem test (#​21462) (Francesco Trotta)
  • 6e3f988 chore: update github/codeql-action action to v4.39.1 (#​21450) (renovate[bot])
  • a031c40 chore: update ecosystem plugins (#​21445) (ESLint Bot)
  • 67d2ca2 chore: add troubleshooting page URL to circular fixes warning message (#​21429) (Milos Djermanovic)
  • 276021d chore: update github/codeql-action action to v4.39.0 (#​21432) (renovate[bot])
  • 449724e chore: update ecosystem plugins (#​21420) (ESLint Bot)
  • 8ffeb8c chore: update dependency prettier to v3.9.10 (#​21417) (renovate[bot])

v10.13.0

Compare Source

Features

[!IMPORTANT]
✂ PR body was truncated to here.


Configuration

📅 Schedule: (in timezone Asia/Shanghai)

  • Branch creation
    • "before 6am on sunday"
  • 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 if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the deps label Oct 10, 2026
@renovate
renovate Bot force-pushed the renovate/npm-deps branch 23 times, most recently from 9fbc3fa to 165fda2 Compare October 18, 2026 00:42
@renovate
renovate Bot force-pushed the renovate/npm-deps branch 6 times, most recently from 7e93d9f to 1e70c5d Compare October 22, 2026 23:37
@renovate
renovate Bot force-pushed the renovate/npm-deps branch 10 times, most recently from 7f369b4 to b0d2290 Compare October 30, 2026 15:00
@renovate
renovate Bot force-pushed the renovate/npm-deps branch 9 times, most recently from a7b0dbe to b3c34f3 Compare November 3, 2026 16:10
@renovate
renovate Bot force-pushed the renovate/npm-deps branch from b3c34f3 to aa54dab Compare November 4, 2026 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants