jonathanpeppers / boots

boots is a .NET global tool for "bootstrapping" vsix & pkg files. Just "boots https://url/to/your/package"!
MIT License
86 stars 9 forks source link

IOException needs to retry #74

Closed jonathanpeppers closed 3 years ago

jonathanpeppers commented 3 years ago

IOException probably needs a retry mechanism:

Inferring .vsix from URL.
Downloading https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/4451481/master/05bb8e0eae11ae6a73838b13cf91ee2433169dff/signed/Xamarin.Android.Sdk-11.2.99.85.vsix
Writing to C:\Users\VssAdministrator\AppData\Local\Temp\we0tis3m.ekl.vsix
Deleting C:\Users\VssAdministrator\AppData\Local\Temp\we0tis3m.ekl.vsix
Unhandled exception. System.IO.IOException: The response ended prematurely.
   at System.Net.Http.HttpConnection.FillAsync()
   at System.Net.Http.HttpConnection.CopyToContentLengthAsync(Stream destination, UInt64 length, Int32 bufferSize, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnection.ContentLengthReadStream.CompleteCopyToAsync(Task copyTask, CancellationToken cancellationToken)
   at Boots.Core.Downloader.Download(CancellationToken token) in /Users/runner/work/1/s/Boots.Core/Downloader.cs:line 35
   at Boots.Core.Bootstrapper.Install(CancellationToken token) in /Users/runner/work/1/s/Boots.Core/Bootstrapper.cs:line 63
   at Boots.Program.Run(String url, String stable, String preview, Nullable`1 fileType) in /Users/runner/work/1/s/Boots/Program.cs:line 86
   at Boots.Program.Main(String[] args) in /Users/runner/work/1/s/Boots/Program.cs:line 16
   at Boots.Program.<Main>(String[] args)