PR #640 causes very annoying .NET SDK not found

Open Beginner friendly
#669 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
86/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
csharp

Research direction

Start with global.json and compare its SDK rollForward and paths settings with the workaround described in the issue; review build.ps1 and build.sh to understand the local SDK directories they install. Verify the solution loads in Rider/VS with only SDK 10.0.400 installed, and confirm CI still works with and without a pre-installed matching SDK.

Written by the indexing model from the issue text.

Description

bug needs-triage
Usage Information

Fallout as developer (not consumer) via Rider

Description

The PR #640 causes a very annoying "bug". It does resist to load the solution if 10.0.302 SDK isn't installed.

Running .\build.ps1 installs it into .fallout/temp/dontet-{win,unix}, but this does not help Rider. Of course you could change in the Rider settings the SDK search path, but you have to do this every SDK update.

Reproduction Steps
  • Having .NET SDK 10.0.400 installed and no 10.0.3xx
  • Checkout develop
Expected Behavior

Solution loads in Rider/VS

Actual Behavior

Does not load

Regression?

You could argue: yes (because rollForward: latestMinor got this)

Known Workarounds
  • Changing rollForward back to "latestMinor"
  • Update global.json to this content:
{
  "sdk": {
    "version": "10.0.302",
    "rollForward": "latestPatch",
    "paths": [
        ".fallout/temp/dotnet-win",
        ".fallout/temp/dotnet-unix",
        "$host$"
    ]
  }
}

This tells Rider/VS/IDE to look into the locally install directories first and then what's installed on the host.
Works locally, in CI/CD with pre-installed SDK and in CI/CD with no matching SDK installed (since build.{sh,ps1} installs it and will be picked up)

I propose to add this to the global json, since it doesn't hurt anyone, but restores a fallback path for local dev.

Could you help with a pull-request?

Yes

Dominant language
C#
Stars
158
Forks
19
Avg merge
5d 2h
Merged PRs (30d)
10

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Fallout-build/Fallout

All issues in Fallout-build/Fallout

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.