-
Notifications
You must be signed in to change notification settings - Fork 63
Description
📓 Summary
Create a model for the releases.json objects and write a class which downloads the data model from the releases.json.
The releases.json has a main page and sub pages for each major minor. Prefer the builds.dotnet.microsoft.com CDN as that is faster.
https://builds.dotnet.microsoft.com/dotnet/release-metadata/releases-index.json
https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/2.1/releases.json
Additional Context
The DNVM repo has code that already does that.
For web requests, consider the following which may causes issues: proxy (especially proxies which require a custom password), caching, handling timeouts, handling web return codes well, including errors (404, 401, 200 OK, etc). The HttpClient or other C# Libraries built in likely handle this well, but these were common problems with Axios.
You may want to consider that hosting bundle objects likely don't have a RID in the releases json structure.
Be careful as well as there are some outliers, such as the 2.2.101 SDK Release which did not have a runtime component. Some .NET 2.0 components do not have a version-display
property.