AI prompts
base on dotnet-sdk versions HomeBrew Tap # dotnet-sdk versions tap
[](https://github.com/isen-ng/homebrew-dotnet-sdk-versions/actions/workflows/ci.yml)
[](https://github.com/isen-ng/homebrew-dotnet-sdk-versions/actions/workflows/auto-updater.yml)
[](https://github.com/isen-ng/homebrew-dotnet-sdk-versions/actions/workflows/auto-commit.yml)
This tap contains different versions that you can install in parallel to the latest version provided by the
[official cask](https://github.com/Homebrew/homebrew-cask/blob/master/Casks/d/dotnet-sdk.rb).
Install one of the previous versions by tapping this repository and running the install command.
## Installing one of the versions here
```
brew tap isen-ng/dotnet-sdk-versions
brew install --cask <version>
dotnet --list-sdks
```
### Meta versions
| Version | .NET SDK |
| ------------- | -------- |
| `dotnet-sdk9` | 9.0.203 |
| `dotnet-sdk8` | 8.0.408 |
| `dotnet-sdk7` | 7.0.410 |
| `dotnet-sdk6` | 6.0.428 |
| `dotnet-sdk5` | 5.0.408 |
| `dotnet-sdk3` | 3.1.426 |
| `dotnet-sdk2` | 2.2.402 |
**Note**: These meta-packages installs the latest MINOR and PATCH versions from the existing versions list below.
**Note 2**: See each corresponding version below for `arch` and `remarks`.
### Versions
| Version | .NET SDK | Arch | Remarks |
| ------------------- | -------- | ----------- | ---------------------------------------- |
| `dotnet-sdk9-0-200` | 9.0.203 | x64 & arm64 | |
| `dotnet-sdk9-0-100` | 9.0.102 | x64 & arm64 | |
| `dotnet-sdk8-0-400` | 8.0.408 | x64 & arm64 | |
| `dotnet-sdk8-0-300` | 8.0.303 | x64 & arm64 | |
| `dotnet-sdk8-0-200` | 8.0.204 | x64 & arm64 | |
| `dotnet-sdk8-0-100` | 8.0.101 | x64 & arm64 | |
| `dotnet-sdk7-0-400` | 7.0.410 | x64 & arm64 | |
| `dotnet-sdk7-0-300` | 7.0.306 | x64 & arm64 | |
| `dotnet-sdk7-0-200` | 7.0.203 | x64 & arm64 | |
| `dotnet-sdk7-0-100` | 7.0.102 | x64 & arm64 | |
| `dotnet-sdk6-0-400` | 6.0.428 | x64 & arm64 | |
| `dotnet-sdk6-0-300` | 6.0.303 | x64 & arm64 | |
| `dotnet-sdk6-0-200` | 6.0.202 | x64 & arm64 | |
| `dotnet-sdk6-0-100` | 6.0.108 | x64 & arm64 | |
| `dotnet-sdk5-0-400` | 5.0.408 | x64 | When installed on arm64, use `dotnetx64` |
| `dotnet-sdk5-0-200` | 5.0.209 | x64 | When installed on arm64, use `dotnetx64` |
| `dotnet-sdk3-1-400` | 3.1.426 | x64 | When installed on arm64, use `dotnetx64` |
| `dotnet-sdk3-1-300` | 3.1.302 | x64 | |
| `dotnet-sdk3-1-200` | 3.1.202 | x64 | |
| `dotnet-sdk3-1-100` | 3.1.120 | x64 | |
| `dotnet-sdk3-0-100` | 3.0.103 | x64 | |
| `dotnet-sdk2-2-400` | 2.2.402 | x64 | |
| `dotnet-sdk2-2-300` | 2.2.301 | x64 | |
| `dotnet-sdk2-2-200` | 2.2.207 | x64 | |
| `dotnet-sdk2-2-100` | 2.2.110 | x64 | |
| `dotnet-sdk2-1-800` | 2.1.818 | x64 | |
| `dotnet-sdk2-1-500` | 2.1.526 | x64 | |
| `dotnet-sdk2-1-400` | 2.1.403 | x64 | |
**Note**: Installing .NET SDK 5 using this tap or the official package from Microsoft will uninstall all other
.NET SDKs on your machine. To overcome this you'll need to re-install the SDK versions you want from this tap
after installing/upgrading to .NET SDK 5.
### Preview versions
| Version | .NET SDK | Arch | Remarks |
| ---------------------- | --------------------------- | ----------- | ------- |
| `dotnet-sdk10-preview` | 10.0.100-preview.3.25201.16 | x64 & arm64 | |
| `dotnet-sdk9-preview` | 9.0.102-rc.2.24474.11 | x64 & arm64 | |
| `dotnet-sdk8-preview` | 8.0.101-rc.2.23502.2 | x64 & arm64 | |
| `dotnet-sdk7-preview` | 7.0.100-rc.2.22477.23 | x64 & arm64 | |
## Uninstalling
Because the .NET SDK packages uses shared dependencies between different versions, it is unwise to delete these
dependencies when uninstalling a particular version as it will cause other versions not to work.
If there is a need to purge these dependencies, use the `zap` flag:
```
brew uninstall --zap --cask <version>
```
*Important*: Uninstalling the offical version will also remove these dependencies, so you'll need to reinstall the
particular version you want to use again.
## Known issues
#### Uninstalling dotnet-sdk without using homebrew
If your `dotnet-sdk` was installed using homebrew but uninstalled manually outside of homebrew, homebrew will still think that
your `dotnet-sdk` is still installed. This is unavoidable. Homebrew might stil think there is "nothing to do" even if the cask is
reinstalled, eg `brew reinstall dotnet-sdk-8-400`.
In this case, `zap` your installation, `brew uninstall --zap dotnet-sdk-8-400` before installing it again.
#### Upgrading your official `dotnet-sdk` causes some issues
When upgrading the official `dotnet-sdk` cask, especially on major version updates, may cause incompatible issues with casks in
this tap. This is because the official cask assumes that it is the only dotnet installation and when upgrading, uninstalls
shared dependencies required by other versions of `dotnet-sdk` installed by this tap.
To recover from this, reinstall all affected `dotnet-sdk` versions, eg `brew reinstall dotnet-sdk-8-400`. If this doesn't work,
all casks may need to be zapped before reinstalling, eg `brew uninstall --zap dotnet-sdk-8-400`.
## Using a particular version
The `dotnet` command will automatically use the latest appropriate version unless specified by a
[global.json](https://docs.microsoft.com/en-us/dotnet/core/tools/global-json).
", Assign "at most 3 tags" to the expected json: {"id":"5115","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"