JetBrains / JetBrains/resharper-fsharp

Eagerly parse all files in the project after project load.

Open
#495 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
F#
Stars
351
Forks
55
Avg merge
9h 38m
Merged PRs (30d)
16

Description

Once https://github.com/dotnet/fsharp/issues/14848 is fixed and FCS has a usable parsing cache,
can we add optional eager parsing of all files upon project load?
The end goal is to reach a point where every parsing request except one for the currently edited file is hitting the cache.

- Parsing is quicker than type-checking, so much less potential for putting IDE to a crawl.
- Ideally configurable by end-user, so no drawbacks for users who don't want to use it.
- Solution should take into account cache size and either stop eager parsing if the cache is overfilling or increase it when a large codebase is loaded.
- Parsing requests should be asynchronous and not block the UI in any meaningful way.

Related:
"Too many parsing requests" issue: https://github.com/JetBrains/resharper-fsharp/issues/492

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the prerequisite FCS issue 14848 and the related “Too many parsing requests” issue. Done would mean an optional, asynchronous eager parse after project load that respects parsing-cache size and does not meaningfully block the UI.

Written by the indexing model from the issue text.

Assessment

Tech stack
fsharp
Domain
devtools, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.