all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Felix Lechner via "Development of GNU Guix and the GNU System distribution." <guix-devel@gnu.org>
To: Christopher Baines <mail@cbaines.net>
Cc: guix-devel@gnu.org
Subject: Re: Process for reviewing patches as someone without commit access
Date: Wed, 6 Sep 2023 11:17:13 -0700	[thread overview]
Message-ID: <CAFHYt550JJPjwoVhbmw35Gh8i9E66X1YNh5TR1_-+7T2=o0Sig@mail.gmail.com> (raw)
In-Reply-To: <87o7ifb66o.fsf@cbaines.net>

Hi Chris,

On Wed, Sep 6, 2023 at 9:47 AM Christopher Baines <mail@cbaines.net> wrote:
>
> Maybe we can use debbugs tags for this?

Instead of pushing people into reviews and then again making the same
committers a bottleneck, I would offer some entry-level contributors
commit rights but require that they obtain approval for some steps. It
can be done on a trust basis.

That way, you can train a new generation of committers while getting
the work done.

Advancing to a higher level requires a majority approval of the
maintainer collective. Same for revocations.

*** Contributor levels ***

1. Add new packages or fix documentation. This simple activity focuses
on fitness of software for Guix, including licensing. Finding a good
place in the file tree is also part of this job. Sign off required.

Novice levels, all require review by someone with a higher level

2. Update existing packages. Here, a contributor must be aware of how
updates affect consuming packages. Ideally, this activity would
include knowledge of CI, including the pre-compilation of all
consumers in order to avoid build failures before the change is
committed. No new inputs or phases. Hash updates only.
3. Modify inputs and build phases. Requires the mastery of
G-Expressions and a detailed knowledge of the particular build system
involved.
4. Rename package variables or change inheritance. This is for experts
in tool chains like Golang, or a technology like Emacs.

Intermediate levels:

5. Add new services
6. Edit existing services (after review)
7. Change Guix records outside of services, for example for
operating-system (after review).
https://lepiller.eu/en/a-deep-dive-into-guix-records.html

Advanced levels

8. Modify command-line behavior of the Guix executable (after review)
9. Change the Guix daemon (after review)

Black belt

10. No restrictions, and no reviews or approvals needed.

Kind regards
Felix


  reply	other threads:[~2023-09-06 18:18 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-06 15:55 Process for reviewing patches as someone without commit access Christopher Baines
2023-09-06 18:17 ` Felix Lechner via Development of GNU Guix and the GNU System distribution. [this message]
2023-09-06 18:19   ` Christopher Baines
2023-09-06 19:01     ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2023-09-06 23:37       ` Simon Tournier
2023-09-06 23:59 ` Simon Tournier
2023-09-07  2:47   ` Maxim Cournoyer
2023-09-07  9:55     ` Simon Tournier
2023-09-07 16:19     ` Vagrant Cascadian
2023-09-07 19:05       ` Simon Tournier
2023-09-27 11:58 ` Christopher Baines
2023-10-04 15:46   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFHYt550JJPjwoVhbmw35Gh8i9E66X1YNh5TR1_-+7T2=o0Sig@mail.gmail.com' \
    --to=guix-devel@gnu.org \
    --cc=felix.lechner@lease-up.com \
    --cc=mail@cbaines.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.