Merge pull request #57 from rafaelweingartner/updateCommittersAndPMCsList

Update committers and PMCs list
diff --git a/makewholist.py b/makewholist.py
old mode 100644
new mode 100755
index 27e4e56..0e5969f
--- a/makewholist.py
+++ b/makewholist.py
@@ -24,6 +24,7 @@
 import json
 import sys
 import urllib
+import argparse
 
 GROUPS_URL = "https://projects.apache.org/json/foundation/groups.json"
 NAMES_URL = "https://projects.apache.org/json/foundation/people_name.json"
@@ -31,6 +32,8 @@
 names = {}   # Placeholder for names parsed in getNames()
 groups = {}  # Placeholder for groups parsed in getCommittersAndPMC()
 
+reload(sys)
+sys.setdefaultencoding('utf8')
 
 def getCommittersAndPMC():
     """Get Committer and PMC info from ASF"""
@@ -52,7 +55,7 @@
         print "Error during names JSON download or parsing: %s" % ex.message
 
 
-def printWhoList():
+def printWhoList(emeritus_members=''):
     if len(names) == 0 or len(groups) == 0:
         print "Names or groups not initialized, aborting"
         sys.exit(1)
@@ -60,21 +63,35 @@
     print ("Active Project Management Committee contains "
            "(in alphabetical order of their usernames):")
 
+    print "{:.table-bordered}"
     print "| Username | Name |"
     print "|----------|------|"
     for pmc in groups['cloudstack-pmc']:
-        print "|%s|%s|" % (pmc, names[pmc])
+        if pmc not in emeritus_members.split(','):
+            print "|%s|%s|" % (pmc, names[pmc])
+
     print ""
     print ""
     print ("Active list of committers "
            "(in alphabetical order of their usernames):")
+
+    print "{:.table-bordered}"
     print "| Username | Name |"
     print "|----------|------|"
     for committer in groups['cloudstack']:
-        print "|%s|%s|" % (committer, names[committer])
+        if committer not in emeritus_members.split(','):
+            print "|%s|%s|" % (committer, names[committer])
 
 
 if __name__ == "__main__":
+    # construct the argument parse and parse the arguments
+    ap = argparse.ArgumentParser()
+    ap.add_argument("-e", "--emeritusMembers", required=False, help="Emeritus PMCs and committers usernames (comma separated values).", default='')
+
+    args = vars(ap.parse_args())
+ 
+    emeritus_members = args["emeritusMembers"]
+
     getNames()
     getCommittersAndPMC()
-    printWhoList()
+    printWhoList(emeritus_members)
diff --git a/source/who.markdown b/source/who.markdown
index a9c6b48..9a4cc42 100644
--- a/source/who.markdown
+++ b/source/who.markdown
@@ -21,7 +21,6 @@
 ## PMC
 
 Active Project Management Committee contains (in alphabetical order of their usernames):
-
 {:.table-bordered}
 | Username | Name |
 |----------|------|
@@ -32,7 +31,6 @@
 |chipchilders|Chip Childers|
 |chiradeep|Chiradeep Vittal|
 |dahn|Daan|
-|edison|Disheng Su|
 |ekho|Wilder Rodrigues|
 |erikw|Erik Weber|
 |giles|Giles Sirett|
@@ -81,57 +79,11 @@
 
 Active list of committers (in alphabetical order of their usernames)
 
+Active list of committers (in alphabetical order of their usernames):
 {:.table-bordered}
 | Username | Name |
 |----------|------|
-|ahuang|Alex Huang|
-|akarasulu|Alex Karasulu|
-|alena1108|Alena Prokharchyk|
-|animesh|Animesh|
-|boris|Boris Schrijver|
-|chipchilders|Chip Childers|
-|chiradeep|Chiradeep Vittal|
-|dahn|Daan|
-|duffy|Ian Duffy|
-|edison|Disheng Su|
-|ekho|Wilder Rodrigues|
-|erikw|Erik Weber|
-|giles|Giles Sirett|
-|gochiba|Go Chiba|
-|hogstrom|Matt Richard Hogstrom|
-|hugo|Hugo Trippaers|
-|ilya|Ilya Musayev|
-|jburwell|John Burwell|
-|jlk|John Kinsella|
-|jzb|Joe Brockmeier|
-|karenv|Karen Vuong|
-|ke4qqq|David Nalley|
-|kluge|Kevin Kluge|
-|milamber|Bruno Demion|
-|mlsorensen|Marcus Sorensen|
-|mnour|Mohammad Nour El-Din|
-|mrhinkle|Mark R. Hinkle|
-|mtutkowski|Mike Tutkowski|
-|nslater|Naomi Slater|
-|nux|Nux|
-|olamy|Olivier Lamy|
-|paul_a|Paul Angus|
-|pdion891|Pierre-Luc Dion|
-|rafael|Rafael Weingärtner|
-|rajani|Rajani Karuturi|
-|remi|Remi Bergsma|
-|resmo|Rene Moser|
-|rohit|Rohit Yadav|
-|sebgoa|Sebastien Goasguen|
-|sweller|Simon Weller|
-|swill|Will Stevens|
-|syed|Syed Ahmed|
-|tsp|Prasanna|
-|weizhou|Wei Zhou|
-|widodh|Wido den Hollander|
-|willchan|William Chan|
 |ahmad|Ahmad Emneina|
-|ahuang|Alex Huang|
 |akarasulu|Alex Karasulu|
 |alena1108|Alena Prokharchyk|
 |amoghvk|Amogh Vasekar|
@@ -154,8 +106,6 @@
 |devdeep|Devdeep Singh|
 |dkonrad|Dennis Konrad|
 |dsonstebo|Dag Sonstebo|
-|duffy|Ian Duffy|
-|edison|Disheng Su|
 |ekho|Wilder Rodrigues|
 |erikw|Erik Weber|
 |fmaximus|Frank Maximus|
@@ -208,7 +158,6 @@
 |nslater|Naomi Slater|
 |nux|Nux|
 |nvazquez|Nicolás Vázquez|
-|olamy|Olivier Lamy|
 |olgasmola|Olga Smola|
 |paul_a|Paul Angus|
 |pdion891|Pierre-Luc Dion|
@@ -252,6 +201,5 @@
 |yasker|Sheng Yang|
 |ynojima|Yoshikazu Nojima|
 
-
 ## Emeritus Committers
 Committers who are no longer active include: