Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Update the SDK muxer behavior #4118

Merged
merged 4 commits into from
May 4, 2018
Merged

Conversation

johnbeisner
Copy link

Update the SDK muxer behavior; modify the SDK muxer tests.

Prior SDK muxer behavior:

  • If no global.json file is found, or the global.json doesn't contain a specified SDK version, the latest installed SDK version is used. Latest SDK version can be either release or pre-release - the highest version number wins.
  • If global.json does contain a specified SDK version:
    • If the specified SDK version is found on the machine, that exact version is used.
    • If the specified SDK version cannot be found on the machine, the latest installed SDK patch-version of the specified SDK version is used. Latest installed SDK patch-version can be either release or pre-release - the highest version number wins.
    • If the specified SDK version and an appropriate SDK patch-version cannot be found, an error is thrown.

Newer SDK muxer behavior:

  • If no global.json file is found, or the global.json doesn't contain a specified SDK version, the latest installed SDK version is used. Latest SDK version can be either release or pre-release - the highest version number wins.
  • If global.json does contain a specified SDK version:
    • If the specified SDK version is found on the machine, that exact version is used.
    • If the specified SDK version cannot be found on the machine, the latest installed SDK patch-version of the specified SDK version which is semantically greater than the specified SDK version is used. Selected SDK patch-version can be either release or pre-release.
    • If the specified SDK version and an appropriate SDK patch-version cannot be found, an error is thrown.

@davidebbo
@dotnet/dotnet-cli

Related: https://github.com/dotnet/core-setup/issues/3805

(ver.get_major() == specified.get_major() && ver.get_minor() == specified.get_minor() &&
(ver.get_patch() / 100) == (specified.get_patch() / 100)))
(ver.get_patch() / 100) == (specified.get_patch() / 100) && (ver == std::max(ver, specified))))

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

// Pick the greatest version that differs only in the 'minor-patch' if a global cli version is specified.
// If a global cli version is specified:
// pick the greatest version that differs only in the 'minor-patch'
// and is semantically greater than or equal to the global cli version specified.

This comment was marked as spam.

@nguerrera
Copy link

Is master the right branch for this? I would hope that we can get it fixed in 2.1.

@johnbeisner
Copy link
Author

@jaredpar
@KathleenDollard
@steveharter
@mairaw
@davidebbo
@dotnet/dotnet-cli
Can I get an approval on this PR; or further discussion would be welcomed.

@jaredpar
Copy link
Member

jaredpar commented May 4, 2018

LGTM

I'm hesistant to actually submit an approve review. The code looks good to me but I'm not very familiar with the contents of this repository. But to my eye it looks good.

@nguerrera
Copy link

I've approved, but it would be good for @steveharter or @eerhardt to look as well.

@eerhardt
Copy link
Member

eerhardt commented May 4, 2018

Is master the right branch for this? I would hope that we can get it fixed in 2.1.

The process in the dotnet/core* repos is to first get the PR into master, and then once approved in shiproom, port/cherry-pick the change into the appropriate release branch.

@nguerrera
Copy link

nguerrera commented May 4, 2018

The process in the dotnet/core* repo

@eerhardt Ah yes. I always forget that.

@johnbeisner johnbeisner merged commit 3294cd2 into dotnet:master May 4, 2018
@johnbeisner johnbeisner deleted the UpdateSDKMuxer branch December 11, 2018 17:11
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants