kevincobain2000 / gobrew

Go version manager, written in Go. Super simple tool to install and manage Go versions. Install go without root. Gobrew doesn't require shell rehash.
https://medium.com/web-developer/go-version-manager-gobrew-c8750157dfe6
MIT License
364 stars 24 forks source link

self-update with 403 code #141

Closed juev closed 11 months ago

juev commented 11 months ago
~/go/sr/gi/ke/gobrew on  master
 16:17:38  ❯ while true; gobrew self-update; end;
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
[INFO] your version is already newest
==> [Error] Cannot read response: 403 Forbidden
Downloading 100% |████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (5.9/5.9 MB, 17 MB/s)
Upgrade successful
==> [Error] Cannot read response: 403 Forbidden
Downloading 100% |████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (5.9/5.9 MB, 13 MB/s)
Upgrade successful
==> [Error] Cannot read response: 403 Forbidden
Downloading 100% |████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (5.9/5.9 MB, 16 MB/s)
Upgrade successful
==> [Error] Cannot read response: 403 Forbidden
Downloading 100% |████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (5.9/5.9 MB, 16 MB/s)
Upgrade successful
^C⏎

We use a call to GitHub api to get the latest version of gobrew, at a certain point in time when accessing api we get errors with 403 code, instead of the supposed 429. After that, this code does not take into account, and we are trying to update the version, which is not correct.

You need to add 403 code processing. And check the error checking steps.

juev commented 11 months ago

@kevincobain2000 I really don't want to create a separate branch in order to keep track of the latest version.

And it is not yet clear how to get the latest version without using GitHub api. It remains only to correctly handle errors on the part of our requests.