import time
assert sys.version_info >= (2, 7)
+try:
+ dict.iteritems
+except AttributeError:
+ # Python 3
+ def iteritems(d):
+ return iter(d.items())
+else:
+ # Python 2
+ def iteritems(d):
+ return d.iteritems()
# It's *almost* a straightforward mapping from the monorepo to svn...
GIT_TO_SVN_DIR = {
(rev, status))
svn_dirs_to_update = set()
- for sr, files in subrepo_files.iteritems():
+ for sr, files in iteritems(subrepo_files):
svn_sr_path = GIT_TO_SVN_DIR[sr]
for f in files:
svn_dirs_to_update.update(
# Sort by length to ensure that the parent directories are passed to svn
# before child directories.
- sorted_dirs_to_update = sorted(svn_dirs_to_update,
- cmp=lambda x,y: cmp(len(x), len(y)))
+ sorted_dirs_to_update = sorted(svn_dirs_to_update, key=len)
# SVN update only in the affected directories.
svn(svn_repo, 'update', '--depth=immediates', *sorted_dirs_to_update)
- for sr, files in subrepo_files.iteritems():
+ for sr, files in iteritems(subrepo_files):
svn_sr_path = os.path.join(svn_repo, GIT_TO_SVN_DIR[sr])
if os.name == 'nt':
fix_eol_style_native(rev, svn_sr_path, files)