I've been wanting an updated version of rocup for a while, so I finally created one.
https://github.com/imclerran/rocup
Full credit to @Krzysztof Kielak's original rocup as inspiration - this is a totally revamped rocup with the zig based compiler first-class.
roc --version, or the 7 digit hash from the nightlies tag.list, remove, and prune.usage: rocup [alpha4 | latest | <hash> | <path> | +N | -N | list | remove <ver> | prune <N>]
Install it with:
curl -fsSL https://raw.githubusercontent.com/imclerran/rocup/main/install.sh | sh
Ian McLerran schrieb:
imclerran/rocup
Cool, but watch out, you have a dangerous typo in the GitHub address!
Thanks! Fixed the url!
Double checked the markdown link for typos as well :sweat_smile:
Just added Windows support as well.
Windows usage is the same, with the exception of alpha4-rolling, which does not have a Windows binary, and so that command is dropped from the Windows version.
Installed with:
iwr -useb https://raw.githubusercontent.com/imclerran/rocup/main/install.ps1 | iex
It seems rocup is not seeing the july releases
❯ rocup list
nightly (06/20/2026) <2016d00>
nightly (06/21/2026) <d195750>
nightly (06/23/2026) <a59573d>
nightly (06/24/2026) <e8f577d>
nightly (06/25/2026) <e96f798>
nightly (06/26/2026) <08aae15>
nightly (06/27/2026) <127861d>
nightly (06/28/2026) <26ecddf>
nightly (06/29/2026) <2e1efb1>
-> nightly (06/30/2026) <09084da>
https://github.com/roc-lang/nightlies/releases#release-nightly-2026-July-06-17d1197
@Ian McLerran
rocup follows the created_at ordering returned by https://api.github.com/repos/roc-lang/nightlies/releases.
The issue is that the releases' created_at dates are not as reliable as their published_at.
❯ ruby -rjson -ropen-uri -e 'JSON.parse(URI.open("https://api.github.com/repos/roc-lang/nightlies/releases?per_page=15&page=1").read).each { |r| puts [r["tag_name"], "created_at=#{r["created_at"]}", "published_at=#{r["published_at"]}"].join(" ") }'
nightly-2026-June-30-09084da created_at=2026-06-27T17:19:38Z published_at=2026-06-30T16:02:45Z
nightly-2026-June-29-2e1efb1 created_at=2026-06-27T17:19:38Z published_at=2026-06-29T13:50:13Z
nightly-2026-June-28-26ecddf created_at=2026-06-27T17:19:38Z published_at=2026-06-28T11:54:36Z
nightly-2026-July-07-050c697 created_at=2026-06-27T17:19:38Z published_at=2026-07-07T12:37:36Z
nightly-2026-July-06-17d1197 created_at=2026-06-27T17:19:38Z published_at=2026-07-06T13:41:27Z
nightly-2026-July-05-c0cae66 created_at=2026-06-27T17:19:38Z published_at=2026-07-05T11:48:44Z
nightly-2026-July-04-f6e63b3 created_at=2026-06-27T17:19:38Z published_at=2026-07-04T18:04:53Z
nightly-2026-July-03-c562054 created_at=2026-06-27T17:19:38Z published_at=2026-07-03T16:24:41Z
nightly-2026-July-02-d197cbe created_at=2026-06-27T17:19:38Z published_at=2026-07-02T16:14:15Z
nightly-2026-July-01-7981032 created_at=2026-06-27T17:19:38Z published_at=2026-07-01T12:16:25Z
nightly-2026-June-27-127861d created_at=2026-06-23T12:52:09Z published_at=2026-06-27T11:13:29Z
nightly-2026-June-26-08aae15 created_at=2026-06-23T12:52:09Z published_at=2026-06-26T13:41:30Z
nightly-2026-June-25-e96f798 created_at=2026-06-23T12:52:09Z published_at=2026-06-25T13:09:42Z
nightly-2026-June-24-e8f577d created_at=2026-06-23T12:52:09Z published_at=2026-06-24T12:07:49Z
nightly-2026-June-23-a59573d created_at=2026-06-23T12:52:09Z published_at=2026-06-23T15:22:01Z
So either:
1) roc fixes the created_at to match the published_at and tag_name
2) rocup fetches a page large enough (60 for 2 months?) to do a published_at reordering
Note that there is no ?sort=published_at query available in the release REST API https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28
Thanks for looking into this @Romain Lepert :)
The created_at is based on commits in the nightlies repo, not the main roc repo. I would prefer to avoid creating meaningless commits or tags on the nightlies repo to "fix" the created_at dates.
Last updated: Jul 23 2026 at 13:15 UTC