Files
lucide/integrations/lucide-solid
Eric FennisandClaude 857a08d1f2 chore(deps): bump playwright to 1.64.1 to support ubuntu 26.04 runners (#5140)
GitHub's `ubuntu-latest` runners now resolve to Ubuntu 26.04, and
`playwright install --with-deps chromium` fails there on Playwright 1.58.2:

  Cannot install dependencies for ubuntu26.04-x64 with Playwright 1.58.2!
  Error: ERROR: Playwright does not support chromium on ubuntu26.04-x64

Ubuntu 26.04 support was added in Playwright 1.61, so bump the pinned
version in all integration packages to the latest stable (1.64.1). This
fixes the `integration` job in the react, vue, svelte, solid and solid-2
workflows.


Claude-Session: https://claude.ai/code/session_01G9u8FfWcVzm87hKho1ZQcc

Co-authored-by: Claude <noreply@anthropic.com>
2026-11-02 15:03:05 +01:00
..

Lucide Solid integrations

These fixtures exercise the built lucide-solid package in real consumer frameworks.

Every fixture runs three checks:

  • a framework production build;
  • TypeScript with noEmit;
  • Vitest Browser Mode in Chromium.

From the repository root, install Chromium once and run the complete suite:

pnpm --filter @lucide/integration-solid-vite exec playwright install chromium
pnpm test:integrations:solid

The fixtures depend on lucide-solid through workspace:*, but import only its public package entry points. The root command builds lucide-solid before running any consumer checks.

Two TypeScript projects per fixture

tsconfig.json typechecks the fixture's own sources with skipLibCheck: true, like the React fixtures do, because the third-party declarations a Vite app pulls in are not clean under TypeScript 6.

tsconfig.declarations.json compiles only src/IconShowcase.tsx — the file that imports the public entry points — with skipLibCheck: false and no ambient types. That makes tsc read the declarations shipped in dist/types instead of skipping them, so a .d.ts that points at a file the build never emitted fails the check. Both run under pnpm typecheck.

Note that this does not reproduce the bug fixed in #4846, where the published declarations imported @lucide/shared/types: inside the workspace that specifier still resolves through packages/lucide-solid/node_modules. Catching that needs a check against the published tarball rather than the workspace link.