-
Notifications
You must be signed in to change notification settings - Fork 77
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
Make DownloadMaxTries configurable #13
Comments
I could add that as an option. I don't feel confident setting infinite retries by default because that would induce a lot of network requests for nothing if for some reason you let the program work and Bandcamp is blocking you. |
Thanks! P.S> Something like exponential backoff could be used for infinite retires, so we don't flood Bandcamp with requests. |
The thing is, I don't know how the Bandcamp anti-spam filter works. I'll have to do some tests in order to see if waiting between retries would be enough (maybe they're blocking the download of the particular song until you try to download another one... there's a lot of possibilities here). |
If you could provide me with test case (request log or something), I probably could make simple PowerShell script that will d/l files with configurable delays. This'll make it easier to run tests with reproducible results. |
@Otiel Mind if I give this feature a go? I'd use a spinner for retries, with a combobox for exponential backoff strategy. Alternatively, I can create a little option bar/window on the top rail if needed. |
@ajsnyde If you can work something out, be my guest. |
I've created a partial workaround here: |
See comments and changes here: ajsnyde@73bc604 "Added retry cooldown settings. DownloadRetryCooldown can be set, which puts the application to sleep after each failed attempt to download (in seconds). DownloadRetryExponential Can be set to increase the cooldown with each successive failed attempt. Default values of 0.0 and 1.0 should leave the application running as it does without this commit. After a little experimentation, I found that using 0.2 seconds and 2.0 exponential factor, and 7 DownloaddMaxTries prevents all failures. I am unable to "spam out" the service and not get my album/songs. All of these settings must be set using the json settings file. master" I've added two more properties to the settings file. As a quick reminder, you will need to re-save your settings file and then edit the values for these changes to take effect. |
I've released a new version with @ajsnyde changes. |
Default
10
in the release version is too low. Out of curiosity, I've patched it with Reflexil toint32.MaxValue
and found that it needed ~80
retries to complete download in my case. Plus, could we have infinite retries?Oh, and thanks! This tool is very convenient for those who don't want to keep Bandcamp open in the browser all the time.
The text was updated successfully, but these errors were encountered: