Add real salsa dependency to twill-check #42

Closed
opened 2026-08-20 19:06:07 +00:00 by jacksonopp · 0 comments
Owner

Use the real salsa crate (salsa-rs), not a hand-rolled memoization layer, for the checker's incremental architecture.

Decided in #1's discussion: salsa's auto-discovered dependency tracking (recording what each tracked fn reads, invalidating exactly the affected downstream queries) is the actual hard part project-plan.md's Step 9 note warns about. A hand-rolled cache without that tracking just defers the same problem to Step 9 under worse conditions. rust-analyzer is built on the same crate for the same IDE-incremental-frontend shape, so it's proven for this use case.

Scope: add the salsa dependency to the workspace/crate, pick and pin a version, confirm it builds against rustc 1.97 / edition 2021.

Use the real salsa crate (salsa-rs), not a hand-rolled memoization layer, for the checker's incremental architecture. Decided in #1's discussion: salsa's auto-discovered dependency tracking (recording what each tracked fn reads, invalidating exactly the affected downstream queries) is the actual hard part project-plan.md's Step 9 note warns about. A hand-rolled cache without that tracking just defers the same problem to Step 9 under worse conditions. rust-analyzer is built on the same crate for the same IDE-incremental-frontend shape, so it's proven for this use case. Scope: add the salsa dependency to the workspace/crate, pick and pin a version, confirm it builds against rustc 1.97 / edition 2021.
jacksonopp added this to the twill project 2026-08-20 19:06:38 +00:00
jacksonopp removed this from the twill project 2026-10-04 02:28:22 +00:00
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jacksonopp/twill#42
No description provided.