When I get that “New Discourse version, update available” email from my forum (this time about 2.1.0.beta1), I know @jomaxro 's elaborate release notes will appear here within 6-24 hrs. or so. It’s not very important, but I would organize it in a different order.
I agree, first thing I do is go and look at the release notes to determine whether or not I am going to apply the update.
There is a high level release note list here: Discourse Version 2.1
The notes are in the above topic, so this is covered.
I’m not seeing any notes specifically for 2.1b1. Just a general list of goals for the final version of 2.1.
I’m off today (family event), will respond to this properly next week. Short version: there are no major changes from the last release notes (2.0.0.beta10) and 2.1.0.beta1 - we simply pushed 2.0 to stable and moved work to 2.1.
此帖最后更新于 2021-06-28T04:00:00Z,以说明当前的流程。
大家好!这里需要讨论多个话题,让我看看能否全部涵盖。
这是我们有意做出的决定。我们针对测试版(beta)发布没有正式的发布系统。我们只在觉得合适时才会发布新版本。因此,发布前通常预警时间很短,也就没有太多时间撰写发布说明。@codinghorror 认为,为了等待发布说明准备好而推迟发布并不合理。
现在,测试版发布由工程团队和社区团队协调进行。发布说明应在测试版发布的同时上线,或者稍早一点。
您将不会看到 beta1 的发布说明。 为了避免混淆,所有测试版发布都会撰写发布说明。稳定版发布也会附带说明。请注意,任何版本的 beta1 基本上都与上一版本的最后一个测试版完全相同。
要理解其中的原因,我需要简要解释一下我们的分支配置。
就我们目前的目的而言,我们需要了解 Discourse 的四个分支:main、tests-passed、beta 和 stable。
Main(主分支):
当新的提交添加到 Discourse 时,它位于主分支上。主分支是 Discourse 绝对最新(最当前)的分支,我们不建议任何人让他们的站点跟踪主分支。
Tests-passed(测试通过分支):
当新的提交被推送到主分支时,我们的构建服务器会自动针对最新代码运行所有测试。一旦所有测试通过,该提交就会被添加到我们的 tests-passed 分支。这是所有 Discourse 站点默认运行的分支。
Beta(测试版分支):
每隔几周,我们会将 tests-passed 上的当前提交推送到 beta 分支。我们将 beta 作为一个“里程碑”,用于发布我们希望更多站点运行和测试的一组提交。如果我们有重要的安全修复需要站点接收,也会推送一个测试版。当推送测试版时,所有运行 tests-passed 或 beta 的站点都会收到“有新更新可用”的邮件。运行 tests-passed 的站点将更新到当前的 tests-passed 提交(包括在测试版之后推送的任何新提交),而运行 beta 的站点则不会更新。
Stable(稳定版分支):
每 4-6 个月,我们会发布一个新的 stable 构建。在推送稳定版之前约 2 周,我们会发布最后一个测试版。随后我们会密切关注日志,试图发现任何残留的漏洞,并避免添加任何新功能或高风险变更。一旦我们对当前测试版的状况感到满意,就会将其推送到稳定版。
理解了以上内容,让我们以 2.0.0 为例。我们在 5 月 16 日推送了 2.0.0.beta10。所有运行 tests-passed 或 beta 的用户都收到了邮件(我们假设他们已更新)。我为该测试版撰写了发布说明。约两周后,即 5 月 31 日,我们将该构建作为 2.1.0 推送到稳定版。为了确保运行 tests-passed 或 beta 的用户也能收到更新,我们将同一构建作为 2.1.0.beta1 推送出去。
这一切都清楚了吗?我是否可以在 #feature:announcements 中的 release-notes 方面做些什么,让这一点更清晰?