dotnet / dotnet/fsharp

Transparent compiler: test that TC reuses check results after project modifications

Open
#16,823 12 comments 5 reactions 0 assignees View on GitHub
Area-Experimental-Features Feature Request Transparent-Compiler
Dominant language
F#
Stars
4.3k
Forks
876
Avg merge
4d 22h
Merged PRs (30d)
144

Description

Since a lot of things is being redone in how results are cached and invalidated, we could also try to add some other improvements.

When changing a project by adding a new file or reordering existing ones, everything in this project is invalidated. We could, however, preserve results up to the point where there's an observable change for the analysis.

Consider this project:
```
1.fs
2.fs
3.fs
4.fs
Program.fs
```

Adding a file after 4.fs could, in theory, preserve cached results for almost the whole project, and the new file would be analyzed instantly, compared to having to analyze the first 4 files first, as things stand now. Reordering files like 3.fs and 4.fs could also allow keeping cached results for the first two files.

I think this would significantly improve user experience on bigger projects.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.