Skip to content

Create GitHub team for reviewing src (C++) changes #1237

Closed

Description

@tniessen

Refs: nodejs/node#43286 (comment)
Refs: nodejs/node#43202 (comment)

We currently don't have a team that we can ping for C++ changes that don't require familiarity with a particular subsystem. Subsystem teams such as @nodejs/crypto have very few active members who frequently review C++ changes, so pinging these teams is not always helpful.

I'm proposing to create a new team under @nodejs/core, maybe @nodejs/cpp-reviewers, to address this.

To not start with an empty team, I'd like to add a small subset of active collaborators based on some git statistics, e.g., number of authored/reviewed commits that change src/* within the last year or so.

(I was going to create this in the core repo but I don't know how to bypass the templates there.)

Activity

  1. targos commented on Jun 2, 2022

    @targos
    Member

    +1

    (I was going to create this in the core repo but I don't know how to bypass the templates there.)

    https://github.com/nodejs/node/issues/new

  2. tniessen commented on Jun 9, 2022

    @tniessen
    MemberAuthor

    This has been open for more than a week with a few +1s and no objections, so I created the team as proposed.

    @nodejs/cpp-reviewers You have been added to this team because at least one of the following is true, based on the commit history from the last 365 days:

    1. You reviewed at least 5 commits, and at least 50 % of all commits that you reviewed modified files in src/.
      join -t $'\t' -1 2 -2 2 <(git log --format='format:%b' --since '1 year ago' | grep '^Reviewed-By: ' | tr -d '\r' | sort | uniq -c | awk '{ f=$1; $1=""; print f"\t"$0; }') <(git log --format='format:%b' --since '1 year ago' -- src | grep '^Reviewed-By: ' | tr -d '\r' | sort | uniq -c | awk '{ f=$1; $1=""; print f"\t"$0; }') | awk  -F'\t' 'BEGIN {OFS = FS} { r=100*$3/$2 ; if ($2 >= 5 && r > 50) { print $1 } }'
    2. You authored at least 15 commits that modified files in src/.
      git log --format='format:%aN' --since '1 year ago' -- src | sort | uniq -c | sort -nr | awk '{ if ($1 >= 15) print $0 }'
    3. You are among the 5 collaborators who reviewed the most commits that modified files in src/.
      git log --format='format:%b' --since '1 year ago' -- src | grep '^Reviewed-By: ' | tr -d '\r' | sort | uniq -c | sort -nr | head -5

    Please feel free to remove yourself from the team if you do not wish to be pinged for reviews.

    Everyone else, please feel free to add yourself to the team if you do wish to be pinged for reviews.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions