winget-cli icon indicating copy to clipboard operation
winget-cli copied to clipboard

WINGET doesn't resume very big download file from github.

Open pulsar14 opened this issue 1 year ago • 2 comments

Brief description of your issue

Windows Package Manager v1.8.1911

winget upgrade Ollama.Ollama -i --source winget Downloading https://github.com/ollama/ollama/releases/download/v0.3.12/OllamaSetup.exe ██████████████████████▎ 493 MB / 663 MB forever!!!!!!

Tried many times and stucks after 300Mb, 610Mb and then at 230Mb and randomly after hundreds of wasted Mb. Winget seems freezed and no-way, no option to resume the stopped download. Waste of time above all and money, for a no flat data traffic.

Steps to reproduce

winget upgrade Ollama.Ollama -i --source winget

Expected behavior

what do You think?

Actual behavior

Unstable!

Environment

Windows Package Manager v1.8.1911
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22621.4249
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.23.1911.0

Winget Directories
-----------------------------------------------------------------------------------------------------------------------
Logs                               %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Diag…
User Settings                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\sett…
Portable Links Directory (User)    %LOCALAPPDATA%\Microsoft\WinGet\Links
Portable Links Directory (Machine) C:\Program Files\WinGet\Links
Portable Package Root (User)       %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portable Package Root              C:\Program Files\WinGet\Packages
Portable Package Root (x86)        C:\Program Files (x86)\WinGet\Packages
Installer Downloads                %USERPROFILE%\Downloads

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale

Admin Setting                             State
--------------------------------------------------
LocalManifestFiles                        Disabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Enabled
LocalArchiveMalwareScanOverride           Disabled
ProxyCommandLineOptions                   Disabled
DefaultProxy                              Disabled

pulsar14 avatar Oct 01 '24 19:10 pulsar14

The download is coming from GitHub where the package is published. WinGet doesn't control the download speed. You could try switching from "DO" the default downloader to "wininet" to see if you get better results, or you could try using a proxy.

denelon avatar Oct 02 '24 15:10 denelon

hi @pulsar14,

I had no issues downloading the exact package on several devices and several internet connections. What you request is a resume feature in winget for stucked or interrupted downloads, right?

thmeyer-msft avatar Oct 17 '24 11:10 thmeyer-msft

hi @pulsar14,

I had no issues downloading the exact package on several devices and several internet connections. What you request is a resume feature in winget for stucked or interrupted downloads, right?

Thanks thmeyer-msft for your test.

Yes, My problem is with the casual download interruption when file is very big like Ollama upgrades. And although my Internet is available for other stuff there's no possibility to resume the current operation by winget that freeze indefinitely. My internet connection is not so fast, I use a 4G WiFi hotspot at 5MB/sec max. Furthermore, Win terminal has big limitations and almost no features in resuming and manage long tasks like download big files. Why don't create a tiny Winget UI App that can save us lot of time without need to insert commands every time and manage resume task as well?

So, to overcome this "Issue" I use a safer third-party Downloader that guarantees me a one-time download without waste my limited internet data traffic that costs.

pulsar14 avatar Oct 21 '24 17:10 pulsar14

Hi

@pulsar14 - I can understand your issues. Maybe as workaround, the Invoke-WebRequest -Resume is also able to continue an interrupted download.

@denelon - Is this a possible feature for winget version 2?

thmeyer-msft avatar Oct 23 '24 07:10 thmeyer-msft

I remember a few issues related to "cache management" and "faster" downloads. I'm not sure if there is already a feature request for an ability to resume a download. Feel free to create a new feature request for that.

denelon avatar Oct 24 '24 16:10 denelon

@pulsar14 confirmed...

I almost got the same problem with the WinGet command on several packages. I'm hosting my own Winget Server where packages are deployed to download and install. I wrote therefore a custom Install script where more packages are installed in a loop (winget install package1, winget install package2...).

The behaviour i got is, that Winget start to stock(freeze) at some point and nothing happen anymore. It is at different points visible, sometimes during downloading, sometimes during unpacking and sometime during installer hash approvement. In most of those cases, it helped to me to click inside the Powershell window and hit the "enter" key on the keyboard and the installation continous...

I am absolutly not sure why such behaviour happens?!?

JoJos1220 avatar Jan 31 '25 10:01 JoJos1220

No idea if there is a feature PR for this, but being able to resume downloads is useful if the server drops the connection for any reason. Especially on larger downloads. I sometimes use a sluggish internet connection, and downloads sometimes hang. Having to redownload the whole thing is painful 😁

akhial avatar Feb 03 '25 10:02 akhial