将更多热门插件与 Discourse 核心打包

我记得我失败的重建自动启动了旧容器

2 个赞

我认为如果你运行 discourse-doctor,就会发生这种情况。

我猜你指的是这里的 docker manager

我们确实可以通过这些变量强制进行 CLI 更新——这里复杂之处在于,只有在你已经安装了其中一个插件时才需要干预。

也许在这种情况下,我们应该强制所有人都进行 CLI 更新,这样对自托管用户来说体验会更好。

最终一切都解决了。

起初有点令人不安,直到我意识到我必须进入命令行,删除插件并重新运行。

幸运的是,第一次 CLI 重新运行时消息的结尾表明了需要删除的内容。

2 个赞

哎呀。对了。

我认为,如果 cdck 倾向于执行一个肯定会起作用的命令行重建(即使可能不是必需的),而不是一个更方便的一键式升级(这可能会导致你的站点崩溃并需要你弄清楚如何执行命令行重建),那么体验会更好。

5 个赞

这是对情况的完全误解。

这项更改为团队带来了巨大的速度提升。过去需要数小时才能完成的更改,现在只需几分钟即可完成。

例如添加对已分配和已解决的 /filter 支持。这是我上周做的一件事。是的,过去这是可能的,但它需要跨存储库协调,这非常复杂,现在我们可以在一次提交中轻松完成这些工作。

最终结果是核心插件的质量/稳定性和改进速度得到了提高。它还为我们提供了更好的可扩展性,因为我们不那么不情愿地改进我们的可扩展性。

12 个赞

我们为每个捆绑插件批次强制执行了 CLI 重建

我没有看到任何关于 UI 重建失败的报告,所以我认为这种策略成功地引导人们进行 CLI 重建。这些 CLI 重建随后提供了关于从 app.yml 中删除行的“提示”消息。

4 个赞

我的错。我以为我看到了一些,但我敢打赌你比我更关注!

抱歉。

2 个赞

我不确定该如何处理这个问题。

更新失败并出现许多类似以下内容的错误:

HINT: 插件‘discourse-solved’现已包含在Discourse中,不应包含在您的容器配置中。
从您的containers/web_only.yml文件中删除行‘git clone https://github.com/discourse/discourse-solved’,然后重试。
有关更多信息,请参阅Bundling more popular plugins with Discourse core

我编辑了web_only.yml并注释掉了所有引用的插件,但这并没有帮助。

`cmd:`
`##          - git clone ` https://github.com/discourse/docker_manager.git
`## - git clone ` https://github.com/discourse/discourse-templates
`## - git clone ` https://github.com/discourse/discourse-akismet.git
`## - git clone ` https://github.com/discourse/discourse-chat-integration.git
`## - git clone ` https://github.com/discourse/discourse-solved.git
`## - git clone ` https://github.com/discourse/discourse-cakeday.git
`## - git clone ` https://github.com/discourse/discourse-adplugin.git
`## - git clone ` https://github.com/discourse/discourse-patreon.git
`## - git clone ` https://github.com/discourse/discourse-linkedin-auth
`## - git clone ` https://github.com/discourse/discourse-data-explorer.git
`## - git clone ` https://github.com/discourse/discourse-assign.git
`## - git clone ` https://github.com/discourse/discourse-topic-voting.git
`## - git clone ` https://github.com/discourse/discourse-user-notes.git
`## - git clone ` https://github.com/discourse/discourse-math.git
`## - git clone ` https://github.com/discourse/discourse-oauth2-basic.git
`## - git clone ` https://github.com/discourse/discourse-calendar.git
`## - git clone ` https://github.com/discourse/discourse-affiliate.git
`## - git clone ` https://github.com/discourse/discourse-invite-tokens.git
`## - git clone ` https://github.com/discourse/discourse-github.git

那里的提示会搜索您的配置中是否存在那些字符串,因此在这种特定情况下,错误文本提示可能会误导您。

可以删除那些行(如果您谨慎的话,请先复制您现有的配置),这应该会显示一个更有用的错误。

2 个赞

这是您取出的物品清单,还是您仍然拥有的物品清单?因为其中很多都在 OP 的清单里。

1 个赞

生日快乐!:birthday_cake:

我们是否对 discourse-cakeday 何时会移入核心有了更清晰的了解?

Sam 之前提到过

我原以为可能下个月,但现在我们比那时更确定了吗?

1 个赞

令人惊讶的是,cakeday 是我个人网站 app.yml 中唯一剩下的插件!:exploding_head:

供您参考,我们本周刚从年度全球聚会回来,目前仍在处理各项事务,这不会是优先事项!我相信很快就会完成,但不必着急。

3 个赞

对于所有未跟踪第一个帖子编辑的用户:
cakeday 已移至 core

9 个赞

bbcode 会被集成到核心吗?

1 个赞

在不久的将来不会,这是一个非常非常复杂的插件,尤其是在富文本编辑器方面。

2 个赞

我通常很尊重你们,但令我难过的是,这又成了一个问题……我仍然认为没有必要强迫我们进入控制台手动删除它们,因为有几十种更好的解决方案可以避免强迫我们手动完成所有这些操作。

1 个赞

嘿,很抱歉您对我们选择的路径不满意,但这就是我们前进的方向,很遗憾。在我看来,这些说明足够清楚了,您只需要从 app.yml 中删除几行并重新构建即可,这样就完成了!

1 个赞

是的,我并不是说这真的很难(修复它只是一个简单的 45 秒任务),我只是觉得强迫我们进去做这件事有点严厉,而正常的 UI 升级只是说“请手动重建应用程序!”。在我看来,忽略这些行,直接说“提示:插件 discourse-solved 现在已包含在核心中,应从您的 app.yml 文件中删除”并继续构建,或者直接在 UI 中显示,会更好,但这也不是什么大问题,只是一个小小的麻烦。

1 个赞

您确实说过这是一个问题,但事实并非如此,正如您所说的那样。只是为您和其他未来的旅行者澄清这一点。

您提出的关于我们可以做得更多以使未来的此类更改更容易的观点很有道理……在这种情况下,我不确定还能做些什么,因为需要在 app.yml 中进行更改,而这必须由自托管者在命令行中完成。

无论如何,这一轮已经全部完成,所有这些令人难以置信的官方插件现在都已包含在核心中供大家使用,无需将其添加到 app.yml 或担心它们之间的交互。我喜欢我的 app.yml 现在如此简单。

1 个赞