MCPcopy Create free account
hub / github.com/ipython/ipython / should_backport

Function should_backport

tools/backport_pr.py:126–159  ·  view source on GitHub ↗

return set of PRs marked for backport

(labels=None, milestone=None, project='ipython/ipython')

Source from the content-addressed store, hash-verified

124 return set(int(num) for num in backport_re.findall(lines))
125
126def should_backport(labels=None, milestone=None, project='ipython/ipython'):
127 """return set of PRs marked for backport"""
128 if labels is None and milestone is None:
129 raise ValueError("Specify one of labels or milestone.")
130 elif labels is not None and milestone is not None:
131 raise ValueError("Specify only one of labels or milestone.")
132 if labels is not None:
133 issues = get_issues_list(project,
134 labels=labels,
135 state='closed',
136 auth=True,
137 )
138 else:
139 milestone_id = get_milestone_id(project, milestone,
140 auth=True)
141 issues = get_issues_list(project,
142 milestone=milestone_id,
143 state='closed',
144 auth=True,
145 )
146
147 should_backport = set()
148 for issue in issues:
149 if not is_pull_request(issue):
150 continue
151 pr = get_pull_request(project, issue['number'],
152 auth=True)
153 if not pr['merged']:
154 print ("Marked PR closed without merge: %i" % pr['number'])
155 continue
156 if pr['base']['ref'] != 'master':
157 continue
158 should_backport.add(pr['number'])
159 return should_backport
160
161if __name__ == '__main__':
162 project = 'ipython/ipython'

Callers 1

backport_pr.pyFile · 0.85

Calls 5

get_issues_listFunction · 0.90
get_milestone_idFunction · 0.90
is_pull_requestFunction · 0.90
get_pull_requestFunction · 0.90
addMethod · 0.45

Tested by

no test coverage detected