[gnome-control-center/gbsneto/maintainers: 6/6] project: Document maintainers and workflow



commit 7a1f3e007faf318a97e22ea8cb436e7e3c374a41
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Mon Jul 16 18:25:12 2018 -0300

    project: Document maintainers and workflow
    
    It is important that potential contributors know who
    they should get in touch, who is supposed to review
    their work, and maintainers to know how they should
    introduce changes.
    
    Thus, this commit documents the current maintainers
    together with what they maintain, and the workflow
    between maintainers as well.

 docs/CONTRIBUTING.md      | 14 +++++----
 docs/MAINTAINERS.md       | 44 ++++++++++++++++++++++++++++
 gnome-control-center.doap | 73 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 126 insertions(+), 5 deletions(-)
---
diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md
index 7e054da29..e0e6ad816 100644
--- a/docs/CONTRIBUTING.md
+++ b/docs/CONTRIBUTING.md
@@ -7,10 +7,13 @@ Please note we have a Code of Conduct, please follow it in all your interactions
 
 ## Pull Request Process
 
-1. Ensure your code compiles and doesn't break anything. Run `meson test -C <builddir>` before creating
-   the pull request.
-2. If you're adding new API, it must be properly documented.
-3. The commit message is formatted as follows:
+1. Create a fork in GitLab and push your work to there
+2. Open a Merge Request
+  1. Always allow maintainer edits
+  2. Mark the Merge Request as WIP if your work is not ready to be reviewed
+3. Assign the correct maintainer to the Merge Request (see [`MAINTAINERS.md`][maintainers] to select
+   the correct maintainer)
+4. Format commit messages as follows:
    ```
    component: <summary>
    ‌
@@ -68,4 +71,5 @@ This Code of Conduct is adapted from the [Contributor Covenant][homepage], versi
 available at [http://contributor-covenant.org/version/1/4][version]
 
 [homepage]: http://contributor-covenant.org
-[version]: http://contributor-covenant.org/version/1/4/
\ No newline at end of file
+[version]: http://contributor-covenant.org/version/1/4/
+[maintainers]: https://gitlab.gnome.org/GNOME/gnome-control-center/blob/master/docs/MAINTAINERS.md
\ No newline at end of file
diff --git a/docs/MAINTAINERS.md b/docs/MAINTAINERS.md
new file mode 100644
index 000000000..ca2a84e11
--- /dev/null
+++ b/docs/MAINTAINERS.md
@@ -0,0 +1,44 @@
+This document describes how maintainership works on GNOME Settings. It is intended to be a guideline
+for future reference.
+
+The list of current maintainers can be found at the [gnome-control-center.doap][doap] DOAP file.
+
+# General Rules
+
+The purpose of the shared maintainership model in GNOME Settings is to avoid as much as possible
+pushing unreviewed code in the main repository. Not only it is a good engineering practice, but it
+also increases the code quality and reduces the number of bugs.
+
+GNOME Settings has two types of maintainers:
+
+ * **General Maintainer**: take care of the whole codebase and of panels without a specific maintainer.
+ * **Panel Maintainer**: take care of a specific panel with a stronger authority over General
+   Maintainers.
+
+
+## For Contributors
+
+Panel Maintainers have a stronger authority over their panels than a General Maintainer. If you are
+contributing to a specific panel, and that panel has a dedicate maintainer, they should be the main
+point of contact.
+
+In the rare case of Panel Maintainers not being responsive, it is allowed to contact General
+Maintainers.
+
+## For Maintainers
+
+If you are a Panel Maintainer, your merge requests will be reviewed by General Maintainer. The
+opposite is true as well - General Maintainers contributing to a specific panel will have their
+merge requests reviewed by the Panel Maintainer of that panel.
+
+If you are a General Maintainer contributing to an unmaintained panel, or to the main codebase, your
+merge requests will be reviewed by another General Maintainer.
+
+Avoid pushing commits without an explicit review, except in the following cases:
+
+ * The commit is a translation commit
+ * The commit is trivial
+ * The commit is urgent and no reviewers were available in time
+
+
+[doap]: https://gitlab.gnome.org/GNOME/gnome-control-center/blob/master/gnome-control-center.doap
\ No newline at end of file
diff --git a/gnome-control-center.doap b/gnome-control-center.doap
index a7ca2e001..6d8f3d57e 100644
--- a/gnome-control-center.doap
+++ b/gnome-control-center.doap
@@ -13,6 +13,7 @@
   <category rdf:resource="http://api.gnome.org/doap-extensions#core"; />
   <programming-language>C</programming-language>
 
+  <!-- General -->
   <maintainer>
     <foaf:Person>
       <foaf:name>Georges Basile Stavracas Neto</foaf:name>
@@ -20,4 +21,76 @@
       <gnome:userid>gbsneto</gnome:userid>
     </foaf:Person>
   </maintainer>
+
+  <!-- General, Region & Language -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Robert Ancell</foaf:name>
+      <foaf:mbox rdf:resource="mailto:robert ancell gnome org" />
+      <gnome:userid>robert.ancell</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Bluetooth -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Bastien Nocera</foaf:name>
+      <foaf:mbox rdf:resource="mailto:hadess gnome org" />
+      <gnome:userid>hadess</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Mouse & Touchpad, Printers -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Felipe Borges</foaf:name>
+      <foaf:mbox rdf:resource="mailto:felipeborges gnome org" />
+      <gnome:userid>feborges</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Online Accounts -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Debarshi Ray</foaf:name>
+      <foaf:mbox rdf:resource="mailto:debarshir gnome org" />
+      <gnome:userid>debarshir</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Printers -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Marek Kašík</foaf:name>
+      <foaf:mbox rdf:resource="mailto:mkasik gnome org" />
+      <gnome:userid>mkasik</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Thunderbolt -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Christian Kellner</foaf:name>
+      <foaf:mbox rdf:resource="mailto:gicmo gnome org" />
+      <gnome:userid>gicmo</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- User Accounts -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Ondrej Holy</foaf:name>
+      <foaf:mbox rdf:resource="mailto:oholy gnome org" />
+      <gnome:userid>oholy</gnome:userid>
+    </foaf:Person>
+  </maintainer>
+
+  <!-- Wacom -->
+  <maintainer>
+    <foaf:Person>
+      <foaf:name>Carlos Garnacho</foaf:name>
+      <foaf:mbox rdf:resource="mailto:carlosg gnome org" />
+      <gnome:userid>carlosg</gnome:userid>
+    </foaf:Person>
+  </maintainer>
 </Project>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]