Skip to content

Conversation

@milomg
Copy link
Member

@milomg milomg commented Jan 18, 2026

Summary

Use fused linked lists to make v1 signals faster.

Before:

createDataSignals: 4
createComputations0to1: 4
createComputations1to1: 8
createComputations2to1: 6
createComputations4to1: 5
createComputations1000to1: 4
createComputations1to2: 7
createComputations1to4: 6
createComputations1to8: 6
createComputations1to1000: 6
create total: 56
---
updateComputations1to1: 32
updateComputations2to1: 19
updateComputations4to1: 13
updateComputations1000to1: 23
updateComputations1to2: 27
updateComputations1to4: 26
updateComputations1to1000: 21
update total: 161
total: 217

After

createDataSignals: 2
createComputations0to1: 4
createComputations1to1: 6
createComputations2to1: 5
createComputations4to1: 4
createComputations1000to1: 4
createComputations1to2: 6
createComputations1to4: 6
createComputations1to8: 5
createComputations1to1000: 5
create total: 48
---
updateComputations1to1: 26
updateComputations2to1: 14
updateComputations4to1: 9
updateComputations1000to1: 11
updateComputations1to2: 20
updateComputations1to4: 18
updateComputations1to1000: 16
update total: 115
total: 163

How did you test this change?

pnpm run test (I'm not sure if our test coverage of Suspense will catch everything here though)

@changeset-bot
Copy link

changeset-bot bot commented Jan 18, 2026

⚠️ No Changeset found

Latest commit: fcb5226

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

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

@coveralls
Copy link

Pull Request Test Coverage Report for Build 21104319443

Details

  • 108 of 111 (97.3%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+1.0%) to 86.228%

Changes Missing Coverage Covered Lines Changed/Added Lines %
packages/solid/src/reactive/signal.ts 108 111 97.3%
Totals Coverage Status
Change from base Build 18890830103: 1.0%
Covered Lines: 2415
Relevant Lines: 2729

💛 - Coveralls

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