From ad58ad5a3551edb565edf5730968b7c96ebc252d Mon Sep 17 00:00:00 2001 From: jaimergp Date: Mon, 14 Oct 2024 17:17:17 +0200 Subject: [PATCH 1/5] Add CEP to transition to Zulip --- cep-??.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 cep-??.md diff --git a/cep-??.md b/cep-??.md new file mode 100644 index 0000000..428405f --- /dev/null +++ b/cep-??.md @@ -0,0 +1,59 @@ + + + + + + + + +
Title Migration to the Zulip chat platform
Status Draft
Author(s) Jaime Rodríguez-Guerra <jaime.rogue@gmail.com>
Created Oct 14, 2024
Updated Oct 14, 2024
Discussion https://github.com/conda/ceps/pulls
Implementation NA
+ +## Abstract + +The conda steering council team is proposing to transition chat platforms from Element/Matrix to Zulip. + +## Background + +The conda ecosystem has used Gitter.im rooms (and then Matrix/Element) for a long time. `conda/conda` and other repositories offered chat rooms in the platform, albeit with limited traffic if compared to other similarly scoped rooms like `conda-forge`'s. During 2022, more rooms were created a Matrix "Space" was registered under [`conda:matrix.org`](https://app.element.io/#/room/#conda:matrix.org) to organize the otherwise unsorted collection of conda-related rooms. + +However, the Matrix platform is not proving sufficient for the needs of the conda ecosystem, with features such as encryption and opt-in threads getting in the way of keeping track of conversations. + +## Motivation + +Element/Matrix offers a free to use real-time chat platform with web, desktop and mobile clients with end-to-end encryption messaging. Each community or space can create one or more rooms, public or private, to discuss different topics. Other features like videocalls, private messaging, and file sharing are available. Users can create a new account or log in with their Github credentials, among others. + +However, it suffers from a few issues that limit its usability within our community. The main concerns are: + +- End-to-end encryption fails sometimes, leaving the users unable to read previous messages, or have their messaged read by others. Synchronization of keys across clients is necessary to fix it, but in some other cases the issue has dissapeared spontaneously. +- Some messages are considered unread for months at a time, and there's no way to find them and mark them as read. +- The thread system offers very limited ways of tracking conversations and making them discoverable. It's very difficult to follow on topics started hours ago, let alone days or weeks ago. +- Scoped discussions require a lot of discipline from the users, since threads are optional, and the real-time chat is preferred in the UI. + +Zulip, on the other side, is a free to use, open source, real-time discussion board. It has web, desktop and mobile clients. Each community has its Zulip instance, where several "channels" can be created. Each channel hosts a number of threads or topics. Instant messaging is also available within the Zulip instance. Users can also create a new account or log in with their Github credentials, among others. + +Zulip offers some features we would consider beneficial to the conda-forge community: + +- Threads (or topics) are encouraged and the default user experience. +- Each topic must have a title that promotes well-scoped discussions, which can be marked as solved when the issue has been addressed. +- Moderation tools are available to split threads into new ones in case the conversation goes off-topic. +- Users can "follow" threads they find interesting, which has its own dedicated view. This makes it easier to track updates to conversations you have started or participated in. +- Private rooms are also available, but they don't offer end-to-end encryption. For this matter, a sensitive communications protocol is proposed below. + +## Proposal + +After accepting this proposal, we will implement the following decisions: + +- The Zulip instance published at `conda.zulipchat.com` will be open to the public with world-readable permissions. +- The steering council will move its private communications to the Zulip instance, and stop using the Element rooms. A last message will be published in the Element core chat room with the details on how to transition to the Zulip instance. +- New channels will be created in the instance as considered necessary (e.g. tool-specific channels, CEP discussions, etc). + +Three months after the approval of this CEP, the steering council will consider the migration finished and the public rooms will become private and archived. If the steering council estimates that there's still sufficient activity, another three months will be granted, with periodic reminders of the new Zulip instance. After that period, no more extensions will take place. + + +## Alternatives + +The community also suggested moving to Discord. However that was discarded given its closed-source nature, handling of the messages there exchanged, and the need of a Discord account. A broader scope discussion can be found at [`conda/communications#29`](https://github.com/conda/communications/issues/29). + +## Copyright + +All CFEPs are explicitly [CC0 1.0 Universal](https://creativecommons.org/publicdomain/zero/1.0/). From 7504f552ff82343a7490939a8c4bfe4fa312294a Mon Sep 17 00:00:00 2001 From: jaimergp Date: Mon, 14 Oct 2024 17:18:46 +0200 Subject: [PATCH 2/5] formatting --- cep-??.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cep-??.md b/cep-??.md index 428405f..8d07620 100644 --- a/cep-??.md +++ b/cep-??.md @@ -10,7 +10,7 @@ ## Abstract -The conda steering council team is proposing to transition chat platforms from Element/Matrix to Zulip. +The conda steering council is proposing to transition chat platforms from Element/Matrix to Zulip. ## Background @@ -44,12 +44,11 @@ Zulip offers some features we would consider beneficial to the conda-forge commu After accepting this proposal, we will implement the following decisions: - The Zulip instance published at `conda.zulipchat.com` will be open to the public with world-readable permissions. -- The steering council will move its private communications to the Zulip instance, and stop using the Element rooms. A last message will be published in the Element core chat room with the details on how to transition to the Zulip instance. +- The steering council will move its private communications to the Zulip instance, and stop using the Element rooms. A last message will be published in the Element core chat room with the details on how to transition to the Zulip instance. - New channels will be created in the instance as considered necessary (e.g. tool-specific channels, CEP discussions, etc). Three months after the approval of this CEP, the steering council will consider the migration finished and the public rooms will become private and archived. If the steering council estimates that there's still sufficient activity, another three months will be granted, with periodic reminders of the new Zulip instance. After that period, no more extensions will take place. - ## Alternatives The community also suggested moving to Discord. However that was discarded given its closed-source nature, handling of the messages there exchanged, and the need of a Discord account. A broader scope discussion can be found at [`conda/communications#29`](https://github.com/conda/communications/issues/29). From 9eb7d91993844b3d65d205d0c5fa8b2bd71a6c8a Mon Sep 17 00:00:00 2001 From: jaimergp Date: Mon, 14 Oct 2024 17:20:41 +0200 Subject: [PATCH 3/5] add urls --- cep-??.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cep-??.md b/cep-??.md index 8d07620..e0b4460 100644 --- a/cep-??.md +++ b/cep-??.md @@ -4,7 +4,7 @@ Author(s) Jaime Rodríguez-Guerra <jaime.rogue@gmail.com> Created Oct 14, 2024 Updated Oct 14, 2024 - Discussion https://github.com/conda/ceps/pulls + Discussion https://github.com/conda/ceps/pull/92, https://github.com/conda/communications/issues/29 Implementation NA From 8705cbef5fea90260acf76f7e404f5d325db6237 Mon Sep 17 00:00:00 2001 From: jaimergp Date: Sat, 23 Nov 2024 12:05:41 +0100 Subject: [PATCH 4/5] Update and rename cep-??.md to cep-0018.md --- cep-??.md => cep-0018.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) rename cep-??.md => cep-0018.md (97%) diff --git a/cep-??.md b/cep-0018.md similarity index 97% rename from cep-??.md rename to cep-0018.md index e0b4460..900c871 100644 --- a/cep-??.md +++ b/cep-0018.md @@ -1,9 +1,11 @@ +# CEP 18 - Migration to the Zulip chat platform + - + - +
Title Migration to the Zulip chat platform
Status Draft
Status Accepted
Author(s) Jaime Rodríguez-Guerra <jaime.rogue@gmail.com>
Created Oct 14, 2024
Updated Oct 14, 2024
Updated Nov 23, 2024
Discussion https://github.com/conda/ceps/pull/92, https://github.com/conda/communications/issues/29
Implementation NA
From bac7673d5592d5b5b508f2c5864a4cce0c9444a6 Mon Sep 17 00:00:00 2001 From: jaimergp Date: Sat, 23 Nov 2024 12:10:07 +0100 Subject: [PATCH 5/5] codespell --- cep-0018.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cep-0018.md b/cep-0018.md index 900c871..8ce4fb5 100644 --- a/cep-0018.md +++ b/cep-0018.md @@ -26,7 +26,7 @@ Element/Matrix offers a free to use real-time chat platform with web, desktop an However, it suffers from a few issues that limit its usability within our community. The main concerns are: -- End-to-end encryption fails sometimes, leaving the users unable to read previous messages, or have their messaged read by others. Synchronization of keys across clients is necessary to fix it, but in some other cases the issue has dissapeared spontaneously. +- End-to-end encryption fails sometimes, leaving the users unable to read previous messages, or have their messaged read by others. Synchronization of keys across clients is necessary to fix it, but in some other cases the issue has disappeared spontaneously. - Some messages are considered unread for months at a time, and there's no way to find them and mark them as read. - The thread system offers very limited ways of tracking conversations and making them discoverable. It's very difficult to follow on topics started hours ago, let alone days or weeks ago. - Scoped discussions require a lot of discipline from the users, since threads are optional, and the real-time chat is preferred in the UI.