Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add dotnet workload --version command, display workload version other "info" commands #33912

Closed
dsplaisted opened this issue Jul 11, 2023 · 0 comments · Fixed by #33996
Closed
Assignees
Labels
Area-Workloads untriaged Request triage from a team member
Milestone

Comments

@dsplaisted
Copy link
Member

We should add a dotnet workload --version command, which will output the workload version (AKA workload set version). This command will only output the version and nothing else, similar to dotnet --version.

Additionally, the dotnet --info and dotnet workload --info commands should be updated to display the workload version. From the design, this would look like this:

> dotnet --info
.NET SDK:
 Version:                 8.0.201
 Commit:                  <commit>
 Workload version:    8.0.201

<further information>

> dotnet workload --info
 Workload version:  8.0.201
 [wasm-tools]
   Installation Source: SDK 8.0.100-preview.4
   Manifest Version:    8.0.0-preview.4.23181.9/8.0.100-preview.4
   Manifest Path:       C:\git\dotnet-sdk-main\.dotnet\sdk-manifests\8.0.100-preview.4\microsoft.net.workload.mono.toolchain.current\WorkloadManifest.json
   Install Type:        FileBased

Implementation

Currently, the SdkDirectoryWorkloadManifestProvider class is responsible for selecting the workload version to use. Probably it (and possibly IWorkloadManifestProvider) should add a method that returns the workload version.

When no workload set is installed, a workload version should still be displayed. Per the design:

In this case, when a workload set version is needed, the .NET SDK will create a version using the .NET SDK feature band, the pre-release specifier manifests, and a hash of the manifest IDs and versions. For example, 8.0.200-manifests.9e7f4b93.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Workloads untriaged Request triage from a team member
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants