From 19e112fa7ba55f01245c83ea6885485de8b63e87 Mon Sep 17 00:00:00 2001 From: Max Nowack Date: Fri, 4 Apr 2025 11:02:41 +0200 Subject: [PATCH 01/85] ci: fix codecov test analysis --- packages/base/core/vitest.config.mts | 9 +-------- packages/base/sync/vitest.config.mts | 9 +-------- packages/devtools/devtools/vitest.config.mts | 1 - packages/integrations/react/vitest.config.mts | 9 +-------- packages/persistence-adapters/fs/vitest.config.mts | 9 +-------- .../persistence-adapters/indexeddb/vitest.config.mts | 9 +-------- .../persistence-adapters/localstorage/vitest.config.mts | 9 +-------- packages/persistence-adapters/opfs/vitest.config.mts | 9 +-------- packages/reactivity-adapters/angular/vitest.config.mts | 9 +-------- .../reactivity-adapters/maverickjs/vitest.config.mts | 9 +-------- packages/reactivity-adapters/meteor/vitest.config.mts | 9 +-------- packages/reactivity-adapters/mobx/vitest.config.mts | 9 +-------- packages/reactivity-adapters/oby/vitest.config.mts | 9 +-------- packages/reactivity-adapters/preact/vitest.config.mts | 9 +-------- .../reactivity-adapters/reactively/vitest.config.mts | 9 +-------- packages/reactivity-adapters/sinuous/vitest.config.mts | 9 +-------- packages/reactivity-adapters/sjs/vitest.config.mts | 9 +-------- packages/reactivity-adapters/solid/vitest.config.mts | 9 +-------- packages/reactivity-adapters/usignal/vitest.config.mts | 9 +-------- packages/reactivity-adapters/vue/vitest.config.mts | 9 +-------- vitest.config.mts | 2 +- 21 files changed, 20 insertions(+), 154 deletions(-) diff --git a/packages/base/core/vitest.config.mts b/packages/base/core/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/base/core/vitest.config.mts +++ b/packages/base/core/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/base/sync/vitest.config.mts b/packages/base/sync/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/base/sync/vitest.config.mts +++ b/packages/base/sync/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/devtools/devtools/vitest.config.mts b/packages/devtools/devtools/vitest.config.mts index 35cc8362..402e1be3 100644 --- a/packages/devtools/devtools/vitest.config.mts +++ b/packages/devtools/devtools/vitest.config.mts @@ -7,6 +7,5 @@ export default mergeConfig(viteConfig, defineConfig({ coverage: { provider: 'istanbul', }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], }, })) diff --git a/packages/integrations/react/vitest.config.mts b/packages/integrations/react/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/integrations/react/vitest.config.mts +++ b/packages/integrations/react/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/persistence-adapters/fs/vitest.config.mts b/packages/persistence-adapters/fs/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/persistence-adapters/fs/vitest.config.mts +++ b/packages/persistence-adapters/fs/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/persistence-adapters/indexeddb/vitest.config.mts b/packages/persistence-adapters/indexeddb/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/persistence-adapters/indexeddb/vitest.config.mts +++ b/packages/persistence-adapters/indexeddb/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/persistence-adapters/localstorage/vitest.config.mts b/packages/persistence-adapters/localstorage/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/persistence-adapters/localstorage/vitest.config.mts +++ b/packages/persistence-adapters/localstorage/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/persistence-adapters/opfs/vitest.config.mts b/packages/persistence-adapters/opfs/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/persistence-adapters/opfs/vitest.config.mts +++ b/packages/persistence-adapters/opfs/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/angular/vitest.config.mts b/packages/reactivity-adapters/angular/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/angular/vitest.config.mts +++ b/packages/reactivity-adapters/angular/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/maverickjs/vitest.config.mts b/packages/reactivity-adapters/maverickjs/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/maverickjs/vitest.config.mts +++ b/packages/reactivity-adapters/maverickjs/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/meteor/vitest.config.mts b/packages/reactivity-adapters/meteor/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/meteor/vitest.config.mts +++ b/packages/reactivity-adapters/meteor/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/mobx/vitest.config.mts b/packages/reactivity-adapters/mobx/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/mobx/vitest.config.mts +++ b/packages/reactivity-adapters/mobx/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/oby/vitest.config.mts b/packages/reactivity-adapters/oby/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/oby/vitest.config.mts +++ b/packages/reactivity-adapters/oby/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/preact/vitest.config.mts b/packages/reactivity-adapters/preact/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/preact/vitest.config.mts +++ b/packages/reactivity-adapters/preact/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/reactively/vitest.config.mts b/packages/reactivity-adapters/reactively/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/reactively/vitest.config.mts +++ b/packages/reactivity-adapters/reactively/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/sinuous/vitest.config.mts b/packages/reactivity-adapters/sinuous/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/sinuous/vitest.config.mts +++ b/packages/reactivity-adapters/sinuous/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/sjs/vitest.config.mts b/packages/reactivity-adapters/sjs/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/sjs/vitest.config.mts +++ b/packages/reactivity-adapters/sjs/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/solid/vitest.config.mts b/packages/reactivity-adapters/solid/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/solid/vitest.config.mts +++ b/packages/reactivity-adapters/solid/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/usignal/vitest.config.mts b/packages/reactivity-adapters/usignal/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/usignal/vitest.config.mts +++ b/packages/reactivity-adapters/usignal/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/packages/reactivity-adapters/vue/vitest.config.mts b/packages/reactivity-adapters/vue/vitest.config.mts index 0787c855..5fc1bc3f 100644 --- a/packages/reactivity-adapters/vue/vitest.config.mts +++ b/packages/reactivity-adapters/vue/vitest.config.mts @@ -1,11 +1,4 @@ import { defineConfig, mergeConfig } from 'vitest/config' import viteConfig from './vite.config.mts' -export default mergeConfig(viteConfig, defineConfig({ - test: { - coverage: { - provider: 'istanbul', - }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], - }, -})) +export default mergeConfig(viteConfig, defineConfig({})) diff --git a/vitest.config.mts b/vitest.config.mts index 63ae5d01..2806e514 100644 --- a/vitest.config.mts +++ b/vitest.config.mts @@ -24,6 +24,6 @@ export default defineConfig({ 'packages/devtools/devtools', ], }, - reporters: process.env.GITHUB_ACTIONS ? ['dot', 'github-actions'] : ['dot'], + reporters: process.env.GITHUB_ACTIONS ? ['dot', 'junit', 'github-actions'] : ['dot'], }, }) From fc98b6672d6055d5c7c7a9015a4e68f1cd724bd5 Mon Sep 17 00:00:00 2001 From: Max Nowack Date: Fri, 4 Apr 2025 11:10:43 +0200 Subject: [PATCH 02/85] ci: require bundle changes for comment in codecov configuration --- codecov.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codecov.yml b/codecov.yml index 003ba7d8..957eca06 100644 --- a/codecov.yml +++ b/codecov.yml @@ -7,3 +7,6 @@ coverage: bundle_analysis: warning_threshold: 5% status: informational + +comment: + require_bundle_changes: True From 013999a87262db144c44163b6069b96fcb5d2709 Mon Sep 17 00:00:00 2001 From: Maikel ten Voorde Date: Fri, 4 Apr 2025 10:27:17 +0200 Subject: [PATCH 03/85] fix: add dispose functionality for svelte adapter fix: modified the svelte test docs: update svelte documentation docs: update svelte documentation --- docs/guides/svelte/index.md | 20 ++----------------- docs/reactivity/index.md | 2 +- docs/reference/svelte/index.md | 13 +----------- .../__tests__/reactivity.svelte.spec.ts | 16 +-------------- .../svelte/index.svelte.ts | 16 +++++++++++++-- 5 files changed, 19 insertions(+), 48 deletions(-) diff --git a/docs/guides/svelte/index.md b/docs/guides/svelte/index.md index 5b8fc35a..47cddcc2 100644 --- a/docs/guides/svelte/index.md +++ b/docs/guides/svelte/index.md @@ -58,15 +58,7 @@ const Posts = new Collection({ reactivity: svelteReactivityAdapter, }); -let items = $state.raw([]); -$effect(() => { - const cursor = Posts.find({}); - items = cursor.fetch(); - - return () => { - cursor.cleanup(); - }; -}); +let items = $directive(Posts.find({}).fetch()); ``` This code sets up a `Posts` collection and enables reactivity using Svelte’s built-in reactivity features. @@ -84,15 +76,7 @@ Now let's create a component that lists posts and allows the user to add new one reactivity: svelteReactivityAdapter, }); - let items = $state.raw([]); - $effect(() => { - const cursor = Posts.find({}); - items = cursor.fetch(); - - return () => { - cursor.cleanup(); - }; - }); + let items = $directive(Posts.find({}).fetch());