Skip to content

Migrate to Vite #314 - #315

Merged
timea-solid merged 1 commit into
stagingfrom
feat/vite-migration
Jul 31, 2026
Merged

Migrate to Vite #314#315
timea-solid merged 1 commit into
stagingfrom
feat/vite-migration

Conversation

@SharonStrats

@SharonStratsSharonStrats commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Migrate from Webpack/babel/jest to Vite

I have tested this in my local solidos setup with most branches pointing at the staging branch (only a couple pane repos were not, but they were created off of the staging branch).

When i ran this for the first time I had trouble with overrides again in solid-panes and actually this time in profile-pane this time as well. I had to remove the override for pane-registry and solid-logic in solid-panes and solid-logic in profile-pane.

Note: the next time I just tested it and I only had to remove the overrides for solid-logic and solid-ui in profile-pane.

@SharonStratsSharonStrats self-assigned this Jul 5, 2026
@SharonStratsSharonStrats added the enhancement New feature or request label Jul 5, 2026
@SharonStratsSharonStrats moved this to In review in SolidOS NLNet UIJul 5, 2026
@SharonStratsSharonStrats linked an issue Jul 5, 2026 that may be closed by this pull request

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the solid-logic build and test tooling from Webpack/Babel/Jest to Vite/Vitest, updating packaging metadata and refactoring tests to run under Vitest with a new fetch-mocking approach.

Changes:

  • Replace Webpack/Babel/Jest configuration with a Vite + Vitest setup (vite.config.mts) and update TypeScript resolution for bundlers.
  • Update package.json scripts/entrypoints/exports to align with the new build output model.
  • Refactor test suite from Jest APIs to Vitest APIs, introducing a custom fetch-mock implementation and updated test setup.

Reviewed changes

Copilot reviewed 23 out of 25 changed files in this pull request and generated 4 comments.

Show a summary per file
FileDescription
webpack.config.mjsRemoved Webpack build configuration as part of the migration to Vite.
vite.config.mtsAdded Vite build config and Vitest configuration (jsdom + setup + coverage).
tsconfig.jsonSwitched to moduleResolution: bundler to better match bundler behavior.
test/utils.test.tsMigrated test runner imports to Vitest.
test/utilityLogic.test.tsMigrated to Vitest and updated fetch mocking/typing within tests.
test/unit/setup.tsAdded shared mock-web and request-capture helper used by test setup.
test/typeIndexLogic.test.tsMigrated Jest environment directives to Vitest imports.
test/testBundles/test-umd.htmlRemoved legacy UMD bundle browser test file.
test/solidAuthLogic.test.tsReplaced Jest module mocking with an inline stub + Vitest imports.
test/profileLogic.test.tsMigrated Jest environment directives to Vitest imports.
test/mocks/solid-oidc-client-browser.tsRemoved Jest-specific module mock implementation.
test/logic.test.tsMigrated to Vitest and updated fetch mocking usage.
test/inboxLogic.test.tsMigrated to Vitest; updated fetch mock matchers and typings.
test/helpers/setup.tsUpdated global test setup for Vitest, including fetch/TextEncoder/TextDecoder setup.
test/helpers/fetch-mock.tsAdded a custom fetch-mock implementation to replace jest-fetch-mock.
test/helpers/debugger.tsMigrated debug silencing from Jest spies to Vitest spies.
test/container.test.tsMigrated to Vitest and updated typings/mocking patterns.
test/chatLogic.test.tsMigrated to Vitest and updated time mocking and typings.
test/authUtil.test.tsMigrated to Vitest imports.
test/aclLogic.test.tsMigrated to Vitest imports and improved typing.
README.mdUpdated documentation to reflect Vite/Vitest usage and updated dependency guidance.
package.jsonUpdated scripts, entrypoints/exports, and dependencies for Vite/Vitest-based workflow.
jest.config.mjsRemoved Jest configuration as part of the migration.
babel.config.mjsRemoved Babel configuration as part of the migration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment threadtest/helpers/fetch-mock.ts
Comment threadtest/utilityLogic.test.ts
Comment threadpackage.json
Comment on lines 65 to 70
"dependencies": {
"@uvdsl/solid-oidc-client-browser": "^0.2.3",
"solid-namespace": "^0.5.4"
"solid-namespace": "^0.5.4",
"vite": "^8.0.16",
"vitest": "^4.1.9"
},

@SharonStratsSharonStratsJul 5, 2026

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is how it was in the package i copied it from. @NoelDeMartin should i change this

Comment threadpackage.json
Prompt: help me change the fetch mock and tests from Jest to Vite
Co-authored-by: GPT-5.4 Mini <gpt-5.4-mini@openai.com>
@SharonStrats

SharonStrats commented Jul 6, 2026

Copy link
Copy Markdown
ContributorAuthor

In order to migrate this to staging, I believe that we have to remove the overrides for solid-ui and solid-logic in profile-pane. Maybe someone else could test this as well to see if I'm correct or if there is something else we can do.

@SharonStratsSharonStrats moved this from In review to In progress in SolidOS NLNet UIJul 8, 2026
@SharonStratsSharonStrats moved this from In progress to In review in SolidOS NLNet UIJul 17, 2026
@timea-solid

timea-solid commented Jul 31, 2026

Copy link
Copy Markdown
Member

I believe it is safe to take out overrides since we build with vite

@timea-solid
timea-solid merged commit 16b446f into stagingJul 31, 2026
7 checks passed
@github-project-automationgithub-project-automationBot moved this from In review to Done in SolidOS NLNet UIJul 31, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancementNew feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Migrate to Vite

3 participants

@SharonStrats@timea-solid