fsprojects / fsprojects/FSharpLint
bug: Project-mode lint hangs when project.assets.json exists in obj/ directories
Nobody has claimed this yet.
- Dominant language
- F#
- Stars
- 327
- Forks
- 74
- PR merge metrics
- No merged PRs in 30d
Description
dotnet fsharplint lint Tests.fsproj hangs indefinitely on one project in my repo. The problem surfaced after extracting code from one project into a sibling project. I haven't put in the effort to reproduce it outside my project, but the behavior is 100% reproducible in my closed-source codebase.
- Hangs with
project.assets.jsonpresent inobj/dirs - Completes in ~23s after removing
project.assets.jsonfrom both the test project and its library dependency (removing from only one is not sufficient) - Wildcard mode (
Tests/**/*.fs) works fine regardless dotnet build-server shutdown,DOTNET_CLI_DO_NOT_USE_MSBUILD_SERVER=1,MSBUILDDISABLENODEREUSE=1don't help
Environment: FSharpLint 0.26.10, .NET 10.0, macOS ARM64
Workaround: Temporarily move project.assets.json out of obj/ dirs before linting, restore after.
Happy to share more project structure details if helpful.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing dotnet fsharplint lint Tests.fsproj with project.assets.json in both the test project's and dependency's obj/ directories, then compare it with wildcard mode and with those files removed. The issue names no repository files or tests; done means project-mode lint completes without hanging while wildcard behavior remains unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fsharp
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100