jamulussoftware / jamulus

Jamulus enables musicians to perform real-time jam sessions over the internet.
https://jamulus.io
Other
1k stars 224 forks source link

Prepare Release 3.9.0 #2603

Closed ann0see closed 2 years ago

ann0see commented 2 years ago

Target timeline

Phase Target date Original Actual
Scheduled feature freeze / Start of translation process 2022-07-08 2022-07-01 2022-07-03
Targeted translation completion date 2022-07-22 2022-07-08 2022-07-08[^*]
Approximate release date 2022-07-29 2022-07-21 2022-07-29

[^*]: Some web site translations are to be completed after release:

Reminder: see jamulussoftware/jamuluswebsite#711

Current state: Released

Checklist

ann0see commented 2 years ago

Opened as requested by @hoffie

ann0see commented 2 years ago

Todo:

gilgongo commented 2 years ago

We seem to be a bit far from a release at the moment, unless we de-tag a lot of stuff? There are 24 things in the backlog apparently not even being worked on, for example: https://github.com/orgs/jamulussoftware/projects/2?card_filter_query=milestone%3A%22release+3.9.0%22

Of course, if some of those are being worked on, please will those responsible update the project status, since without that we can't really shepherd the release.

ann0see commented 2 years ago

Probably it's worth doing a radical de-tag for stuff we don't think are ready or doable.

ann0see commented 2 years ago

@jamulussoftware/maindevelopers I'd like to move the release forward. Can we decide to de-tag some of the things in the milestone?

ann0see commented 2 years ago

@dtinth @Rob-NY There are still some JSON-RPC related open issues. Can you take care of them?

pljones commented 2 years ago

Linked jamulussoftware/jamuluswebsite#711 and removed 3.9.0 from that issue.

pljones commented 2 years ago

I've added target dates now. Hopefully the state of the code should be pretty stable by the end of the week and we won't hit too many bumps getting the translations in.

pljones commented 2 years ago

OK, I'm declaring the code freeze now for any changes requiring translation.

pljones commented 2 years ago

If the documentation is complete, please remove the label. Thanks!

ann0see commented 2 years ago

We need to tell macOS users about the possibility they need to use the legacy build from now on on Mojave or earlier.

pljones commented 2 years ago
  • [ ] Check if the list of translators in tools/create-translation-issues.sh is up-to-date

Oops, I missed that. Do we have somewhere to check against?

hoffie commented 2 years ago

Oops, I missed that. Do we have somewhere to check against?

Maybe cross-check with the Github org. In some way, that list is the authoritative one I guess. This is mainly a reminder to think about adding anyone who has joined recently (Korean?).

pljones commented 2 years ago

Maybe cross-check with the Github org.

Which opens the question of whether this can be automated by the script itself :).

Adding here, as it was quite a journey around github to find it: https://github.com/orgs/jamulussoftware/teams/translators/members

Reviewers: https://github.com/orgs/jamulussoftware/teams/trreviewers/members

("Wouldn't it be nice if..." the members list could have a comment saying what language(s) they did...)


On the Korean... is that merged now..? If so, yeah, we need to update. Would a re-run of the tool be idempotent enough to spot the change in the list?

hoffie commented 2 years ago

Which opens the question of whether this can be automated by the script itself :).

At some point the cost and effort for automation might not be worth it anymore. ;)

On the Korean... is that merged now..?

I'ts being worked on at least. I haven't been following closely, but will try to catch up.

Would a re-run of the tool be idempotent enough to spot the change in the list?

It should be. If unsure, edit the script and replace the modifying gh invocation by echo gh to be sure... :)

ann0see commented 2 years ago

@pljones asked to open an issue for all the things we want/need to highlight for the next release. I think we usually drafted a release announcement as Pull Request?

gilgongo commented 2 years ago

OK I've done the PR for next-release on the website. Freezing all content on release and next-release branches.

https://github.com/jamulussoftware/jamuluswebsite/pull/773

ann0see commented 2 years ago

@pljones since your PR was merged, I think we should soon push out another beta?

pljones commented 2 years ago

I was thinking to see if I could get the New Client Level fixed but that looks like something someone who'd changed that part of the client would need to look at, to get it done fast. The code simply looks "wrong" to me...

So yeah, I'll do another beta.


Done.

Except I forgot updating ChangeLog content. I updated the .ts files... wasn't sure whether I should or not for the beta2...

ann0see commented 2 years ago

@jamulussoftware/translators First of all thank you for all your translation work in the last few weeks and sorry for the various changes after the translation freeze. Today is the translation deadline, so if you still have an open Pull Request, please add the last changes as soon as possible. We'll merge open pull requests in a few hours.

pljones commented 2 years ago

DRAFT

We're excited to announce the availability of Jamulus 3.9.0!

Some highlights include:

A huge amount of effort has also been spent improving Jamulus - the UI, the client and the server. Please find all the details in the Changelog. Thanks to everyone who did their part to make this release happen:

This Discussion thread will be locked in order to keep things organized.

Feedback, questions or suspected bug reports are appreciated nevertheless -- please start a new Discussion on Github for them.

And please get involved - your ideas and suggestions, along with helping get others enjoying playing music together online using Jamulus, are what keeps things moving forwards.

Downloads

Windows

Windows users: Please note that in the first days after release, SmartScreen will probably display warnings about this release being unknown upon download and/or execution of the installer. Let us know when you do not see this warning any more and we will update this announcement accordingly.

macOS

TODO: Point the links to the signed versions

Linux (Debian/Ubuntu)

Ubuntu Linux client users: note that installation requires you have the "universe" repository enabled. Instructions for this are on the website.

Experimental

Compile it yourself

Jamulus is free software and you're encouraged to participate in its development - not only by using the software and suggesting ways to keep it simple whilst improving it - but also to contribute those changes yourself. You can either download the source code or fork the Github repository.

gilgongo commented 2 years ago

@pljones I wouldn't include the stuff about universe in Linux because it affects so few people, or maybe just say:

Ubuntu Linux client users: note that this release requires you have the "universe" repository enabled. Instructions for this are on the website.

ann0see commented 2 years ago

@pljones I'd also include the ARM compatibility for macOS and Linux as highlight. Probably more end users would like to know that. Otherwise, I think it's good (also the new layout)

pljones commented 2 years ago

https://jamulus.io/contribute/Release-Process#steps-for-a-specific-release

for a proper release, change it as follows, removing the NOTE and including the release date:

### 3.7.0 (2021-03-17) ###

The above should highlight the trailing ### being required for the script.

pljones commented 2 years ago

TODO: Android cache needs clearing, I think, to get the build to work. I've not yet done that. Once it's built, it needs copying to SourceForge, too, and tagging as Android default. I've untagged 3.8.2 there.

ann0see commented 2 years ago

https://github.com/jamulussoftware/jamulus/commit/6c0f9641e6068d3409b7484d7f9bf065f01c9af8 Should be named similar to the previous releases (r3_9_0) or something short. @pljones

pljones commented 2 years ago

You need to pull

* cf9eb7f6 2022-07-29 (HEAD -> master, origin/master, origin/HEAD) Set version to 3.9.0dev [Peter L Jones]
* c3d3cf61 2022-07-29 (tag: r3_9_0, tag: latest) Commit 3.9.0 ChangeLog (take 2) [Peter L Jones]
* 6c0f9641 2022-07-29 Update ChangeLog and Jamulus.pro for 3.9.0 [Peter L Jones]
ann0see commented 2 years ago

That’s how the last release has looked like (and what I‘d like to have seen. Maybe we can agree on a release commit message like: RELEASE: 3.9.0 - Update …

592E648C-EAE0-4B9C-BCA0-7F63CB4E60E5

pljones commented 2 years ago

config.yml is actually _config.yml (with a leading underscore)...

pljones commented 2 years ago

That’s how the last release has looked like (and what I‘d like to have seen. Maybe we can agree on a release commit message like: RELEASE: 3.9.0 - Update …

Not really important. So long as the message clearly states the change, that's all that's needed.

ann0see commented 2 years ago

It makes scanning the log a bit easier. But as long as the tag is set, I‘m ok with it.

ann0see commented 2 years ago

Publish Website release by merging next-release into release

Since when don't we squash merge anymore? @gilgongo @hoffie ?

ann0see commented 2 years ago

Edit to release checklist:

Remove branch protection on release under https://github.com/jamulussoftware/jamuluswebsite/settings/branches

ann0see commented 2 years ago

Determine if a release retrospective is needed, create on Discussions if required

I think it would be good to have one. (Speed of release process, clarification of Website process, other problems)

pljones commented 2 years ago

It was actually a lot easier than I thought it would be -- apart from some bits of the website release process.

Ideally, everything would be wrapped in Github Actions. These could then be triggered when needed in the overall workflow - helping towards automating the release process. (We'd even get consistent commit messages, then 😉 .)

ann0see commented 2 years ago

Yeah agree. But that should go to the post release discussion.

Another thing: I just uploaded the signed macOS build from @emlynmac 's repo.

pljones commented 2 years ago

Another thing: I just uploaded the signed macOS build from @emlynmac 's repo.

Why? I'd already done that and ticked it off.

ann0see commented 2 years ago

Since I saw his build seemed to be younger than the release, so I concluded that the release was unsigned. But I've just tested it and it seems to be ok. (I must have overlooked something on my side.)

gilgongo commented 2 years ago

Publish Website release by merging next-release into release

Since when don't we squash merge anymore? @gilgongo @hoffie ?

Yah we usually squash-merge, but it's easy to forget to do.

BTW I'll see if I can do the Steinberg thing https://github.com/jamulussoftware/jamulus/issues/2687

pljones commented 2 years ago

Yah we usually squash-merge, but it's easy to forget to do.

Then the instructions should give clear guidance - it wouldn't get forgetten then.

ann0see commented 2 years ago

I've just opened https://github.com/jamulussoftware/jamulus/discussions/2766 (post release discussion) and added some thoughts. I'd be happy for comments.

ann0see commented 2 years ago

@gilgongo could you please check if the linked PR documents all the mentioned changes to the checklist from here?

ann0see commented 2 years ago

Closing as 3.9.1 issue was opened