You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
chore(vitest): share one preset across the package configs
Every TypeScript workspace repeated the same Vitest scaffolding: istanbul
coverage, passWithNoTests, the unit/integration/e2e include globs, and, in
apps/cli and packages/config, the bun export-condition resolve blocks
copied onto every inline project because Vitest 4 did not inherit them.
vitest.shared.ts now owns that. definePackageConfig merges the shared
defaults, and testProject(kind, overrides) declares one inline project per
test kind with the file-suffix convention baked in. Vitest 5 inherits the
declaring config into inline projects, so the duplicated resolve blocks and
Dockerfile plugin entries are gone. The root config reuses the same
run-level defaults and loads each package config as a nested project group.
apps/cli-e2e also becomes a nested e2e project so it shows up as
'@supabase/cli-e2e (e2e)' from the root and matches a '*(e2e)' filter; its
lexicographic sequencer stays a run-level option for standalone runs.
Its redundant node_modules exclude is dropped in favour of Vitest's
defaults.
vite is now an explicit root devDependency because the preset imports its
default export-condition lists.
Standalone per-package runs, the CI coverage commands, and a root run all
collect the same projects and test counts as before.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
0 commit comments