##// END OF EJS Templates
merge: use separate lists for each action type...
merge: use separate lists for each action type This replaces the grand unified action list that had multiple action types as tuples in one big list. That list was iterated multiple times just to find actions of a specific type. This data model also made some code more convoluted than necessary. Instead we now store actions as a tuple of lists. Using multiple lists gives a bit of cut'n'pasted code but also enables other optimizations. This patch uses 'if True:' to preserve indentations and help reviewing. It also limits the number of conflicts with other pending patches. It can trivially be cleaned up later.

File last commit:

r6365:1d3eb332 default
r21545:43eecb4e default
Show More
convert-repo
27 lines | 643 B | text/plain | TextLexer
Edouard Gomez
Add a wrapper script for convert extension
r4514 #!/usr/bin/env python
#
# Wrapper script around the convert.py hgext extension
# for foreign SCM conversion to mercurial format.
#
import sys
from mercurial import ui, fancyopts
from hgext import convert
# Options extracted from the cmdtable
func, options, help = convert.cmdtable['convert']
# An ui instance
u = ui.ui()
opts = {}
args = []
try:
Patrick Mezard
convertrepo: make it work with refactored convert extension
r6365 args = list(fancyopts.fancyopts(sys.argv[1:], options, opts))
args += [None]*(3 - len(args))
src, dest, revmapfile = args
except (fancyopts.getopt.GetoptError, ValueError), inst:
u.warn('Usage:\n%s\n' % help)
Edouard Gomez
Add a wrapper script for convert extension
r4514 sys.exit(-1)
Patrick Mezard
convertrepo: make it work with refactored convert extension
r6365 convert.convert(u, src, dest, revmapfile, **opts)