跳到主要内容

CEP 18 - 迁移到 Zulip 聊天平台

标题迁移到 Zulip 聊天平台
状态已接受
作者Jaime Rodríguez-Guerra <jaime.rogue@gmail.com>
创建于2024 年 10 月 14 日
更新于2024 年 11 月 23 日
讨论https://github.com/conda/ceps/pull/92, https://github.com/conda/communications/issues/29
实施不适用

摘要

conda 指导委员会提议将聊天平台从 Element/Matrix 迁移到 Zulip。

背景

长期以来,conda 生态系统一直使用 Gitter.im 房间(然后是 Matrix/Element)。conda/conda 和其他存储库在平台上提供了聊天室,但与其他类似范围的房间(如 conda-forge 的房间)相比,流量有限。在 2022 年期间,创建了更多房间,并在 conda:matrix.org 下注册了一个 Matrix “空间”,以组织原本未分类的 conda 相关房间集合。

然而,Matrix 平台无法满足 conda 生态系统的需求,加密和选择加入线程等功能妨碍了跟踪对话。

动机

Element/Matrix 提供了一个免费使用的实时聊天平台,具有 Web、桌面和移动客户端,并具有端到端加密消息传递功能。每个社区或空间都可以创建一个或多个公共或私有房间来讨论不同的主题。还提供视频通话、私信和文件共享等其他功能。用户可以创建一个新帐户或使用他们的 Github 凭据登录等。

但是,它存在一些问题,限制了其在我们社区内的可用性。 主要关注的问题是

  • 端到端加密有时会失败,导致用户无法读取之前的消息,或者他们的消息被其他人读取。 跨客户端同步密钥对于修复它是必要的,但在其他情况下,问题已自行消失。
  • 有些消息会被视为未读状态长达数月,并且无法找到它们并将它们标记为已读。
  • 线程系统在跟踪对话和使其可被发现方面提供的功能非常有限。 很难跟进几小时前开始的主题,更不用说几天或几周前的主题了。
  • 范围讨论需要用户的高度自律,因为线程是可选的,并且实时聊天在 UI 中是首选的。

另一方面,Zulip 是一个免费使用、开源的实时讨论板。 它具有 Web、桌面和移动客户端。 每个社区都有其 Zulip 实例,可以在其中创建多个“频道”。 每个频道托管多个线程或主题。 即时消息也可在 Zulip 实例中使用。 用户还可以创建一个新帐户或使用他们的 Github 凭据登录等。

Zulip 提供了一些我们认为对 conda-forge 社区有益的功能

  • 线程(或主题)是鼓励的,并且是默认的用户体验。
  • 每个主题都必须有一个标题,以促进范围明确的讨论,当问题得到解决后,可以将其标记为已解决。
  • 版主工具可用于将线程拆分为新线程,以防对话偏离主题。
  • 用户可以“关注”他们感兴趣的线程,这有其自己的专用视图。 这使得跟踪您发起或参与的对话的更新变得更加容易。
  • 私人房间也可用,但它们不提供端到端加密。 对于此事,下面提出了一个敏感通信协议。

提议

在接受此提议后,我们将实施以下决定

  • 发布在 conda.zulipchat.com 的 Zulip 实例将向公众开放,并具有世界可读权限。
  • 指导委员会将把其私人通信转移到 Zulip 实例,并停止使用 Element 房间。 将在 Element 核心聊天室中发布最后一条消息,其中包含有关如何过渡到 Zulip 实例的详细信息。
  • 将在实例中创建新的频道,如果认为有必要(例如,特定于工具的频道、CEP 讨论等)。

在本 CEP 批准三个月后,指导委员会将认为迁移已完成,公共房间将变为私有并存档。 如果指导委员会估计仍有足够的活动,则将再授予三个月的时间,并定期提醒新的 Zulip 实例。 在此期限之后,将不再延期。

替代方案

社区还建议迁移到 Discord。 然而,由于其闭源性质、处理在那里交换的消息以及需要 Discord 帐户而被否决。 更广泛范围的讨论可以在 conda/communications#29 中找到。

所有 CFEP 均明确采用 CC0 1.0 通用