Sfoglia il codice sorgente

Switch from Discourse Forums to GitHub Discussions (#444)

Switch from Discourse Forums to GitHub Discussions

For use of https://github.com/carbon-language/carbon-lang/discussions

Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
Jon Meow 5 anni fa
parent
commit
5a2db81039
2 ha cambiato i file con 120 aggiunte e 0 eliminazioni
  1. 1 0
      proposals/README.md
  2. 119 0
      proposals/p0444.md

+ 1 - 0
proposals/README.md

@@ -47,5 +47,6 @@ request:
 -   [0301 - Principle: Errors are values](p0301.md)
 -   [0340 - while loops](p0340.md)
 -   [0426 - Governance & evolution revamp](p0426.md)
+-   [0444 - GitHub Discussions](p0444.md)
 
 <!-- endproposals -->

+ 119 - 0
proposals/p0444.md

@@ -0,0 +1,119 @@
+# GitHub Discussions
+
+<!--
+Part of the Carbon Language project, under the Apache License v2.0 with LLVM
+Exceptions. See /LICENSE for license information.
+SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+-->
+
+[Pull request](https://github.com/carbon-language/carbon-lang/pull/444)
+
+<!-- toc -->
+
+## Table of contents
+
+-   [Problem](#problem)
+-   [Background](#background)
+-   [Proposal](#proposal)
+-   [Alternatives considered](#alternatives-considered)
+    -   [Keep using Discourse Forums](#keep-using-discourse-forums)
+    -   [Try to maintain history](#try-to-maintain-history)
+        -   [Caveats](#caveats)
+-   [Rationale based on Carbon's goals](#rationale-based-on-carbons-goals)
+
+<!-- tocstop -->
+
+## Problem
+
+Right now we run our own [Discourse Forums](https://forums.carbon-lang.dev/).
+[GitHub Discussions](https://docs.github.com/en/discussions) was recently
+released, and should be evaluated for appropriateness as a replacement.
+
+## Background
+
+[GitHub Discussions](https://docs.github.com/en/discussions) is a new forum
+solution offered by GitHub. Although it was initially only for public
+repositories, as of March, it is
+[available to private repositories](https://github.blog/2021-03-09-github-discussions-now-available-for-private-repositories/).
+
+Developers can
+[preview in carbon-lang](https://github.com/carbon-language/carbon-lang/discussions).
+
+[Discourse Forums](https://forums.carbon-lang.dev/) are currently used by
+Carbon. These run on a Google Cloud instance owned by Carbon team.
+
+## Proposal
+
+We should shut down the Discourse Forums and adapt GitHub Discussions to our
+needs. GitHub Discussions categories and documentation should be updated
+accordingly, alongside evolution process changes.
+
+Discourse Forums should be frozen and eventually shut down once we are confident
+in the switch. History can manually copied from the frozen instance as needed,
+and discarded otherwise.
+
+## Alternatives considered
+
+### Keep using Discourse Forums
+
+Advantages:
+
+-   Discourse's UI is better in some places:
+    -   Easy drag-and-click UI for quoting.
+    -   Easy to navigate to the original post of a quote.
+    -   Less noisy notifications because it's separate from other discussion,
+        such as issues and PRs.
+        -   However, notifications will all be in one place.
+    -   Preview is visible while writing, whereas GitHub uses a tab.
+    -   More advanced search support.
+-   Discourse Forums has categories and subcategories.
+    -   GitHub Discussions only has categories.
+-   Discourse Forums has controllable settings for many things.
+    -   GitHub Discussions offers fewer options, although simplicity is
+        sometimes better.
+-   Keeps existing history.
+-   [Swift](https://forums.swift.org/) and [Rust](https://users.rust-lang.org/)
+    are prominent examples also using Discourse.
+-   Avoids handing more control to GitHub.
+
+Disadvantages:
+
+-   GitHub's UI is better in some places:
+    -   Responses to responses are threaded in-place, which may be appreciated
+        by some.
+    -   Links to issues and PRs will work more seamlessly, with tooltips.
+    -   Discourse Forums has nuisance warnings about similar posts and @-ing to
+        many people in a group, which cannot be disabled. These get in the way
+        of frequent posters.
+    -   When copying links, Discourse Forums' URL updates made it easy to
+        accidentally link to a specific post; GitHub makes that require a
+        deliberate action.
+    -   There is direct support for filing issues based on discussions.
+    -   Supports voting on posts and sorting by vote, for more types of
+        discussions, particularly Q&A.
+-   Discourse Forums is a now unnecessary split in communication mechanisms.
+    -   GitHub is the only possible direction of consolidation: we already use
+        GitHub for issues and PR discussion, and moving that to Discourse is
+        infeasible.
+-   Running Discourse Forums ourselves requires significant maintenance, and
+    [still has configuration issues](https://github.com/carbon-language/carbon-lang/issues/356).
+
+### Try to maintain history
+
+We've deliberately not put much into Discourse Forums, and GitHub issues are
+already a focus of discussion. There's not enough history to justify significant
+investment into making a copy.
+
+#### Caveats
+
+The
+[contributor wiki](https://forums.carbon-lang.dev/t/contributor-directory-wiki/134/2)
+can be moved to
+[GitHub's wiki](https://github.com/carbon-language/carbon-lang/wiki).
+
+## Rationale based on Carbon's goals
+
+-   [Community and culture](https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/goals.md#community-and-culture):
+
+    -   GitHub Discussions offers a way to consolidate tools and make community
+        forums easier to find.