From 65ffbb755a86f28219bea8e10ceece7e1d14048e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 28 Jun 2024 20:14:02 -0400 Subject: [PATCH 1/5] chore(deps): bump codecov/codecov-action from 3 to 4 in the actions group across 1 directory (#388) * chore(deps): bump codecov/codecov-action Bumps the actions group with 1 update in the / directory: [codecov/codecov-action](https://github.com/codecov/codecov-action). Updates `codecov/codecov-action` from 3 to 4 - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/codecov/codecov-action/compare/v3...v4) --- updated-dependencies: - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions ... Signed-off-by: dependabot[bot] Co-authored-by: Michael Cousins --- .github/workflows/release.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ef92dc0..7b7ca01 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,6 +20,11 @@ jobs: name: Node ${{ matrix.node }}, Svelte ${{ matrix.svelte }}, ${{ matrix.test-runner }} runs-on: ubuntu-latest continue-on-error: ${{ matrix.experimental }} + + # enable OIDC for codecov uploads + permissions: + id-token: write + strategy: fail-fast: false matrix: @@ -64,7 +69,10 @@ jobs: run: npm run types - name: ⬆️ Upload coverage report - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 + with: + use_oidc: true + fail_ci_if_error: true build: runs-on: ubuntu-latest From 054bc0df571338d0d9be60387beac189e4c1d337 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 28 Jun 2024 20:36:49 -0400 Subject: [PATCH 2/5] chore(deps-dev): bump the lint group across 1 directory with 6 updates (#387) Bumps the lint group with 6 updates in the / directory: | Package | From | To | | --- | --- | --- | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `7.8.0` | `7.14.1` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `7.8.0` | `7.14.1` | | [eslint-plugin-promise](https://github.com/eslint-community/eslint-plugin-promise) | `6.1.1` | `6.2.0` | | [eslint-plugin-svelte](https://github.com/sveltejs/eslint-plugin-svelte) | `2.38.0` | `2.41.0` | | [prettier](https://github.com/prettier/prettier) | `3.2.5` | `3.3.2` | | [prettier-plugin-svelte](https://github.com/sveltejs/prettier-plugin-svelte) | `3.2.3` | `3.2.5` | Updates `@typescript-eslint/eslint-plugin` from 7.8.0 to 7.14.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.8.0 to 7.14.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/parser) Updates `eslint-plugin-promise` from 6.1.1 to 6.2.0 - [Release notes](https://github.com/eslint-community/eslint-plugin-promise/releases) - [Changelog](https://github.com/eslint-community/eslint-plugin-promise/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint-community/eslint-plugin-promise/compare/v6.1.1...v6.2.0) Updates `eslint-plugin-svelte` from 2.38.0 to 2.41.0 - [Release notes](https://github.com/sveltejs/eslint-plugin-svelte/releases) - [Commits](https://github.com/sveltejs/eslint-plugin-svelte/compare/v2.38.0...eslint-plugin-svelte@2.41.0) Updates `prettier` from 3.2.5 to 3.3.2 - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.2) Updates `prettier-plugin-svelte` from 3.2.3 to 3.2.5 - [Changelog](https://github.com/sveltejs/prettier-plugin-svelte/blob/master/CHANGELOG.md) - [Commits](https://github.com/sveltejs/prettier-plugin-svelte/compare/v3.2.3...v3.2.5) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: eslint-plugin-promise dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: eslint-plugin-svelte dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: prettier-plugin-svelte dependency-type: direct:development update-type: version-update:semver-patch dependency-group: lint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 47d6103..b6a0c37 100644 --- a/package.json +++ b/package.json @@ -96,8 +96,8 @@ "@sveltejs/vite-plugin-svelte": "^3.1.1", "@testing-library/jest-dom": "^6.3.0", "@testing-library/user-event": "^14.5.2", - "@typescript-eslint/eslint-plugin": "7.8.0", - "@typescript-eslint/parser": "7.8.0", + "@typescript-eslint/eslint-plugin": "7.14.1", + "@typescript-eslint/parser": "7.14.1", "@vitest/coverage-v8": "^1.5.2", "all-contributors-cli": "^6.26.1", "doctoc": "^2.2.1", @@ -107,9 +107,9 @@ "eslint-plugin-import": "2.29.1", "eslint-plugin-json-files": "^4.1.0", "eslint-plugin-n": "16.6.2", - "eslint-plugin-promise": "6.1.1", + "eslint-plugin-promise": "6.2.0", "eslint-plugin-simple-import-sort": "12.1.0", - "eslint-plugin-svelte": "2.38.0", + "eslint-plugin-svelte": "2.41.0", "eslint-plugin-vitest-globals": "1.5.0", "expect-type": "^0.19.0", "happy-dom": "^14.7.1", @@ -117,8 +117,8 @@ "jest-environment-jsdom": "^29.7.0", "jsdom": "^24.0.0", "npm-run-all": "^4.1.5", - "prettier": "3.2.5", - "prettier-plugin-svelte": "3.2.3", + "prettier": "3.3.2", + "prettier-plugin-svelte": "3.2.5", "svelte": "^3 || ^4 || ^5 || ^5.0.0-next.0", "svelte-check": "^3.6.3", "svelte-jester": "^5.0.0", From d64de4a1bbbd7d31861272c26116cf25ea5497d1 Mon Sep 17 00:00:00 2001 From: Michael Cousins Date: Fri, 28 Jun 2024 20:57:01 -0400 Subject: [PATCH 3/5] test(coverage): ensure proper files are included/excluded (#389) --- jest.config.js | 6 ++++++ vite.config.js | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/jest.config.js b/jest.config.js index 8e78075..4857b64 100644 --- a/jest.config.js +++ b/jest.config.js @@ -18,4 +18,10 @@ export default { }, resetMocks: true, restoreMocks: true, + collectCoverageFrom: ['/src/**/*'], + coveragePathIgnorePatterns: [ + '/__tests__/', + '/src/vite.js', + '/src/vitest.js', + ], } diff --git a/vite.config.js b/vite.config.js index b165d41..76baf61 100644 --- a/vite.config.js +++ b/vite.config.js @@ -13,7 +13,8 @@ export default defineConfig({ unstubGlobals: true, coverage: { provider: 'v8', - include: ['src'], + include: ['src/**/*'], + exclude: ['**/__tests__/**', 'src/vite.js', 'src/vitest.js'], }, }, }) From f5b7fe10fee20cb5a216c475c2efa7b369c5a24d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Jul 2024 22:02:42 -0400 Subject: [PATCH 4/5] chore(deps-dev): bump the lint group with 3 updates (#392) Bumps the lint group with 3 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin), [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) and [eslint-plugin-promise](https://github.com/eslint-community/eslint-plugin-promise). Updates `@typescript-eslint/eslint-plugin` from 7.14.1 to 7.15.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.15.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 7.14.1 to 7.15.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.15.0/packages/parser) Updates `eslint-plugin-promise` from 6.2.0 to 6.4.0 - [Release notes](https://github.com/eslint-community/eslint-plugin-promise/releases) - [Changelog](https://github.com/eslint-community/eslint-plugin-promise/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint-community/eslint-plugin-promise/compare/v6.2.0...v6.4.0) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: eslint-plugin-promise dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index b6a0c37..c4924f5 100644 --- a/package.json +++ b/package.json @@ -96,8 +96,8 @@ "@sveltejs/vite-plugin-svelte": "^3.1.1", "@testing-library/jest-dom": "^6.3.0", "@testing-library/user-event": "^14.5.2", - "@typescript-eslint/eslint-plugin": "7.14.1", - "@typescript-eslint/parser": "7.14.1", + "@typescript-eslint/eslint-plugin": "7.15.0", + "@typescript-eslint/parser": "7.15.0", "@vitest/coverage-v8": "^1.5.2", "all-contributors-cli": "^6.26.1", "doctoc": "^2.2.1", @@ -107,7 +107,7 @@ "eslint-plugin-import": "2.29.1", "eslint-plugin-json-files": "^4.1.0", "eslint-plugin-n": "16.6.2", - "eslint-plugin-promise": "6.2.0", + "eslint-plugin-promise": "6.4.0", "eslint-plugin-simple-import-sort": "12.1.0", "eslint-plugin-svelte": "2.41.0", "eslint-plugin-vitest-globals": "1.5.0", From 75a3f389934d1c2c4af5a4c9e2dde6a2bfb1cd74 Mon Sep 17 00:00:00 2001 From: Michael Cousins Date: Thu, 25 Jul 2024 19:05:04 -0400 Subject: [PATCH 5/5] fix(svelte5): synchronously flush changes after mount and unmount (#396) --- src/__tests__/mount.test.js | 5 +---- src/core/modern.svelte.js | 3 ++- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/__tests__/mount.test.js b/src/__tests__/mount.test.js index e25c429..df6351d 100644 --- a/src/__tests__/mount.test.js +++ b/src/__tests__/mount.test.js @@ -1,4 +1,4 @@ -import { act, render, screen } from '@testing-library/svelte' +import { render, screen } from '@testing-library/svelte' import { describe, expect, test, vi } from 'vitest' import Mounter from './fixtures/Mounter.svelte' @@ -14,20 +14,17 @@ describe('mount and destroy', () => { const content = screen.getByRole('button') expect(content).toBeInTheDocument() - await act() expect(onMounted).toHaveBeenCalledTimes(1) }) test('component is destroyed', async () => { const { unmount } = renderSubject() - await act() unmount() const content = screen.queryByRole('button') expect(content).not.toBeInTheDocument() - await act() expect(onDestroyed).toHaveBeenCalledTimes(1) }) }) diff --git a/src/core/modern.svelte.js b/src/core/modern.svelte.js index 3da78b4..34893f5 100644 --- a/src/core/modern.svelte.js +++ b/src/core/modern.svelte.js @@ -26,6 +26,7 @@ const mount = (Component, options) => { const props = $state(options.props ?? {}) const component = Svelte.mount(Component, { ...options, props }) + Svelte.flushSync() propsByComponent.set(component, props) return component @@ -34,7 +35,7 @@ const mount = (Component, options) => { /** Remove the component from the DOM. */ const unmount = (component) => { propsByComponent.delete(component) - Svelte.unmount(component) + Svelte.flushSync(() => Svelte.unmount(component)) } /**