Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use the GitHub releases feature #907

Closed
victorlin opened this issue Apr 26, 2022 · 7 comments · Fixed by #957
Closed

Use the GitHub releases feature #907

victorlin opened this issue Apr 26, 2022 · 7 comments · Fixed by #957
Assignees
Labels
enhancement New feature or request

Comments

@victorlin
Copy link
Member

victorlin commented Apr 26, 2022

We use GitHub releases for Auspice and should do so for Augur. It was used in the past but stopped with version 6.3.0, I suspect because of tedious manual work. Once #904 is merged, GitHub releases can be created automatically with a bit of extra scripting using gh release create.

There's 2 ways to approach this. I favor the 2nd, but would like to hear other opinions.

1. Start with the next version

We can ignore the previously missed tags and just start creating releases with the next version (e.g. 15.0.2).

  • Pro: Easy.
  • Con: The release page will be inaccurate. Augur did not jump from 6.3.0 to 15.0.2.

2. Retroactively create releases for all previous tags

This would be for 6.4.0 to the latest tag whenever we decide to do this. (with 15.0.1 it is 39 releases)

  • Pro: This will make the release page mostly accurate, besides the release date being the same for all the releases we create retroactively.
  • Con: This may be a one-time tedious task to get the release notes together, but gh release create should help make things easier.
@victorlin victorlin added the enhancement New feature or request label Apr 26, 2022
@victorlin victorlin self-assigned this Apr 26, 2022
@corneliusroemer
Copy link
Member

I'd love to just have releases immediately - we could just add a note to the first release since 6.3.0 that releases in the meantime have been missed.

I don't think the con is worse not using the release tab immediately. What do you think @victorlin? Most recent is the most important thing anyways. If anything, we could add a few releases manually so there's a bit of context for the last few months. I don't think anyone cares for v11 for example anymore.

@tsibley
Copy link
Member

tsibley commented May 24, 2022

Stepping back a bit here, what's the goal of using GitHub Releases? Is it primarily to

  1. Disseminate release information/announcements, or
  2. Distribute release artifacts?

If (1), great. This makes sense to me.

If (2), it's not clear to me who the expected audience is for this. Who or what would be downloading Augur release artifacts from GitHub instead of from PyPI or Conda (which derives from PyPI)?

(Context is that I was thinking about this again in nextstrain/docker-base#44 (comment)).

@tsibley
Copy link
Member

tsibley commented May 24, 2022

Looking at Auspice's use of GitHub Releases, it appears that the only release assets are source code snapshots, not NPM package artifacts. Is this the same use we'd expect with Augur? Is it potentially confusing that the GitHub Releases don't include the preferred form for installation (wheels or sdists)?

@victorlin
Copy link
Member Author

@tsibley I see it as mostly (1). Should be easy to do (2) with GitHub Actions since dist/ is already uploaded as a release workflow artifact. But I agree, not sure who actually goes to GitHub Release pages to download when there is PyPI/NPM, so probably not much benefit there.

@victorlin
Copy link
Member Author

@corneliusroemer right, just having the latest release shown in the sidebar would be the main benefit. With a bit of scripting in release.yaml which I'll look into, we can easily start with the next version and retroactively create older releases if we ever want to later.

@corneliusroemer
Copy link
Member

corneliusroemer commented Jun 17, 2022

Can we just start using releases immediately and not worry about the past, I feel like perfect is the enemy of the good here.
It's hard to figure out what the latest release is at the moment - one needs to check out tags - rather than just seeing releases immediately.

Re @tsibley's point, I think releases are mostly about communication, notification, so (1), not really to distribute.

At least that's how I use it and how others seem to use it, too?

@victorlin
Copy link
Member Author

Yes we should start using Releases without worrying about older ones. #957 is there but needs some work. @tsibley has done the same over at nextstrain/cli#186. I plan to review that then incorporate the good stuff into #957.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

3 participants