Skip to content

chore(deps): update dev dependencies - #544

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/dev-dependencies
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/dev-dependencies

Conversation

@renovate

@renovate renovate Bot commented Oct 5, 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
@antfu/eslint-config 9.3.0 → 9.5.1 age confidence
@iconify-json/solar 1.2.8 → 1.2.13 age confidence
@libsql/client (source) ^0.17.4 → ^0.18.0 age confidence
@nuxt/test-utils 4.1.0 → 4.3.3 age confidence
@vue/test-utils 2.5.0 → 2.5.1 age confidence
better-call (source) 1.4.0 → 1.4.1 age confidence
docus 5.12.3 → 5.14.0 age confidence
drizzle-kit (source) 0.31.10 → 0.31.11 age confidence
drizzle-orm (source) 0.45.2 → 0.45.3 age confidence
eslint (source) 10.8.1 → 10.12.0 age confidence
happy-dom 20.14.0 → 20.14.5 age confidence
pkg-pr-new (source) 0.0.88 → 0.0.90 age confidence
playwright-core (source) 1.58.2 → 1.63.0 age confidence
vue (source) 3.5.41 → 3.5.43 age confidence
vue-tsc (source) 3.3.10 → 3.3.12 age confidence
wrangler (source) 4.124.0 → 4.147.0 age confidence
yaml (source) 2.9.0 → 2.9.1 age confidence

Release Notes

antfu/eslint-config (@​antfu/eslint-config)

v9.5.1

Compare Source

   🐞 Bug Fixes
    View changes on GitHub

v9.5.0

Compare Source

   🚀 Features
    View changes on GitHub

v9.4.1

Compare Source

   🚀 Features
  • pnpm: Enforce new-line style for pnpm-workspace.yaml  -  by @​antfu (ab400)
    View changes on GitHub

v9.4.0

Compare Source

   🚀 Features
    View changes on GitHub
tursodatabase/libsql-client-ts (@​libsql/client)

v0.18.0

Compare Source

nuxt/test-utils (@​nuxt/test-utils)

v4.3.3

Compare Source

v4.3.3 is the next patch release.

👉 Changelog

compare changes

🔥 Performance
  • use h3's toWebHandler instead of node-mock-http (abe8ad944)
  • resolve h3 from the project (b5d802f03)
  • replace estree-walker with oxc-walker (8e8ca5e8b)
  • replace local-pkg with exsolve (38938a879)
  • replace c12 with native dotenv parsing (26c72afa0)
  • inline destr and scule usage (e4bfd2ebe)
  • drop node-fetch-native polyfill (6b654de5c)
  • replace nypm with package-manager-detector (#​1828)
🩹 Fixes
  • runtime-utils: type registerEndpoint against the project h3 (#​1831)
  • e2e: restore console after use nuxt kit (#​1817)
  • config: exclude aliased mock packages from optimizeDeps in browser mode (#​1816)
  • runtime: setup nuxt once per worker in no-isolate (#​1821)
  • browser: correct render helper options type (#​1822)
🏡 Chore
  • move vue to peer dependencies (e70592ffa)
  • declare supported nuxt versions as peer dependency (b473892c9)
🤖 CI
❤️ Contributors

v4.3.2

Compare Source

v4.3.2 is the next patch release.

👉 Changelog

compare changes

🩹 Fixes
  • vitest-environment: keep vitest/environments import opaque to rolldown (6d1195d38)
❤️ Contributors

v4.3.1

Compare Source

v4.3.1 is the next patch release.

👉 Changelog

compare changes

🩹 Fixes
  • deps: allow vitest ^5 as peer dependency (#​1809)
🏡 Chore
🎉 New Contributors
❤️ Contributors

v4.3.0

Compare Source

v4.3.0 is the next minor release.

👉 Changelog

compare changes

🚀 Enhancements
  • runtime-utils: add unmockNuxtImport helper (#​1795)
  • config: support vitest 5 (#​1802)
🩹 Fixes
  • config: default nuxt test pattern to nested for simple non-nuxt setup (#​1801)
✅ Tests
  • make sure tests are collected at runtime, not statically (#​1797)
🎉 New Contributors
❤️ Contributors

v4.2.0

Compare Source

v4.2.0 is the next minor release.

👉 Changelog

compare changes

🚀 Enhancements
  • browser: add render helper for vitest browser mode (#​1725)
  • runtime-utils: add spy option to mount + render helpers (#​1762)
🩹 Fixes
  • runtime-utils: mockNuxtImport sourcemap mapped position (#​1787)
  • config: tolerate non-cloneable values when cloning config (#​1771)
  • e2e: honour setupTimeout in playwright + surface server logs (#​1785)
  • e2e: add explanation if server exited before being ready (#​1761)
  • module: handle string presets in auto-imports (#​1784)
  • config: don't run includeSource in both projects in defineVitestConfig (#​1763)
  • e2e: use taskkill to kill processes on windows (#​1760)
  • config: support nuxt v5 with nitro vite environment (#​1758)
🏡 Chore
  • avoid missing file extension warning in test/examples (#​1775)
  • exempt first-party packages from pnpm minimumReleaseAge (#​1774)
  • replace latest ranges with caret ranges (#​1773)
  • move vite environment api tests to example tests (#​1755)
✅ Tests
  • re-enable bun browser e2e on windows (#​1791)
🤖 CI
  • migrate to uppt for release workflow (#​1792)
🎉 New Contributors
❤️ Contributors
vuejs/test-utils (@​vue/test-utils)

v2.5.1

Compare Source

What's Changed
New Contributors

Full Changelog: vuejs/test-utils@v2.5.0...v2.5.1

better-auth/better-call (better-call)

v1.4.1

Compare Source

   🐞 Bug Fixes
    View changes on GitHub
nuxt-content/docus (docus)

v5.14.0

Compare Source

Features
Bug Fixes

v5.13.0

Compare Source

Features
Bug Fixes
drizzle-team/drizzle-orm (drizzle-kit)

v0.31.11

Compare Source

eslint/eslint (eslint)

v10.12.0

Compare Source

Features

  • 4618052 feat: handle astral letters in new-cap (#​21357) (sary)
  • 4ec5168 feat: allow SourceCode#getText() to accept tokens and comments (#​21340) (electrohyun)

Bug Fixes

  • bc51eee fix: prefer-arrow-callback false positive in conditional test (#​21373) (Daniel Pinto)
  • bbff86c fix: skip lines with multiple comments in max-lines-per-function (#​21332) (xbinaryx)
  • efc4d6b fix: astral letters in consistent-return, no-eval, no-invalid-this (#​21360) (lumir)
  • 93de066 fix: prefer-exponentiation-operator autofix for async function base (#​21322) (Vladimir Babin)
  • 02e34ff fix: add missing space after else in curly autofix (#​21355) (Pixel)
  • b14b8bc fix: correct id-length message for long private names (#​21348) (Pixel)
  • 69aac01 fix: support TSFunctionType in getFunctionHeadLoc (#​21335) (xbinaryx)
  • 686630e fix: no-loss-of-precision false positive with 0.e5 (#​21337) (sethamus)

Documentation

  • 67eb586 docs: Update README (GitHub Actions Bot)
  • 5370d7e docs: clarify one-var separateRequires matches any require() call (#​21192) (sethamus)
  • 8816c1d docs: Update README (GitHub Actions Bot)
  • 3d2e7ce docs: fix typo in no-unused-expressions documentation (#​21346) (bytedoe)

Chores

  • 152067f chore: update ecosystem plugins (#​21362) (ESLint Bot)
  • b56d58e chore: update github/codeql-action action to v4.38.2 (#​21376) (renovate[bot])
  • bfaea12 perf: cache normalized config globals per languageOptions (#​21364) (James Ross)
  • 322209e ci: avoid Nx cache in ecosystem tests and disable failing test (#​21369) (Francesco Trotta)
  • d166567 chore: update dependency prettier to v3.9.9 (#​21371) (renovate[bot])
  • 29585ce chore: update dependency eslint-plugin-expect-type to ^0.7.0 (#​21359) (renovate[bot])
  • 39d79ba chore: update github/codeql-action action to v4.38.1 (#​21354) (renovate[bot])
  • 182a6e9 chore: update dependency prettier to v3.9.8 (#​21352) (renovate[bot])
  • f995127 chore: remove CLAUDE.md in favor of AGENTS.md (#​21339) (Jarren)
  • b95fb6c chore: update dependency prettier to v3.9.7 (#​21347) (renovate[bot])
  • 3782dd4 chore: update ecosystem plugins (#​21342) (ESLint Bot)

v10.11.0

Compare Source

v10.10.0

Compare Source

v10.9.1

Compare Source

v10.9.0

Compare Source

capricorn86/happy-dom (happy-dom)

v20.14.5

Compare Source

v20.14.4

Compare Source

👷‍♂️ Patch fixes

v20.14.3

Compare Source

👷‍♂️ Patch fixes

v20.14.2

Compare Source

👷‍♂️ Patch fixes

v20.14.1

Compare Source

stackblitz-labs/pkg.pr.new (pkg-pr-new)

v0.0.90

Compare Source

microsoft/playwright (playwright-core)

v1.63.0

Compare Source

v1.62.1

Compare Source

v1.62.0

Compare Source

🧱 New component testing model

Component testing moves to a stories and galleries model.
A story wraps your component in one specific scenario — hard-coded props, mock data, providers — and a

gallery page that you serve renders stories on demand. The new fixtures.mount() fixture navigates
to the gallery, mounts a story by id, and returns a Locator scoped to the story's root element:

test('click should expand', async ({ mount }) => {
  const component = await mount('components/Expandable/Stateful');
  await component.getByRole('button').click();
  await expect(component.getByTestId('expanded')).toHaveValue('true');
});

Pass a story type as a template argument to type-check its props, and use update(props) /
unmount() on the returned locator to re-render or tear down within a test.

🛑 Cancel operations with AbortSignal

Most operations and web-first assertions now accept a signal option that takes an
AbortSignal, letting you
cancel long-running actions, navigations, waits, and assertions:

const controller = new AbortController();
setTimeout(() => controller.abort(), 1000);

await page.getByRole('button', { name: 'Submit' }).click({ signal: controller.signal });
await expect(page.getByText('Done')).toBeVisible({ signal: controller.signal });

Providing a signal does not disable the default timeout; pass timeout: 0 to disable it.

🖼️ WebP screenshots

expect(page).toHaveScreenshot() and expect(locator).toHaveScreenshot()
can now store snapshots in the WebP format — just give the snapshot a .webp name:

// Visual comparisons store the golden snapshot as lossless WebP.
await expect(page).toHaveScreenshot('homepage.webp');

// Standalone screenshots can trade quality for size with lossy WebP.
await page.screenshot({ path: 'homepage.webp', quality: 50 });

page.screenshot() and locator.screenshot() also accept webp as a type,
where quality 100 (the default) is lossless and lower values use lossy compression.

🧩 Custom test filtering with Reporter.preprocess()

New reporter.preprocess() hook runs after the configuration is resolved and before
reporter.onBegin(), letting a reporter mark individual tests as skipped, excluded,
fixed, or failing through a TestRun object:

class MyReporter {
  async preprocess({ config, suite, testRun }) {
    for (const test of suite.allTests()) {
      if (shouldSkip(test))
        testRun.skip(test);
    }
  }
}
🔁 Isolated retries

New testConfig.retryStrategy controls when failed tests are retried. The default
'immediate' retries as soon as a worker is free; 'isolated' runs all retries at the end,
one by one in a single worker, to minimize interference with the rest of the suite:

// playwright.config.ts
export default defineConfig({
  retries: 2,
  retryStrategy: 'isolated',
});
New APIs
Browser and Context
  • New option credentials includes the context's virtual WebAuthn Credentials (passkeys) in the storage state, so they can be persisted and re-seeded into later contexts.
Actions
  • New scroll option ("auto" | "none") on actions to opt out of Playwright's automatic scroll-into-view.
Network
Evaluation
Command line & MCP
Reporters
  • The HTML report's Merge files grouping — previously only a UI toggle — can now be enabled from the config with the new mergeFiles reporter option:
// playwright.config.ts
export default defineConfig({
  reporter: [['html', { mergeFiles: true }]],
});
Announcements
  • ⚠️ Debian 11 is not supported anymore.
Browser Versions
  • Chromium 151.0.7922.34
  • Mozilla Firefox 153.0
  • WebKit 26.5

This version was also tested against the following stable channels:

  • Google Chrome 151
  • Microsoft Edge 151

v1.61.1

Compare Source

v1.61.0

Compare Source

🔑 WebAuthn passkeys

New Credentials virtual authenticator, available via browserContext.credentials, lets tests register passkeys and answer navigator.credentials.create() / navigator.credentials.get() ceremonies in the page — no real hardware key required, works in all browsers:

const context = await browser.newContext();

// Seed a passkey your backend provisioned for a test user.
await context.credentials.create('example.com', {
  id: credentialId,
  userHandle,
  privateKey,
  publicKey,
});
await context.credentials.install();

const page = await context.newPage();
await page.goto('https://example.com/login');
// The page's navigator.credentials.get() is answered with the seeded passkey.

You can also let the app register a passkey once in a setup test, read it back with credentials.get(), and seed it into later tests — see Credentials for details.

🗃️ Web Storage

New WebStorage API, available via page.localStorage and page.sessionStorage, reads and writes the page's storage for the current origin:

await page.localStorage.setItem('token', 'abc');
const token = await page.localStorage.getItem('token');
const items = await page.sessionStorage.items();
New APIs
Network
Browser and Screencast
  • New option artifactsDir in browserType.connectOverCDP() controls where artifacts such as traces and downloads are stored when attached to an existing browser.
  • New option cursor in screencast.showActions() controls the cursor decoration rendered for pointer actions.
  • The onFrame callback in screencast.start() now receives a timestamp of when the frame was presented by the browser.
Test runner
  • The testOptions.video option now supports the same set of modes as trace: new 'on-all-retries', 'retain-on-first-failure' and 'retain-on-failure-and-retries' values. See the video modes table for which runs are recorded and kept in each mode.
  • Supported expect.soft.poll(...).
  • New fullConfig.argv — a snapshot of process.argv from the runner process, handy for reading custom arguments passed after the -- separator.
  • New fullConfig.failOnFlakyTests mirrors the config option, so reporters can explain why a flaky run failed.
  • testInfo.errors now lists each sub-error of an AggregateError as a separate entry.
  • New -G command line shorthand for --grep-invert.
🛠️ Other improvements
  • Playwright now supports Ubuntu 26.04.
  • HAR and trace recordings now include WebSocket requests.
Browser Versions
  • Chromium 149.0.7827.55
  • Mozilla Firefox 151.0
  • WebKit 26.5

This version was also tested against the following stable channels:

  • Google Chrome 149
  • Microsoft Edge 149

v1.60.0

Compare Source

🌐 HAR recording on Tracing

tracing.startHar() / tracing.stopHar() expose HAR recording as a first-class tracing API, with the same content, mode and urlFilter options as recordHar. The returned Disposable makes it easy to scope a recording with await using:

await using har = await context.tracing.startHar('trace.har');
const page = await context.newPage();
await page.goto('https://playwright.dev');
// HAR is finalized when `har` goes out of scope.

🪝 Drop API

New locator.drop() simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches dragenter, dragover, and drop with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:

await page.locator('#dropzone').drop({
  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },
});

await page.locator('#dropzone').drop({
  data: {
    'text/plain': 'hello world',
    'text/uri-list': 'https://example.com',
  },
});

🎯 Aria snapshots

🛑 test.abort()

New test.abort() aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:

test('does not publish to the shared page', async ({ page }) => {
  await page.route('**/publish', route => {
    test.abort('Tests must not publish to the shared page. Use the `clone` option.');
    return route.abort();
  });
  // ...
});

New APIs

Browser, Context and Page
Locators and Assertions
Network
  • webSocketRoute.protocols() returns the WebSocket subprotocols requested by the page.
  • New option noDefaults in browserType.connectOverCDP() disables Playwright's default overrides on the default context (download behavior, focus emulation, media emulation), so attaching to a user's daily-driver browser doesn't disturb its state.
Errors and Reporting
Test runner
  • New {testFileBaseName} token in testProject.snapshotPathTemplate — file name without extension.
  • Test runner now errors when a config tries to override a non-option fixture, and rejects workers: 0 or negative values.

🛠️ Other improvements

  • HTML reporter:
    • npx playwright show-report accepts .zip files directly — no need to unzip first.
    • Steps that contain attachments inside nested children show an indicator on the parent step.
    • The repeatEachIndex is shown in the test header when non-zero.
  • Trace Viewer adds a pretty-print toggle for JSON / form request and response bodies in the network details panel.

Breaking Changes ⚠️

  • Removed long-deprecated APIs:
    • Locator.ariaRef() — use the standard locator.ariaSnapshot() pipeline.
    • handle option on BrowserContext.exposeBinding and Page.exposeBinding.
    • logger option on BrowserType.connect and BrowserType.connectOverCDP — use tracing instead.
    • Context options videosPath / videoSize — use recordVideo instead.

Browser Versions

  • Chromium 148.0.7778.96
  • Mozilla Firefox 150.0.2
  • WebKit 26.4

This version was also tested against the following stable channels:

  • Google Chrome 147
  • Microsoft Edge 147

v1.59.1

Compare Source

Bug Fixes
  • [Windows] Reverted hiding console window when spawning browser processes, which caused regressions including broken codegen, --ui and show commands (#​39990)

v1.59.0

Compare Source

🎬 Screencast

New page.screencast API provides a unified interface for capturing page content with:

  • Screencast recordings
  • Action annotations
  • Visual overlays
  • Real-time frame capture
  • Agentic video receipts
Demo

Screencast recording — record video with precise start/stop control, as an alternative to the recordVideo option:

await page.screencast.start({ path: 'video.webm' });
// ... perform actions ...
await page.screencast.stop();

Action annotations — enable built-in visual annotations that highlight interacted elements and display action titles during recording:

await page.screencast.showActions({ position: 'top-right' });

screencast.showActions() accepts position ('top-left', 'top', 'top-right', 'bottom-left', 'bottom', 'bottom-right'), duration (ms per annotation), and fontSize (px). Returns a disposable to stop showing actions.

Action annotations can also be enabled in test fixtures via the video option:

// playwright.config.ts
export default defineConfig({
  use: {
    video: {
      mode: 'on',
      show: {
        actions: { position: 'top-left' },
        test: { position: 'top-right' },
      },
    },
  },
});

Visual overlays — add chapter titles and custom HTML overlays on top of the page for richer narration:

await page.screencast.showChapter('Adding TODOs', {
  description: 'Type and press enter for each TODO',
  duration: 1000,
});

await page.screencast.showOverlay('<div style="color: red">Recording</div>');

Real-time frame capture — stream JPEG-encoded frames for custom processing like thumbnails, live previews, AI vision, and more:

await page.screencast.start({
  onFrame: ({ data }) => sendToVisionModel(data),
  size: { width: 800, height: 600 },
});

Agentic video receipts — coding agents can produce video evidence of their work. After completing a task, an agent can record a walkthrough video with rich annotations for human review:

await page.screencast.start({ path: 'receipt.webm' });
await page.screencast.showActions({ position: 'top-right' });

await page.screencast.showChapter('Verifying checkout flow', {
  description: 'Added coupon code support per ticket #&#8203;1234',
});

// Agent performs the verification steps...
await page.locator('#coupon').fill('SAVE20');
await page.locator('#apply-coupon').click();
await expect(page.locator('.discount')).toContainText('20%');

await page.screencast.showChapter('Done', {
  description: 'Coupon applied, discount reflected in total',
});

await page.screencast.stop();

The resulting video serves as a receipt: chapter titles provide context, action annotations highlight each interaction, and the visual walkthrough is faster to review than text logs.

🔗 Interoperability

New browser.bind()

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

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

♻ Rebasing: Whenever PR is behind base branch, 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.

@vercel

vercel Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
nuxt-better-auth-docs Error Error Oct 5, 2026 9:57pm UTC

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
better-auth a6a3340 Oct 05 2026, 09:57 PM

This branch had an error being deployed

1 failed deployment
Preview — a6a33400 Deployed Oct 5, 2026 by vercel[bot]
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.

0 participants