Skip to content

fix(solid): keep generated declarations private - #3106

Merged
ryansolid merged 2 commits into
solidjs:nextfrom
brenelz:fix/hide-internal-type-exports
Aug 31, 2026
Merged

fix(solid): keep generated declarations private#3106
ryansolid merged 2 commits into
solidjs:nextfrom
brenelz:fix/hide-internal-type-exports

Conversation

@brenelz

@brenelz brenelz commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • remove the broad solid-js/types/* package export
  • keep TypeScript auto-imports on the supported solid-js entry point instead of emitted client/server declaration modules
  • add a package-boundary regression test and release changeset

Context

The wildcard makes every generated declaration module a public auto-import source. In a configured Solid project, TypeScript consequently offers both solid-js and solid-js/types/server/signals.js for createSignal. The latter has no matching runtime file and fails when emitted as a value import.

The wildcard was introduced for Solid 1 internal type consumers. Those old declaration paths are not present in Solid 2, while the supported values and types are exposed from the package root.

Test plan

  • pnpm --filter ./packages/signals run build
  • pnpm --filter ./packages/solid run types
  • pnpm --filter ./packages/solid run test-types
  • pnpm --filter ./packages/solid run build
  • pnpm --filter ./packages/solid exec vitest run (576 tests)
  • verified in a Solid 2 application that the configured-project completion only offers solid-js; its 10 tests and client/SSR Vite build pass

@changeset-bot

changeset-bot Bot commented Aug 30, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 21ccb7a

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 11 packages
Name Type
solid-js Patch
@solidjs/element Patch
@solidjs/h Patch
@solidjs/html Patch
test-integration Patch
@solidjs/universal Patch
@solidjs/web Patch
@solidjs/babel-plugin Patch
@solidjs/compiler Patch
@solidjs/signals Patch
@solidjs/diagnostics Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@codspeed-hq

codspeed-hq Bot commented Aug 30, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 136 untouched benchmarks
⏩ 132 skipped benchmarks1


Comparing brenelz:fix/hide-internal-type-exports (21ccb7a) with next (e2b2104)

Open in CodSpeed

Footnotes

  1. 132 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@ryansolid
ryansolid merged commit 00d1d5d into solidjs:next Aug 31, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants