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

Release branch strategy of Nextcloud Talk #5295

Closed
nickvergessen opened this issue Mar 2, 2021 · 2 comments
Closed

Release branch strategy of Nextcloud Talk #5295

nickvergessen opened this issue Mar 2, 2021 · 2 comments

Comments

@nickvergessen
Copy link
Member

I wanted to shed some light on the change we did for Talk on how we do releases and the branching.

Past

In the past we had basically stable branches that matched the respective Nextcloud version and received only bug fixes and a master branch for the upcoming Nextcloud version with new features. When we did bigger changes this gave us a long time to find issues before the next release. But for smaller features it basically meant you have to wait just as long.
And in the nearer past it mostly showed that the biggest problems we face with features are connected to very big, heavy or weird uses and are close to impossible to detected in developer instances. We just started finding them when deploying on our company instance or with some bigger partners or customers.

Other apps try to maintain their cycle independent from Server and therefore have shorter cycles and time to live for features. While this is the best approach for apps in general, it didn't work out for us in Talk as we interact with the server on very deep levels especially when it comes to Comments/Chat messages, shares and user handling.

Future

Now we are trying something new in Talk by having 2 stable branches for the most recent Nextcloud version currently stable21 and stable21.1. Smaller features are backported from master to stable21.1 and after each maintenance release we merge stable21.1 into stable21 when everything worked out and run with good performance, otherwise we follow up with some more fixes and consider it for the next maintenance release again. Bigger changes, breaking API changes and changes that depend on server changes, like the current rework to allow multiple sessions #5194 are not backported to stable branches.

We hope this solves the issues we with the long waiting time we have at the moment while also retaining minimum stability and bug freeness to keep everyone satisfied.

Because the AppStore also only allows one version per Nextcloud version only the stable package is published there and the stable21.1 package is only available via the GitHub release page https://github.com/nextcloud/spreed/releases as a prerelease.
Testing of that packages is highly appreciated.

Feel free to leave general feedback and questions on the process here and report bugs on those packages via normal issue reports.

Cheers the Talk Team

@nickvergessen
Copy link
Member Author

Just as a follow up sample:
today 11.1.2 was released to the appstore and 11.2.0 is now available via github releases

@nickvergessen
Copy link
Member Author

As 22 is now here this means we will stop the work on stable21.1 and merge it back a last time into stable21 before deleting it.

stable22.1 will be created after the final version of Talks first 22 release has been released

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant