15
15
16
16
print ("user:" , file = sys .stderr )
17
17
user = input ()
18
- passwd = getpass .getpass ("Password or access token:\n " )
19
- auth = (user , passwd )
18
+ token = getpass .getpass ("access token:\n " )
19
+ auth = (user , token )
20
20
21
21
LOGO_URL = 'https://avatars2.githubusercontent.com/u/365630?v=4'
22
22
REPO_FOLDER = Path (path .abspath (__file__ )).parent .parent
@@ -38,13 +38,15 @@ def get(url):
38
38
39
39
def get_contributors ():
40
40
"""Get the list of contributor profiles. Require admin rights."""
41
- # get members of scikit-learn core-dev on GitHub
41
+ # get core devs and triage team
42
42
core_devs = []
43
- team = 11523
44
- for page in [1 , 2 ]: # 30 per page
45
- reply = get ("https://api.github.com/teams/%d/members?page=%d" %
46
- (team , page ))
47
- core_devs .extend (reply .json ())
43
+ triage_team = []
44
+ for team_id , lst in zip ((11523 , 3593183 ), (core_devs , triage_team )):
45
+ for page in [1 , 2 ]: # 30 per page
46
+ reply = get (
47
+ f"https://api.github.com/teams/{ team_id } /members?page={ page } "
48
+ )
49
+ lst .extend (reply .json ())
48
50
49
51
# get members of scikit-learn on GitHub
50
52
members = []
@@ -55,32 +57,31 @@ def get_contributors():
55
57
members .extend (reply .json ())
56
58
57
59
# keep only the logins
58
- core_devs = [c ['login' ] for c in core_devs ]
59
- members = [c ['login' ] for c in members ]
60
+ core_devs = set (c ['login' ] for c in core_devs )
61
+ triage_team = set (c ['login' ] for c in triage_team )
62
+ members = set (c ['login' ] for c in members )
60
63
61
64
# add missing contributors with GitHub accounts
62
- members . extend ([ 'dubourg' , 'mbrucher' , 'thouis' , 'jarrodmillman' ])
65
+ members |= { 'dubourg' , 'mbrucher' , 'thouis' , 'jarrodmillman' }
63
66
# add missing contributors without GitHub accounts
64
- members . extend ([ 'Angel Soler Gollonet' ])
67
+ members |= { 'Angel Soler Gollonet' }
65
68
# remove CI bots
66
- members .remove ('sklearn-ci' )
67
- members .remove ('sklearn-lgtm' )
68
- members .remove ('sklearn-wheels' )
69
+ members -= {'sklearn-ci' , 'sklearn-lgtm' , 'sklearn-wheels' }
70
+ triage_team -= core_devs # remove ogrisel from triage_team
69
71
70
- # remove duplicate, and get the difference of the two sets
71
- core_devs = set (core_devs )
72
- members = set (members )
73
- emeritus = members .difference (core_devs )
72
+ emeritus = members - core_devs - triage_team
74
73
75
74
# get profiles from GitHub
76
75
core_devs = [get_profile (login ) for login in core_devs ]
77
76
emeritus = [get_profile (login ) for login in emeritus ]
77
+ triage_team = [get_profile (login ) for login in triage_team ]
78
78
79
79
# sort by last name
80
80
core_devs = sorted (core_devs , key = key )
81
81
emeritus = sorted (emeritus , key = key )
82
+ triage_team = sorted (triage_team , key = key )
82
83
83
- return core_devs , emeritus
84
+ return core_devs , emeritus , triage_team
84
85
85
86
86
87
def get_profile (login ):
@@ -143,10 +144,13 @@ def generate_list(contributors):
143
144
144
145
if __name__ == "__main__" :
145
146
146
- core_devs , emeritus = get_contributors ()
147
+ core_devs , emeritus , triage_team = get_contributors ()
147
148
148
149
with open (REPO_FOLDER / "doc" / "authors.rst" , "w+" ) as rst_file :
149
150
rst_file .write (generate_table (core_devs ))
150
151
151
152
with open (REPO_FOLDER / "doc" / "authors_emeritus.rst" , "w+" ) as rst_file :
152
153
rst_file .write (generate_list (emeritus ))
154
+
155
+ with open (REPO_FOLDER / "doc" / "triage_team.rst" , "w+" ) as rst_file :
156
+ rst_file .write (generate_table (triage_team ))
0 commit comments