Skip to content

feat!: inline projects extend the root config by default#10750

Draft
sheremet-va wants to merge 6 commits into
mainfrom
feat/extends-default-true
Draft

feat!: inline projects extend the root config by default#10750
sheremet-va wants to merge 6 commits into
mainfrom
feat/extends-default-true

Conversation

@sheremet-va

@sheremet-va sheremet-va commented Jul 9, 2026

Copy link
Copy Markdown
Member

Description

extends now defaults to true: inline projects inherit all options from the root config, including plugins. Set extends: false to keep the project isolated.

  • name and projects are never inherited. globalSetup is not inherited from the root config because it already runs once per test run (extending a non-root config still inherits it). The project's own tags replace the inherited array.
  • Extending projects also inherit the programmatic config passed to createVitest/startVitest, so inheritance works even when there is no root config file. Root plugins from the programmatic config are not inherited because their instances are owned by the root server. The programmatic browser configuration is also not inherited: its instances describe a single project, and inheriting them would create duplicate instance names (the --browser flags have the same guard).
  • The hardcoded experimental options propagation is removed; the values are inherited like everything else, and extends: false discards them. --experimental.* CLI flags are applied to every project like the other project-level CLI flags.

Projects referenced as config files or directories are not affected. Documented in the migration guide and the projects guide.

Resolves #7225

@github-actions github-actions Bot added the maybe automated User is likely an AI agent, or the content was generated by an AI assistant without user control label Jul 9, 2026
@vitest-dev vitest-dev deleted a comment from github-actions Bot Jul 9, 2026
@sheremet-va sheremet-va removed the maybe automated User is likely an AI agent, or the content was generated by an AI assistant without user control label Jul 9, 2026
@netlify

netlify Bot commented Jul 9, 2026

Copy link
Copy Markdown

Deploy Preview for vitest-dev ready!

Name Link
🔨 Latest commit d2a617e
🔍 Latest deploy log https://app.netlify.com/projects/vitest-dev/deploys/6a5008b60107c30008ce5fbc
😎 Deploy Preview https://deploy-preview-10750--vitest-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

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

Comment thread packages/vitest/src/node/projects/resolveProjects.ts
@sheremet-va
sheremet-va marked this pull request as draft July 10, 2026 09:42
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.

[v3] Automatically inherit common test config in inline projects

1 participant