Closed NobodyXu closed 1 year ago
On Fri, 7 Apr 2023, 04:06 Jiahao XU, @.***> wrote:
It has been quite a long time since we roll out the new release schema.
I think we should now:
- stop uploading in old release schema
- remove all releases using old schema to free up spaces
@alsuren https://github.com/alsuren What's your thought on this?
I don't think we need to worry about the space taken up by the duplicate releases. All of our releases put together are still probably smaller than a single release of a modern computer game. The --dry-run flag was put in so that you can copy-paste the curl | tar command into your ci pipeline if you want. We don't have any stats about that, but it's existence suggests that we should never delete released assets.
It might be time to stop the duplicate uploading though. Let's look at the stats and make a decision.
BTW, what is the command for retrieving the user agent hitting the stats
API?
The endpoint is /api/agents I think, and you can add day month and year parameters to the query (need to make queries day by day back in time and then sum them up yourself). I don't think I ever added a command in the quickinstall repo for this.
You might be better off adding a panel to this notebook with the appropriate group by and time window https://eu-central-1-1.aws.cloud2.influxdata.com/orgs/69235d4f38c3e042/notebooks/61ac6f8ba31b7000
I'm heading up to my parents for 4 days without a laptop (no access to bash and influx cloud UI sucks on mobile), so I'm only going to be useful for vague guidance.
When determining what proportion of people are using old be new clients, you will notice that there are a few insanely popular crates in the list. I think that these are from someone's ci pipeline. Probably best to exclude these from the numbers if you can. (Influxdb can probably do this, but the stats server endpoint definitely can't)
I don't think we need to worry about the space taken up by the duplicate releases. All of our releases put together are still probably smaller than a single release of a modern computer game. The --dry-run flag was put in so that you can copy-paste the curl | tar command into your ci pipeline if you want. We don't have any stats about that, but it's existence suggests that we should never delete released assets.
Yeah, I might be overthinking the impact of these releases and it's better to keep backwards compatibility.
It might be time to stop the duplicate uploading though. Let's look at the stats and make a decision.
$ curl \
--user-agent "cargo-quickinstall build pipeline (alsuren@gmail.com)" \
--silent \
--show-error \
-XGET \
"https://warehouse-clerk-tmp.vercel.app/api/agents" | jq
{
"cargo-binstall/0.20.1": 64,
"cargo-binstall/0.21.2": 4,
"cargo-binstall/0.21.3": 2,
"cargo-binstall/0.22.0": 279,
"binstalk/0.4.1": 177,
"cargo-binstall/0.17.0": 4,
"cargo-binstall/0.18.1": 376,
"cargo-binstall/0.19.3": 23,
"cargo-quickinstall/0.2.9 client (alsuren@gmail.com)": 8
}
It seems that people already switches to latest cargo-quickinstall
.
Though for cargo-binstall
, many are still using old versions.
It was not until v0.21.0 (which is yanked) that binstall support the new release schema.
binstalk/0.4.1
probably refers to an even older release where we have just split out binstalk_downloader
as a separate workspace and hasn't even fixed the user agent.
But since binstall only does a best effort, perhaps we can go ahead and remove the duplicate uploading. Let's wait for a few days and remove that part.
Update in 19 Apr 2023:
❯ curl \
--user-agent "cargo-quickinstall build pipeline (alsuren@gmail.com)" \
--silent \
--show-error \
-XGET \
"https://warehouse-clerk-tmp.vercel.app/api/agents" | jq
{
"cargo-quickinstall/0.2.9 client (alsuren@gmail.com)": 59,
"binstalk/0.2.0": 2,
"cargo-binstall/0.18.1": 66,
"cargo-binstall/0.19.3": 12,
"cargo-binstall/0.20.1": 20,
"cargo-binstall/0.21.3": 2,
"cargo-binstall/0.22.0": 876
}
Now I can see a trend that people is moving towards latest cargo-binstall and it seems that all quickinstall users are using the latest release, so I think it's time to stop uploading in old release schema.
It has been quite a long time since we roll out the new release schema.
I think we should now:
- [ ] stop uploading in old release schema@alsuren What's your thought on this? BTW, what is the command for retrieving the user agent hitting the stats API?