You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ap...@apache.org on 2021/12/14 13:14:47 UTC
[arrow-site] branch master updated: check for duplicates and update committers (#172)
This is an automated email from the ASF dual-hosted git repository.
apitrou pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-site.git
The following commit(s) were added to refs/heads/master by this push:
new 5213061 check for duplicates and update committers (#172)
5213061 is described below
commit 5213061b58bedbf6169b55f0d821bc4d928aae07
Author: Benson Muite <bk...@users.noreply.github.com>
AuthorDate: Tue Dec 14 16:14:42 2021 +0300
check for duplicates and update committers (#172)
Co-authored-by: Antoine Pitrou <pi...@free.fr>
---
_data/committers.yml | 115 ++++++++++++++++++++++++++------------------
scripts/check_committers.py | 22 +++++++--
2 files changed, 86 insertions(+), 51 deletions(-)
diff --git a/_data/committers.yml b/_data/committers.yml
index 33daca4..00f6536 100644
--- a/_data/committers.yml
+++ b/_data/committers.yml
@@ -25,7 +25,7 @@
- name: Wes McKinney
role: VP
alias: wesm
- affiliation: Ursa Computing
+ affiliation: Voltron Data
- name: Abdelhakim Deneche
role: PMC
@@ -46,7 +46,15 @@
- name: Antoine Pitrou
role: PMC
alias: apitrou
- affiliation: Independent / Ursa Computing
+ affiliation: Voltron Data
+- name: Ben Kietzman
+ role: PMC
+ alias: bkietz
+ affiliation: Voltron Data
+- name: David Li
+ role: PMC
+ alias: lidavidm
+ affiliation: Voltron Data
- name: François Saint-Jacques
role: PMC
alias: fsaintjacques
@@ -75,6 +83,10 @@
role: PMC
alias: jorgecarleitao
affiliation: Munin Data ApS
+- name: Joris van den Bossche
+ role: PMC
+ alias: jorisvandenbossche
+ affiliation: Voltron Data
- name: Julian Hyde
role: PMC
alias: jhyde
@@ -90,7 +102,7 @@
- name: Krisztián Szűcs
role: PMC
alias: kszucs
- affiliation: Ursa Computing
+ affiliation: Voltron Data
- name: Marcel Kornacker
role: PMC
alias: marcel
@@ -99,10 +111,18 @@
role: PMC
alias: emkornfield
affiliation: Google
+- name: Michael Stack
+ role: PMC
+ alias: stack
+ affiliation: Cloudera
- name: Neal Richardson
role: PMC
alias: npr
- affiliation: Ursa Computing
+ affiliation: Voltron Data
+- name: Neville Dipale
+ role: PMC
+ alias: nevime
+ affiliation: commutenav
- name: P. Taylor Goetz
role: PMC
alias: ptgoetz
@@ -139,14 +159,15 @@
role: PMC
alias: tdunning
affiliation: MapR
+- name: Todd Lipcon
+ role: PMC
+ alias: todd
+ affiliation: Google
- name: Uwe L. Korn
role: PMC
alias: uwe
affiliation: Quantco
-- name: Ben Kietzman
- role: PMC
- alias: bkietz
- affiliation: Ursa Computing
+
- name: Brian Hulette
role: Committer
alias: bhulette
@@ -167,14 +188,22 @@
role: Committer
alias: dralves
affiliation: CortexXus
-- name: David Li
- role: PMC
- alias: lidavidm
- affiliation: Ursa Computing
+- name: Deepak Majeti
+ role: Committer
+ alias: mdeepak
+ affiliation: Ahana
+- name: Dominik Moritz
+ role: Committer
+ alias: domoritz
+ affiliation: Carnegie Mellon University
- name: Eric Erhardt
role: Committer
alias: eerhardt
affiliation: Microsoft
+- name: Ian Cook
+ role: Committer
+ alias: ianmcook
+ affiliation: Voltron Data
- name: Ippokratis Pandis
role: Committer
alias: ippokratis
@@ -183,10 +212,14 @@
role: Committer
alias: tianchen
affiliation: Alibaba
-- name: Joris van den Bossche
+- name: Jiayu Liu
role: Committer
- alias: jorisvandenbossche
- affiliation: Ursa Computing
+ alias: jiayuliu
+ affiliation: Airbnb Inc.
+- name: Jonathan Keane
+ role: Committer
+ alias: jonkeane
+ affiliation: Voltron Data
- name: Kazuaki Ishizaki
role: Committer
alias: kiszk
@@ -203,10 +236,14 @@
role: Committer
alias: liyafan
affiliation: Alibaba
-- name: Neville Dipale
+- name: Matthew Topol
role: Committer
- alias: nevime
- affiliation: commutenav
+ alias: zeroshade
+ affiliation: FactSet Research Systems, Inc.
+- name: Nic Crane
+ role: Committer
+ alias: thisisnic
+ affiliation: Voltron Data
- name: Paddy Horan
role: Committer
alias: paddyhoran
@@ -221,8 +258,16 @@
affiliation: Dremio
- name: Ravindra Pindikura
role: Committer
- alias: ravindrap
+ alias: ravindra
affiliation: Dremio
+- name: Rémi Dattai
+ role: Committer
+ alias: rdettai
+ affiliation: Cloudfuse
+- name: Qingping Hou
+ role: Committer
+ alias: houqp
+ affiliation: Scribd, Inc.
- name: Robert Nishihara
role: Committer
alias: robertnishihara
@@ -231,6 +276,10 @@
role: Committer
alias: romainfrancois
affiliation: RStudio
+- name: Weston Pace
+ role: Committer
+ alias: westonpace
+ affiliation: Voltron Data
- name: Yibo Cai
role: Committer
alias: yibocai
@@ -239,31 +288,3 @@
role: Committer
alias: shiro
affiliation: Red Data Tools
-- name: Ian Cook
- role: Committer
- alias: ianmcook
- affiliation: Ursa Computing
-- name: Jonathan Keane
- role: Committer
- alias: jonkeane
- affiliation: Ursa Computing
-- name: Weston Pace
- role: Committer
- alias: westonpace
- affiliation: Ursa Computing
-- name: Dominik Moritz
- role: Committer
- alias: domoritz
- affiliation: Carnegie Mellon University
-- name: Matthew Topol
- role: Committer
- alias: zeroshade
- affiliation: FactSet Research Systems, Inc.
-- name: Qingping Hou
- role: Committer
- alias: houqp
- affiliation: Scribd, Inc.
-- name: Jiayu Liu
- role: Committer
- alias: jiayuliu
- affiliation: Airbnb Inc.
diff --git a/scripts/check_committers.py b/scripts/check_committers.py
index 8b66a0d..e48ebb4 100755
--- a/scripts/check_committers.py
+++ b/scripts/check_committers.py
@@ -22,7 +22,7 @@
# the Governance page is up-to-date with the authoritative ASF roster.
#
-from collections import namedtuple
+from collections import namedtuple, Counter
import json
import os
import sys
@@ -32,7 +32,6 @@ import yaml
git_root = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
-
committers_yaml = os.path.join(git_root, "_data", "committers.yml")
# See https://home.apache.org/phonebook-about.html
@@ -41,7 +40,6 @@ committers_url = "https://whimsy.apache.org/public/public_ldap_projects.json"
Roster = namedtuple('Roster', ('committers', 'pmcs'))
-
def get_asf_roster():
r = requests.get(committers_url)
j = r.json()
@@ -50,6 +48,18 @@ def get_asf_roster():
committers = set(proj['members']) - pmcs
return Roster(committers, pmcs)
+def get_duplicates():
+ with open(committers_yaml, "r") as f:
+ d = yaml.safe_load(f)
+ aliases = []
+ duplicates = set()
+ for member in d:
+ aliases.append(member['alias'])
+ alias_counts = Counter(aliases)
+ for alias in alias_counts:
+ if alias_counts[alias] > 1:
+ duplicates.add(alias)
+ return duplicates
def get_local_roster():
with open(committers_yaml, "r") as f:
@@ -67,8 +77,11 @@ def get_local_roster():
raise ValueError(f"Invalid role {role!r} for {uid}")
return Roster(committers, pmcs)
-
if __name__ == "__main__":
+ duplicate_members = get_duplicates()
+ if duplicate_members:
+ print("Duplicate members in local list:", sorted(duplicate_members))
+ sys.exit(1)
local_roster = get_local_roster()
asf_roster = get_asf_roster()
if local_roster == asf_roster:
@@ -76,6 +89,7 @@ if __name__ == "__main__":
sys.exit(0)
missing_pmcs = asf_roster.pmcs - local_roster.pmcs
+
if missing_pmcs:
print("Missing PMCs in local list:", sorted(missing_pmcs))
missing_committers = asf_roster.committers - local_roster.committers