Github latest release button capability - github

I've found out that in github you can use a Latest Release button or link to always clone the latest tag from that project without specifically specifying the version number, however if I use something like this: (links are just examples project is private)
https://github.com/company/project1/releases/latest (this is how I've learned the latest release link should be accessed)
it just redirects me back to:
https://github.com/company/project1/releases/
My guess is that I have to enable the Latest Release button/tag somehow? How will I do it?

It works only if your release has an artificat associated to it.
See for instance: https://github.com/reactiveui/ReactiveUI/releases/latest
If you define releases without ever attaching a binary to any of them, then 'latest' redirects you to the releases page of your project indeed.

Related

How to update the version in Zenodo?

I have released a Release v1.0.0 on github. And got its DOI in Zenodo. But now I have added some scripts and released v1.0.1. But when I check it in Zenodo, it still shows v1.0.0. How can I update this version and get DOI?
The repository is https://github.com/Yujie-Cui/WB-channels
In addition, when I click upload at the front of the page, it shows
The public here shows 0. But the draft shows 1. The draft shows what I posted. But I have obtained the earliest version of DOI.
Thanks!
The documentation on the Zenodo homepage doesn't seem to explain this explicitly but the documentation on Github does: Zenodo creates releases from the releases on Github, so to update your entry on Zenodo, you need to create a new release on Github.

Update Github "Releases" text from API

Is there a way to automatically update the "Releases" version number on a Github page? Either from automatic machinery within Github, or using some API to update it?
(See the release number "3.5.0" in the image below...) Thanks.
This sidebar component shows you the latest release (I believe). If you want to add a release, that can be done using the REST API. You can also update the release using the REST API.
Note that it isn't sufficient to just push a tag here. A release on GitHub is associated with a tag, but it can also have a message and assets (usually binaries or source code) associated with it. You do need such a tag, but you also need to create the actual release on GitHub.
If you want an example of how this can be done with shell scripting, Git LFS has a script that performs this task as part of the release process.

Change naming convention of github release tags

I've joined a project which uses Github actions & releases. Unfortunately, naming convention of release tags changed in the past (probably due to migration from Travis CI).
Until a certain point of time, the tags were like this (not sure why the numbers were so high):
v1018.0.0
v1018.1.0
v1020.0.0
v1024.0.0
Then someone switched to semantic versioning (which is great btw):
v2.5.1
v3.0.0
v3.1.0
v3.1.1
Our CI/CD works just fine, but we have some issues:
We use Release Drafter. It creates a description for a new release which should consist of all PRs since the previous release. But now it compares current state of our master branch not with the latest tag (v3.1.1), but with a tag with the highest major number (v1024.0.0). Which means the draft always consists of 100+ PRs merged since one year ago. So we end up deleting the whole release description, because noone has time to analyse that.
It's messy. Github always suggests v1024 as the newest version: when creating new releases, when switching between tags and so on.
My two questions are:
Is there any safe way to update names of all old tags? F.e. change v1024.0.0 into v0.1024.0. Doesn't have to be automatic. Keep in mind it should update the tagnames only, I don't want to change release date, assets etc. I think that editing a release using Github UI would in fact create a new tag based on master (and maybe even release it to live server?)
If not, is there any way to tell Release Drafter that it should use the latest tag instead of the highest one?
Well a little googling would tell you many things :)
How do you rename a Git tag?
https://gist.github.com/rponte/fdc0724dd984088606b0
Yes you can update tags (see first link)
Yes you can get the latest tag - see second link.

Where to deploy my application?

So I got my first github page that contains download buttons. I want to create buttons that link to the current version of my app.
How should I approach this? You should keep the application and the source apart from each other, but I don't have an idea where I should put my file on github to make it accessible (including a version history).
Would you link to a Sourceforge-Project or something similar? Or is there a common way for that on github?
You can tag the current version (which you want to be downloaded) and make a release on github. You can give link to the release for download.

What gets put into Github's release notification email?

What is it that Github includes, from the source code or release process, in the email notification for a new release?
This is all I'm seeing:
—
View it on GitHub.
Trying to figure out how to get release notes/changes into the email, automatically.
There are a handful of tools that can be used to generate a CHANGELOG.md - but I was looking for the built-in-to-Github solution. All I could really find was this:
https://github.com/blog/1547-release-your-software
It appears to just use commits since previous tag/release and issues related. It doesn't look like you can provide your own.
I'm also running into an issue associated with creating a tag from a branch, rather than the 'default' - master.