API Requests over Tor
Update checks get rate limited over Tor sometimes.
I think the first thing we should do is detect this "API rate limit exceeded" github response and handle it a little more gracefully. Like, we could choose to just skip that day of checking for updates, or we could try to check for updates using a different Tor circuit a few times before finally giving up?
I'm implementing update checks in OnionShare to work in a similar way that they work in GPG Sync. Only instead of loading a URL from github, it loads http://elx57ue5uyfplgva.onion/latest-version.txt (which is just the onion service URL for https://onionshare.org/latest-version.txt, since all of OnionShare's traffic goes over Tor).
Because I'm not using github, but rather querying the website, OnionShare doesn't have any rate limiting problems. Maybe instead GPG Sync should query something like https://code.firstlook.media/gpgsync/latest-version.txt. This means part of the GPG Sync release process will include deploying an update to the First Look Code website. What do you think @agillette @jefforulez ?
Wrong issue/context for previous comments.