mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Provide a UI to select commits when upstreaming web-platform-tests.
This commit is contained in:
parent
e963093416
commit
bc1c545170
1 changed files with 41 additions and 0 deletions
|
@ -158,6 +158,46 @@ class LoadCommits(Step):
|
||||||
|
|
||||||
self.logger.debug("Source commits: %s" % state.source_commits)
|
self.logger.debug("Source commits: %s" % state.source_commits)
|
||||||
|
|
||||||
|
class SelectCommits(Step):
|
||||||
|
"""Provide a UI to select which commits to upstream"""
|
||||||
|
|
||||||
|
def create(self, state):
|
||||||
|
if not state.source_commits:
|
||||||
|
return
|
||||||
|
|
||||||
|
while True:
|
||||||
|
commits = state.source_commits[:]
|
||||||
|
for i, commit in enumerate(commits):
|
||||||
|
print "%i:\t%s" % (i, commit.message.summary)
|
||||||
|
|
||||||
|
remove = raw_input("Provide a space-separated list of any commits numbers to remove from the list to upstream:\n").strip()
|
||||||
|
remove_idx = set()
|
||||||
|
invalid = False
|
||||||
|
for item in remove.split(" "):
|
||||||
|
try:
|
||||||
|
item = int(item)
|
||||||
|
except:
|
||||||
|
invalid = True
|
||||||
|
break
|
||||||
|
if item < 0 or item >= len(commits):
|
||||||
|
invalid = True
|
||||||
|
break
|
||||||
|
remove_idx.add(item)
|
||||||
|
|
||||||
|
if invalid:
|
||||||
|
continue
|
||||||
|
|
||||||
|
keep_commits = [(i,cmt) for i,cmt in enumerate(commits) if i not in remove_idx]
|
||||||
|
#TODO: consider printed removed commits
|
||||||
|
print "Selected the following commits to keep:"
|
||||||
|
for i, commit in keep_commits:
|
||||||
|
print "%i:\t%s" % (i, commit.message.summary)
|
||||||
|
confirm = raw_input("Keep the above commits? y/n\n").strip().lower()
|
||||||
|
|
||||||
|
if confirm == "y":
|
||||||
|
state.source_commits = [item[1] for item in keep_commits]
|
||||||
|
break
|
||||||
|
|
||||||
class MovePatches(Step):
|
class MovePatches(Step):
|
||||||
"""Convert gecko commits into patches against upstream and commit these to the sync tree."""
|
"""Convert gecko commits into patches against upstream and commit these to the sync tree."""
|
||||||
|
|
||||||
|
@ -329,6 +369,7 @@ class SyncToUpstreamRunner(StepRunner):
|
||||||
GetLastSyncCommit,
|
GetLastSyncCommit,
|
||||||
GetBaseCommit,
|
GetBaseCommit,
|
||||||
LoadCommits,
|
LoadCommits,
|
||||||
|
SelectCommits,
|
||||||
MovePatches,
|
MovePatches,
|
||||||
RebaseCommits,
|
RebaseCommits,
|
||||||
CheckRebase,
|
CheckRebase,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue