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

feat: allow custom <transition> stubs #2185

Merged
merged 1 commit into from
Sep 19, 2023

Conversation

alecgibson
Copy link
Contributor

@alecgibson alecgibson commented Sep 11, 2023

At the moment, @vue/test-utils doesn't allow custom <transition> stubs. For example, setting:

config.stubs.transition = {template: '<div />'};

...will still just render the default @vue/test-utils stub:

<transition-stub appear="false" persisted="false" css="true">

The motivation for this change is that if you're using the @vue/compat migration build, these default stubs throw up the following warning:

Error: (deprecation ATTR_FALSE_VALUE) Attribute "persisted" with v-bind value `false` will render persisted="false" instead of removing it in Vue 3. To remove the attribute, use `null` or `undefined` instead. If the usage is intended, you can disable the compat behavior and suppress this warning with:

      configureCompat({ ATTR_FALSE_VALUE: false })

      Details: https://v3-migration.vuejs.org/breaking-changes/attribute-coercion.html
      at <Transition>

Since persisted isn't actually a boolean HTML attribute, and is actually a prop, we want to ignore this false positive, but don't want to disable this warning everywhere (so we can catch actual errors).

In order to clean up our test warnings, we would like to use a custom <transition> stub, which doesn't have these props. This change tweaks the transition stubbing logic, and only creates the default stub if transition === true. If it's any other truthy value, it falls back to "normal" stubbing behaviour.

Depends on:

@netlify
Copy link

netlify bot commented Sep 11, 2023

Deploy Preview for vue-test-utils-docs ready!

Name Link
🔨 Latest commit 313fd2d
🔍 Latest deploy log https://app.netlify.com/sites/vue-test-utils-docs/deploys/65094e515b0cd000082af278
😎 Deploy Preview https://deploy-preview-2185--vue-test-utils-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@alecgibson alecgibson force-pushed the custom-transition-stub branch 2 times, most recently from e8ec540 to 9cad5ff Compare September 11, 2023 12:36
@alecgibson alecgibson changed the title ✨ Allow custom <transition> stubs feat: allow custom <transition> stubs Sep 11, 2023
Copy link
Member

@cexbrayat cexbrayat left a comment

Choose a reason for hiding this comment

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

Thanks for the PR @alecgibson

type,
renderStubDefaultSlot: true
})
if (stubs['transition'] === true || stubs['Transition'] === true) {
Copy link
Member

Choose a reason for hiding this comment

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

If this is the proper way to fix this (I don't remember how it works exactly), then the same fix must be applied to transition-group, teleport and the other cases in the function no?

Copy link
Contributor Author

@alecgibson alecgibson Sep 11, 2023

Choose a reason for hiding this comment

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

Oh yeah was just being lazy because this is the thing that affects me 😅 Will change those as well (it's a shame there's not an easy way to target both PascalCased and kebab-cased, but that's beyond the scope of this change...)

@alecgibson alecgibson force-pushed the custom-transition-stub branch from 9cad5ff to 6d7a285 Compare September 11, 2023 13:11
@alecgibson
Copy link
Contributor Author

Okay I've separately raised #2186 (which this is now on top of), where I've commonised all the boilerplate for default stubs, so now this fix will fix all default stubs in the same way.

@cexbrayat
Copy link
Member

Awesome, thanks @alecgibson , one of us will take a look when we have some time 👍

@alecgibson alecgibson force-pushed the custom-transition-stub branch from 6d7a285 to 37ab367 Compare September 12, 2023 06:01
Copy link
Member

@cexbrayat cexbrayat left a comment

Choose a reason for hiding this comment

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

Thanks @alecgibson 👍

At the moment, `@vue/test-utils` doesn't allow custom `<transition>`
stubs. For example, setting:

```js
config.stubs.transition = {template: '<div />'};
```

...will still just render the default `@vue/test-utils` stub:

```html
<transition-stub appear="false" persisted="false" css="true">
```

The motivation for this change is that if you're using the `@vue/compat`
migration build, these default stubs throw up the following warning:

```
Error: (deprecation ATTR_FALSE_VALUE) Attribute "persisted" with v-bind value `false` will render persisted="false" instead of removing it in Vue 3. To remove the attribute, use `null` or `undefined` instead. If the usage is intended, you can disable the compat behavior and suppress this warning with:

      configureCompat({ ATTR_FALSE_VALUE: false })

      Details: https://v3-migration.vuejs.org/breaking-changes/attribute-coercion.html
      at <Transition>
```

Since `persisted` isn't actually a [boolean HTML attribute][1], and is
actually a [prop][2], we want to ignore this false positive, but don't
want to disable this warning everywhere (so we can catch *actual*
errors).

In order to clean up our test warnings, we would like to use a custom
`<transition>` stub, which doesn't have these props. This change tweaks
the `transition` stubbing logic, and only creates the default stub if
`transition === true`. If it's any other truthy value, it falls back to
"normal" stubbing behaviour.

[1]: https://html.spec.whatwg.org/multipage/indices.html#attributes-3
[2]: https://github.com/vuejs/core/blob/b775b71c788499ec7ee58bc2cf4cd04ed388e072/packages/runtime-core/src/components/BaseTransition.ts#L37
@alecgibson alecgibson force-pushed the custom-transition-stub branch from 37ab367 to 313fd2d Compare September 19, 2023 07:31
@alecgibson
Copy link
Contributor Author

@cexbrayat I've rebased onto main

@cexbrayat cexbrayat merged commit 0c2efe3 into vuejs:main Sep 19, 2023
@alecgibson alecgibson deleted the custom-transition-stub branch September 19, 2023 09:16
renovate bot referenced this pull request in slipmatio/toolbelt Nov 20, 2023
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@playwright/test](https://playwright.dev)
([source](https://togithub.com/microsoft/playwright)) | [`1.39.0` ->
`1.40.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.39.0/1.40.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.39.0/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.39.0/1.40.0?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)) |
[`20.8.10` ->
`20.9.1`](https://renovatebot.com/diffs/npm/@types%2fnode/20.8.10/20.9.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.8.10/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.8.10/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue)) | [`4.4.0` ->
`4.5.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/4.4.0/4.5.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/4.4.0/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/4.4.0/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@vue/test-utils](https://togithub.com/vuejs/test-utils) | [`2.4.1` ->
`2.4.2`](https://renovatebot.com/diffs/npm/@vue%2ftest-utils/2.4.1/2.4.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme)
([source](https://togithub.com/vitejs/vite)) | [`4.5.0` ->
`5.0.0`](https://renovatebot.com/diffs/npm/vite/4.5.0/5.0.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vue](https://togithub.com/vuejs/core/tree/main/packages/vue#readme)
([source](https://togithub.com/vuejs/core)) | [`3.3.7` ->
`3.3.8`](https://renovatebot.com/diffs/npm/vue/3.3.7/3.3.8) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.3.7/3.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.3.7/3.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>microsoft/playwright (@&#8203;playwright/test)</summary>

###
[`v1.40.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.40.0)

[Compare
Source](https://togithub.com/microsoft/playwright/compare/v1.39.0...v1.40.0)

#### Test Generator Update

![Playwright Test
Generator](https://togithub.com/microsoft/playwright/assets/9881434/e8d67e2e-f36d-4301-8631-023948d3e190)

New tools to generate assertions:

- "Assert visibility" tool generates
[expect(locator).toBeVisible()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-be-visible).
- "Assert value" tool generates
[expect(locator).toHaveValue(value)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-value).
- "Assert text" tool generates
[expect(locator).toContainText(text)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-contain-text).

Here is an example of a generated test with assertions:

```js
import { test, expect } from '@&#8203;playwright/test';

test('test', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await page.getByRole('link', { name: 'Get started' }).click();
  await expect(page.getByLabel('Breadcrumbs').getByRole('list')).toContainText('Installation');
  await expect(page.getByLabel('Search')).toBeVisible();
  await page.getByLabel('Search').click();
  await page.getByPlaceholder('Search docs').fill('locator');
  await expect(page.getByPlaceholder('Search docs')).toHaveValue('locator');
});
```

#### New APIs

- Option `reason` in
[page.close()](https://playwright.dev/docs/api/class-page#page-close),
[browserContext.close()](https://playwright.dev/docs/api/class-browsercontext#browser-context-close)
and
[browser.close()](https://playwright.dev/docs/api/class-browser#browser-close).
Close reason is reported for all operations interrupted by the closure.
- Option `firefoxUserPrefs` in
[browserType.launchPersistentContext(userDataDir)](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context).

#### Other Changes

- Methods
[download.path()](https://playwright.dev/docs/api/class-download#download-path)
and
[download.createReadStream()](https://playwright.dev/docs/api/class-download#download-create-read-stream)
throw an error for failed and cancelled downloads.
- Playwright [docker image](https://playwright.dev/docs/docker) now
comes with Node.js v20.

#### Browser Versions

-   Chromium 120.0.6099.28
-   Mozilla Firefox 119.0
-   WebKit 17.4

This version was also tested against the following stable channels:

-   Google Chrome 119
-   Microsoft Edge 119

</details>

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v4.5.0`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#450-2023-11-16)

- chore: update peerDependencies to support Vite 5
([#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290))
([f92861a](https://togithub.com/vitejs/vite-plugin-vue/commit/f92861a)),
closes
[#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290)
- chore: upgrade deps
([c046eba](https://togithub.com/vitejs/vite-plugin-vue/commit/c046eba))
- fix(deps): update all non-major dependencies
([#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262))
([c316d43](https://togithub.com/vitejs/vite-plugin-vue/commit/c316d43)),
closes
[#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262)

###
[`v4.4.1`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#small441-2023-11-08-small)

- fix: fix style block hmr for vitepress md files
([a26a854](https://togithub.com/vitejs/vite-plugin-vue/commit/a26a854)),
closes
[vuejs/vitepress#3129](https://togithub.com/vuejs/vitepress/issues/3129)
- chore: make tests pass with rollup4
([#&#8203;271](https://togithub.com/vitejs/vite-plugin-vue/issues/271))
([298d419](https://togithub.com/vitejs/vite-plugin-vue/commit/298d419)),
closes
[#&#8203;271](https://togithub.com/vitejs/vite-plugin-vue/issues/271)

</details>

<details>
<summary>vuejs/test-utils (@&#8203;vue/test-utils)</summary>

###
[`v2.4.2`](https://togithub.com/vuejs/test-utils/releases/tag/v2.4.2)

[Compare
Source](https://togithub.com/vuejs/test-utils/compare/v2.4.1...v2.4.2)

#### What's Changed

##### Fix

- fix: (could be considered a feature?) allow custom `<transition>`
stubs by [@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2185](https://togithub.com/vuejs/test-utils/pull/2185)
- fix: Fixing prototype methods being discarded when using `setData` by
[@&#8203;rory-instil](https://togithub.com/rory-instil) in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- fix(deps): update all non-major dependencies to v1.8.8 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2143](https://togithub.com/vuejs/test-utils/pull/2143)
- fix(deps): update all non-major dependencies to v1.8.13 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2193](https://togithub.com/vuejs/test-utils/pull/2193)
- fix(deps): update all non-major dependencies to v1.8.19 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2211](https://togithub.com/vuejs/test-utils/pull/2211)
- fix: stricter props types by
[@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2137](https://togithub.com/vuejs/test-utils/pull/2137)
- fix(deps): update all non-major dependencies to v1.8.21 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2224](https://togithub.com/vuejs/test-utils/pull/2224)
- fix: wrapper.text method by
[@&#8203;harunari0928](https://togithub.com/harunari0928) in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- fix(types): use `VNodeChild` type from `vue` to avoid breakage by
[@&#8203;sodatea](https://togithub.com/sodatea) in
[https://github.com/vuejs/test-utils/pull/2237](https://togithub.com/vuejs/test-utils/pull/2237)
- Fixed typo in accessibility word by
[@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)

##### Docs

- docs: Fix omission of async keywords. by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2163](https://togithub.com/vuejs/test-utils/pull/2163)
- docs: fix spell Exemple to Example by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- docs: Add removal of createWrapper by
[@&#8203;AntonioDell](https://togithub.com/AntonioDell) in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)
- docs: comparison of functions with v1 by
[@&#8203;freakzlike](https://togithub.com/freakzlike) in
[https://github.com/vuejs/test-utils/pull/2175](https://togithub.com/vuejs/test-utils/pull/2175)
- docs: fix typo in code example by
[@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- feat: update the website application by
[@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)

##### Chore

- Add WebdriverIO to list of supporting frameworks by
[@&#8203;christian-bromann](https://togithub.com/christian-bromann) in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- ci: add node v20 and drop node v16 by
[@&#8203;cexbrayat](https://togithub.com/cexbrayat) in
[https://github.com/vuejs/test-utils/pull/2190](https://togithub.com/vuejs/test-utils/pull/2190)
- chore(deps): update all non-major dependencies by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2233](https://togithub.com/vuejs/test-utils/pull/2233)
- preparing for Vue 3.3.9 by [@&#8203;pikax](https://togithub.com/pikax)
in
[https://github.com/vuejs/test-utils/pull/2240](https://togithub.com/vuejs/test-utils/pull/2240)

#### New Contributors

- [@&#8203;yasuaki640](https://togithub.com/yasuaki640) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- [@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)
- [@&#8203;rory-instil](https://togithub.com/rory-instil) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- [@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)
- [@&#8203;richex-cn](https://togithub.com/richex-cn) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2178](https://togithub.com/vuejs/test-utils/pull/2178)
- [@&#8203;christian-bromann](https://togithub.com/christian-bromann)
made their first contribution in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- [@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) made
their first contribution in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- [@&#8203;harunari0928](https://togithub.com/harunari0928) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- [@&#8203;AntonioDell](https://togithub.com/AntonioDell) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)

**Full Changelog**:
vuejs/test-utils@v2.4.1...v2.4.2

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.0.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#500-2023-11-16)

</details>

<details>
<summary>vuejs/core (vue)</summary>

###
[`v3.3.8`](https://togithub.com/vuejs/core/blob/HEAD/CHANGELOG.md#338-2023-11-06)

[Compare
Source](https://togithub.com/vuejs/core/compare/v3.3.7...v3.3.8)

##### Bug Fixes

- **compile-sfc:** support `Error` type in `defineProps`
([#&#8203;5955](https://togithub.com/vuejs/core/issues/5955))
([a989345](https://togithub.com/vuejs/core/commit/a9893458ec519aae442e1b99e64e6d74685cd22c))
- **compiler-core:** known global should be shadowed by local variables
in expression rewrite
([#&#8203;9492](https://togithub.com/vuejs/core/issues/9492))
([a75d1c5](https://togithub.com/vuejs/core/commit/a75d1c5c6242e91a73cc5ba01e6da620dea0b3d9)),
closes [#&#8203;9482](https://togithub.com/vuejs/core/issues/9482)
- **compiler-sfc:** fix dynamic directive arguments usage check for
slots ([#&#8203;9495](https://togithub.com/vuejs/core/issues/9495))
([b39fa1f](https://togithub.com/vuejs/core/commit/b39fa1f8157647859331ce439c42ae016a49b415)),
closes [#&#8203;9493](https://togithub.com/vuejs/core/issues/9493)
- **deps:** update dependency
[@&#8203;vue/repl](https://togithub.com/vue/repl) to ^2.6.2
([#&#8203;9536](https://togithub.com/vuejs/core/issues/9536))
([5cef325](https://togithub.com/vuejs/core/commit/5cef325f41e3b38657c72fa1a38dedeee1c7a60a))
- **deps:** update dependency
[@&#8203;vue/repl](https://togithub.com/vue/repl) to ^2.6.3
([#&#8203;9540](https://togithub.com/vuejs/core/issues/9540))
([176d590](https://togithub.com/vuejs/core/commit/176d59058c9aecffe9da4d4311e98496684f06d4))
- **hydration:** fix tagName access eeror on comment/text node hydration
mismatch
([dd8a0cf](https://togithub.com/vuejs/core/commit/dd8a0cf5dcde13d2cbd899262a0e07f16e14e489)),
closes [#&#8203;9531](https://togithub.com/vuejs/core/issues/9531)
- **types:** avoid exposing lru-cache types in generated dts
([462aeb3](https://togithub.com/vuejs/core/commit/462aeb3b600765e219ded2ee9a0ed1e74df61de0)),
closes [#&#8203;9521](https://togithub.com/vuejs/core/issues/9521)
- **warn:** avoid warning on empty children with Suspense
([#&#8203;3962](https://togithub.com/vuejs/core/issues/3962))
([405f345](https://togithub.com/vuejs/core/commit/405f34587a63a5f1e3d147b9848219ea98acc22d))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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/slipmatio/toolbelt).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in slipmatio/logger Nov 20, 2023
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@playwright/test](https://playwright.dev)
([source](https://togithub.com/microsoft/playwright)) | [`1.39.0` ->
`1.40.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.39.0/1.40.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.39.0/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.39.0/1.40.0?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)) |
[`20.9.0` ->
`20.9.1`](https://renovatebot.com/diffs/npm/@types%2fnode/20.9.0/20.9.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.9.0/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.9.0/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue)) | [`4.4.1` ->
`4.5.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@vue/test-utils](https://togithub.com/vuejs/test-utils) | [`2.4.1` ->
`2.4.2`](https://renovatebot.com/diffs/npm/@vue%2ftest-utils/2.4.1/2.4.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme)
([source](https://togithub.com/vitejs/vite)) | [`4.5.0` ->
`5.0.0`](https://renovatebot.com/diffs/npm/vite/4.5.0/5.0.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>microsoft/playwright (@&#8203;playwright/test)</summary>

###
[`v1.40.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.40.0)

[Compare
Source](https://togithub.com/microsoft/playwright/compare/v1.39.0...v1.40.0)

#### Test Generator Update

![Playwright Test
Generator](https://togithub.com/microsoft/playwright/assets/9881434/e8d67e2e-f36d-4301-8631-023948d3e190)

New tools to generate assertions:

- "Assert visibility" tool generates
[expect(locator).toBeVisible()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-be-visible).
- "Assert value" tool generates
[expect(locator).toHaveValue(value)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-value).
- "Assert text" tool generates
[expect(locator).toContainText(text)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-contain-text).

Here is an example of a generated test with assertions:

```js
import { test, expect } from '@&#8203;playwright/test';

test('test', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await page.getByRole('link', { name: 'Get started' }).click();
  await expect(page.getByLabel('Breadcrumbs').getByRole('list')).toContainText('Installation');
  await expect(page.getByLabel('Search')).toBeVisible();
  await page.getByLabel('Search').click();
  await page.getByPlaceholder('Search docs').fill('locator');
  await expect(page.getByPlaceholder('Search docs')).toHaveValue('locator');
});
```

#### New APIs

- Option `reason` in
[page.close()](https://playwright.dev/docs/api/class-page#page-close),
[browserContext.close()](https://playwright.dev/docs/api/class-browsercontext#browser-context-close)
and
[browser.close()](https://playwright.dev/docs/api/class-browser#browser-close).
Close reason is reported for all operations interrupted by the closure.
- Option `firefoxUserPrefs` in
[browserType.launchPersistentContext(userDataDir)](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context).

#### Other Changes

- Methods
[download.path()](https://playwright.dev/docs/api/class-download#download-path)
and
[download.createReadStream()](https://playwright.dev/docs/api/class-download#download-create-read-stream)
throw an error for failed and cancelled downloads.
- Playwright [docker image](https://playwright.dev/docs/docker) now
comes with Node.js v20.

#### Browser Versions

-   Chromium 120.0.6099.28
-   Mozilla Firefox 119.0
-   WebKit 17.4

This version was also tested against the following stable channels:

-   Google Chrome 119
-   Microsoft Edge 119

</details>

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v4.5.0`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#450-2023-11-16)

- chore: update peerDependencies to support Vite 5
([#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290))
([f92861a](https://togithub.com/vitejs/vite-plugin-vue/commit/f92861a)),
closes
[#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290)
- chore: upgrade deps
([c046eba](https://togithub.com/vitejs/vite-plugin-vue/commit/c046eba))
- fix(deps): update all non-major dependencies
([#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262))
([c316d43](https://togithub.com/vitejs/vite-plugin-vue/commit/c316d43)),
closes
[#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262)

</details>

<details>
<summary>vuejs/test-utils (@&#8203;vue/test-utils)</summary>

###
[`v2.4.2`](https://togithub.com/vuejs/test-utils/releases/tag/v2.4.2)

[Compare
Source](https://togithub.com/vuejs/test-utils/compare/v2.4.1...v2.4.2)

#### What's Changed

##### Fix

- fix: (could be considered a feature?) allow custom `<transition>`
stubs by [@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2185](https://togithub.com/vuejs/test-utils/pull/2185)
- fix: Fixing prototype methods being discarded when using `setData` by
[@&#8203;rory-instil](https://togithub.com/rory-instil) in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- fix(deps): update all non-major dependencies to v1.8.8 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2143](https://togithub.com/vuejs/test-utils/pull/2143)
- fix(deps): update all non-major dependencies to v1.8.13 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2193](https://togithub.com/vuejs/test-utils/pull/2193)
- fix(deps): update all non-major dependencies to v1.8.19 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2211](https://togithub.com/vuejs/test-utils/pull/2211)
- fix: stricter props types by
[@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2137](https://togithub.com/vuejs/test-utils/pull/2137)
- fix(deps): update all non-major dependencies to v1.8.21 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2224](https://togithub.com/vuejs/test-utils/pull/2224)
- fix: wrapper.text method by
[@&#8203;harunari0928](https://togithub.com/harunari0928) in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- fix(types): use `VNodeChild` type from `vue` to avoid breakage by
[@&#8203;sodatea](https://togithub.com/sodatea) in
[https://github.com/vuejs/test-utils/pull/2237](https://togithub.com/vuejs/test-utils/pull/2237)
- Fixed typo in accessibility word by
[@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)

##### Docs

- docs: Fix omission of async keywords. by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2163](https://togithub.com/vuejs/test-utils/pull/2163)
- docs: fix spell Exemple to Example by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- docs: Add removal of createWrapper by
[@&#8203;AntonioDell](https://togithub.com/AntonioDell) in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)
- docs: comparison of functions with v1 by
[@&#8203;freakzlike](https://togithub.com/freakzlike) in
[https://github.com/vuejs/test-utils/pull/2175](https://togithub.com/vuejs/test-utils/pull/2175)
- docs: fix typo in code example by
[@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- feat: update the website application by
[@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)

##### Chore

- Add WebdriverIO to list of supporting frameworks by
[@&#8203;christian-bromann](https://togithub.com/christian-bromann) in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- ci: add node v20 and drop node v16 by
[@&#8203;cexbrayat](https://togithub.com/cexbrayat) in
[https://github.com/vuejs/test-utils/pull/2190](https://togithub.com/vuejs/test-utils/pull/2190)
- chore(deps): update all non-major dependencies by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2233](https://togithub.com/vuejs/test-utils/pull/2233)
- preparing for Vue 3.3.9 by [@&#8203;pikax](https://togithub.com/pikax)
in
[https://github.com/vuejs/test-utils/pull/2240](https://togithub.com/vuejs/test-utils/pull/2240)

#### New Contributors

- [@&#8203;yasuaki640](https://togithub.com/yasuaki640) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- [@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)
- [@&#8203;rory-instil](https://togithub.com/rory-instil) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- [@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)
- [@&#8203;richex-cn](https://togithub.com/richex-cn) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2178](https://togithub.com/vuejs/test-utils/pull/2178)
- [@&#8203;christian-bromann](https://togithub.com/christian-bromann)
made their first contribution in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- [@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) made
their first contribution in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- [@&#8203;harunari0928](https://togithub.com/harunari0928) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- [@&#8203;AntonioDell](https://togithub.com/AntonioDell) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)

**Full Changelog**:
vuejs/test-utils@v2.4.1...v2.4.2

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.0.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#500-2023-11-16)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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/slipmatio/logger).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in slipmatio/ui Nov 20, 2023
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@playwright/test](https://playwright.dev)
([source](https://togithub.com/microsoft/playwright)) | [`1.39.0` ->
`1.40.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.39.0/1.40.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.39.0/1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.39.0/1.40.0?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)) |
[`20.9.0` ->
`20.9.1`](https://renovatebot.com/diffs/npm/@types%2fnode/20.9.0/20.9.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.9.0/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.9.0/20.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@vitejs/plugin-vue](https://togithub.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#readme)
([source](https://togithub.com/vitejs/vite-plugin-vue)) | [`4.4.1` ->
`4.5.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-vue/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-vue/4.4.1/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@vue/test-utils](https://togithub.com/vuejs/test-utils) | [`2.4.1` ->
`2.4.2`](https://renovatebot.com/diffs/npm/@vue%2ftest-utils/2.4.1/2.4.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vue%2ftest-utils/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vue%2ftest-utils/2.4.1/2.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme)
([source](https://togithub.com/vitejs/vite)) | [`4.5.0` ->
`5.0.0`](https://renovatebot.com/diffs/npm/vite/4.5.0/5.0.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>microsoft/playwright (@&#8203;playwright/test)</summary>

###
[`v1.40.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.40.0)

[Compare
Source](https://togithub.com/microsoft/playwright/compare/v1.39.0...v1.40.0)

#### Test Generator Update

![Playwright Test
Generator](https://togithub.com/microsoft/playwright/assets/9881434/e8d67e2e-f36d-4301-8631-023948d3e190)

New tools to generate assertions:

- "Assert visibility" tool generates
[expect(locator).toBeVisible()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-be-visible).
- "Assert value" tool generates
[expect(locator).toHaveValue(value)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-value).
- "Assert text" tool generates
[expect(locator).toContainText(text)](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-contain-text).

Here is an example of a generated test with assertions:

```js
import { test, expect } from '@&#8203;playwright/test';

test('test', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await page.getByRole('link', { name: 'Get started' }).click();
  await expect(page.getByLabel('Breadcrumbs').getByRole('list')).toContainText('Installation');
  await expect(page.getByLabel('Search')).toBeVisible();
  await page.getByLabel('Search').click();
  await page.getByPlaceholder('Search docs').fill('locator');
  await expect(page.getByPlaceholder('Search docs')).toHaveValue('locator');
});
```

#### New APIs

- Option `reason` in
[page.close()](https://playwright.dev/docs/api/class-page#page-close),
[browserContext.close()](https://playwright.dev/docs/api/class-browsercontext#browser-context-close)
and
[browser.close()](https://playwright.dev/docs/api/class-browser#browser-close).
Close reason is reported for all operations interrupted by the closure.
- Option `firefoxUserPrefs` in
[browserType.launchPersistentContext(userDataDir)](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context).

#### Other Changes

- Methods
[download.path()](https://playwright.dev/docs/api/class-download#download-path)
and
[download.createReadStream()](https://playwright.dev/docs/api/class-download#download-create-read-stream)
throw an error for failed and cancelled downloads.
- Playwright [docker image](https://playwright.dev/docs/docker) now
comes with Node.js v20.

#### Browser Versions

-   Chromium 120.0.6099.28
-   Mozilla Firefox 119.0
-   WebKit 17.4

This version was also tested against the following stable channels:

-   Google Chrome 119
-   Microsoft Edge 119

</details>

<details>
<summary>vitejs/vite-plugin-vue (@&#8203;vitejs/plugin-vue)</summary>

###
[`v4.5.0`](https://togithub.com/vitejs/vite-plugin-vue/blob/HEAD/packages/plugin-vue/CHANGELOG.md#450-2023-11-16)

- chore: update peerDependencies to support Vite 5
([#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290))
([f92861a](https://togithub.com/vitejs/vite-plugin-vue/commit/f92861a)),
closes
[#&#8203;290](https://togithub.com/vitejs/vite-plugin-vue/issues/290)
- chore: upgrade deps
([c046eba](https://togithub.com/vitejs/vite-plugin-vue/commit/c046eba))
- fix(deps): update all non-major dependencies
([#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262))
([c316d43](https://togithub.com/vitejs/vite-plugin-vue/commit/c316d43)),
closes
[#&#8203;262](https://togithub.com/vitejs/vite-plugin-vue/issues/262)

</details>

<details>
<summary>vuejs/test-utils (@&#8203;vue/test-utils)</summary>

###
[`v2.4.2`](https://togithub.com/vuejs/test-utils/releases/tag/v2.4.2)

[Compare
Source](https://togithub.com/vuejs/test-utils/compare/v2.4.1...v2.4.2)

#### What's Changed

##### Fix

- fix: (could be considered a feature?) allow custom `<transition>`
stubs by [@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2185](https://togithub.com/vuejs/test-utils/pull/2185)
- fix: Fixing prototype methods being discarded when using `setData` by
[@&#8203;rory-instil](https://togithub.com/rory-instil) in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- fix(deps): update all non-major dependencies to v1.8.8 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2143](https://togithub.com/vuejs/test-utils/pull/2143)
- fix(deps): update all non-major dependencies to v1.8.13 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2193](https://togithub.com/vuejs/test-utils/pull/2193)
- fix(deps): update all non-major dependencies to v1.8.19 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2211](https://togithub.com/vuejs/test-utils/pull/2211)
- fix: stricter props types by
[@&#8203;alecgibson](https://togithub.com/alecgibson) in
[https://github.com/vuejs/test-utils/pull/2137](https://togithub.com/vuejs/test-utils/pull/2137)
- fix(deps): update all non-major dependencies to v1.8.21 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2224](https://togithub.com/vuejs/test-utils/pull/2224)
- fix: wrapper.text method by
[@&#8203;harunari0928](https://togithub.com/harunari0928) in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- fix(types): use `VNodeChild` type from `vue` to avoid breakage by
[@&#8203;sodatea](https://togithub.com/sodatea) in
[https://github.com/vuejs/test-utils/pull/2237](https://togithub.com/vuejs/test-utils/pull/2237)
- Fixed typo in accessibility word by
[@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)

##### Docs

- docs: Fix omission of async keywords. by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2163](https://togithub.com/vuejs/test-utils/pull/2163)
- docs: fix spell Exemple to Example by
[@&#8203;yasuaki640](https://togithub.com/yasuaki640) in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- docs: Add removal of createWrapper by
[@&#8203;AntonioDell](https://togithub.com/AntonioDell) in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)
- docs: comparison of functions with v1 by
[@&#8203;freakzlike](https://togithub.com/freakzlike) in
[https://github.com/vuejs/test-utils/pull/2175](https://togithub.com/vuejs/test-utils/pull/2175)
- docs: fix typo in code example by
[@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- feat: update the website application by
[@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)

##### Chore

- Add WebdriverIO to list of supporting frameworks by
[@&#8203;christian-bromann](https://togithub.com/christian-bromann) in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- ci: add node v20 and drop node v16 by
[@&#8203;cexbrayat](https://togithub.com/cexbrayat) in
[https://github.com/vuejs/test-utils/pull/2190](https://togithub.com/vuejs/test-utils/pull/2190)
- chore(deps): update all non-major dependencies by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/vuejs/test-utils/pull/2233](https://togithub.com/vuejs/test-utils/pull/2233)
- preparing for Vue 3.3.9 by [@&#8203;pikax](https://togithub.com/pikax)
in
[https://github.com/vuejs/test-utils/pull/2240](https://togithub.com/vuejs/test-utils/pull/2240)

#### New Contributors

- [@&#8203;yasuaki640](https://togithub.com/yasuaki640) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2161](https://togithub.com/vuejs/test-utils/pull/2161)
- [@&#8203;ramsesmoreno](https://togithub.com/ramsesmoreno) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2160](https://togithub.com/vuejs/test-utils/pull/2160)
- [@&#8203;rory-instil](https://togithub.com/rory-instil) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2166](https://togithub.com/vuejs/test-utils/pull/2166)
- [@&#8203;nazarepiedady](https://togithub.com/nazarepiedady) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2171](https://togithub.com/vuejs/test-utils/pull/2171)
- [@&#8203;richex-cn](https://togithub.com/richex-cn) made their first
contribution in
[https://github.com/vuejs/test-utils/pull/2178](https://togithub.com/vuejs/test-utils/pull/2178)
- [@&#8203;christian-bromann](https://togithub.com/christian-bromann)
made their first contribution in
[https://github.com/vuejs/test-utils/pull/2189](https://togithub.com/vuejs/test-utils/pull/2189)
- [@&#8203;dennybiasiolli](https://togithub.com/dennybiasiolli) made
their first contribution in
[https://github.com/vuejs/test-utils/pull/2212](https://togithub.com/vuejs/test-utils/pull/2212)
- [@&#8203;harunari0928](https://togithub.com/harunari0928) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2231](https://togithub.com/vuejs/test-utils/pull/2231)
- [@&#8203;AntonioDell](https://togithub.com/AntonioDell) made their
first contribution in
[https://github.com/vuejs/test-utils/pull/2235](https://togithub.com/vuejs/test-utils/pull/2235)

**Full Changelog**:
vuejs/test-utils@v2.4.1...v2.4.2

</details>

<details>
<summary>vitejs/vite (vite)</summary>

###
[`v5.0.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#500-2023-11-16)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
Europe/Helsinki, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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/slipmatio/ui).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.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.

2 participants