In a discussion titled ‘Upgrade Button - Possible Window to Exploits,’ Omni reports being unexpectedly upgraded to 1.1.0.beta1 after clicking the upgrade button, despite expecting the stable version. They note that the Docker image used defaults to the tests-passed branch, which may not be ideal for production. cpradio confirms this behavior, clarifying that users subscribed to tests-passed will receive beta builds, not stable releases. Omni acknowledges the info and questions why the official Docker image defaults to tests-passed. codinghorror defends the choice, stating most users should be on tests-passed since builds are quite stable. sam explains that offering a UI option to switch between stable and unstable branches is complex: once on tests-passed, users can’t easily revert to stable via the web UI, and containers must be rebuilt to change branches. The thread highlights tension between ease of use, safety, and flexibility in Discourse’s upgrade system, with users advocating for clearer controls and better defaults for production environments.
I’m sure that many of you recently received an e-mail stating:
A new version of Discourse is available.
Your version: 1.0.0
New version: 1.0.1
I went to upgrade and wound up with this:
Version 1.1.0.beta1 1.1.0.beta1 Looks like you upgraded recently. Fantastic!
Yes, I understand that there are ways to upgrade manually, but I firmly believe that the simple 1-click upgrade button should not install an unstable version of Discourse.
If anything, there should be an option to install the latest stable and latest unstable version.
Either that, or the button should simply avoid the beta release altogether.