gitbutler
gitbutler copied to clipboard
Create releases on GitHub
Currently our release process uploads binaries to S3. We can continue doing so but it would be neat if we could also have the script create releases here on GitHub, for easy of downloading and also to have the changelog displayed there as well (in addition to discord #releases channel )
I was doing this manually for a while, but it seemed unclear what the advantage was exactly. What do we hope to gain from this?
Well there is no advantage to doing it manually, that way leads to madness.
My use case is that the release notes for a release are consolidated in the UI for that release.. but if i skip a release then i have no easy way of looking for the changes.
x.x.1 -> x.x.2 is fine to look in the UI and say ok upgrade, but if you dont upgrade for any reason then your upgrade path could be x.x.1 -> x.x.6 in which case the UI will only show the notes of x.x.6 not the diff x.x.1 -> x.x.6 and there is no way currently to see that in the repo without clicking on every release and nightly tag.
By doing github releases (or even just gathering the commits from last release to current tag for a non nightly builds) it makes it easy for someone to see all the relevant changes. Prefixing branches / commits with [feat] or [breaking] or [bug] could also be used to help auto generate.
My use case is that the release notes for a release are consolidated in the UI for that release.. but if i skip a release then i have no easy way of looking for the changes.
This will be addressed by showing release-notes for inbetween-versions as well. Here is the issue for that: #3015 .
I was doing this manually for a while, but it seemed unclear what the advantage was exactly. What do we hope to gain from this?
I hit an issue yesterday and went looking for an old version as a quick alternative to troubleshooting. As a user, I'd definitely appreciate an easy way to revert to a prior version of the app if I hit a breaking change. If you list the headline changes in each release this is also a super easy way for users who have been out of the loop for a while to understand where the likely breaking change might be.
Props to the team for having already fixed the issue on master before I dug into it though 🙌
Kind of the opposite of what is asked, but I thought I'd mention that nightlies are a way to try the latest, at most a day old, master, without having to compile it yourself.
I would like to try and include GitButler on an OSS project I am involved with, but this requires a way to programmatically download the latest release assets (RPM).
For other projects, we are simply fetching the download URL from the latest GitHub release that matches the architecture and OS type.
With GitButler, it's very difficult to do this since there is no API to fetch the latest version, and if there was, your website download URLs are not guessable. You appear to append a build number that you do not publish anywhere else, so directly downloading the assets is not trivial.
With GitHub releases, we would be able to do something as simple as we do for dive:
$ rpm-ostree install $(curl https://api.github.com/repos/wagoodman/dive/releases/latest | jq -r '.assets[] | select(.name| test(".*_linux_amd64.rpm$")).browser_download_url')
It would be great if GitButler release assets were either made available at a stable or "guessable" URL, or if these assets were attached to some GitHub Releases to make it easier to automate the download and installation of these assets.
@p5 you can use this api: https://app.gitbutler.com/releases
It's good to note that the download URL is immutable, but it seems that the version may not be. See https://github.com/flathub/com.gitbutler.gitbutler/pull/43 and https://github.com/flathub/com.gitbutler.gitbutler/pull/42
The latest releases can be fetched from
- Nightly: https://app.gitbutler.com/releases/nightly
- Stable: https://app.gitbutler.com/releases
These will both dump JSON blobs with info about the latest verisons, including a download link.
We have been posting releases to GitHub releases lately as well though, so i will close this issue :pray: