--- a/hgext3rd/evolve/__init__.py Tue Feb 28 14:29:36 2017 +0100
+++ b/hgext3rd/evolve/__init__.py Tue Feb 28 14:31:18 2017 +0100
@@ -950,7 +950,7 @@
except error.Abort as exc:
repo.dirstate.beginparentchange()
repo.setparents(repo['.'].node(), nullid)
- writedirstate(repo.dirstate, tr)
+ repo.dirstate.write(tr)
# fix up dirstate for copies and renames
copies.duplicatecopies(repo, dest.rev(), orig.p1().rev())
repo.dirstate.endparentchange()
@@ -978,33 +978,6 @@
repo._bookmarks.recordchange(tr)
return updatebookmarks
-### bookmarks api compatibility layer ###
-def bmdeactivate(repo):
- try:
- return bookmarksmod.deactivate(repo)
- except AttributeError:
- return bookmarksmod.unsetcurrent(repo)
-def bmactivate(repo, book):
- try:
- return bookmarksmod.activate(repo, book)
- except AttributeError:
- return bookmarksmod.setcurrent(repo, book)
-
-def bmactive(repo):
- try:
- return repo._activebookmark
- except AttributeError:
- return repo._bookmarkcurrent
-
-### dirstate compatibility layer < hg 3.6
-
-def writedirstate(dirstate, tr):
- if dirstate.write.func_code.co_argcount != 1: # mercurial 3.6 and above
- return dirstate.write(tr)
- return dirstate.write()
-
-
-
### new command
#############################
metadataopts = [
@@ -2208,7 +2181,7 @@
ui.warn(_('(do you want --no-topic)\n'))
elif len(parents) == 1:
p = parents[0]
- bm = bmactive(repo)
+ bm = repo._activebookmark
shouldmove = opts.get('move_bookmark') and bm is not None
if dryrunopt:
ui.write(('hg update %s;\n' % p.rev()))
@@ -2225,7 +2198,7 @@
repo._bookmarks[bm] = p.node()
repo._bookmarks.recordchange(tr)
else:
- bmdeactivate(repo)
+ bookmarksmod.deactivate(repo)
tr.close()
finally:
lockmod.release(tr, lock)
@@ -2282,7 +2255,7 @@
displayer = cmdutil.show_changeset(ui, repo, {'template': shorttemplate})
if len(children) == 1:
c = children[0]
- bm = bmactive(repo)
+ bm = repo._activebookmark
shouldmove = opts.get('move_bookmark') and bm is not None
if dryrunopt:
ui.write(('hg update %s;\n' % c.rev()))
@@ -2299,7 +2272,7 @@
repo._bookmarks[bm] = c.node()
repo._bookmarks.recordchange(tr)
else:
- bmdeactivate(repo)
+ bookmarksmod.deactivate(repo)
tr.close()
finally:
lockmod.release(tr, lock)
@@ -2537,21 +2510,21 @@
changedfiles.extend(dirchanges)
repo.dirstate.rebuild(newnode.node(), newnode.manifest(),
changedfiles)
- writedirstate(dirstate, tr)
+ dirstate.write(tr)
else:
- bookactive = bmactive(repo)
+ bookactive = repo._activebookmark
# Active bookmark that we don't want to delete (with -B option)
# we deactivate and move it before the update and reactivate it
# after
movebookmark = bookactive and not bookmarks
if movebookmark:
- bmdeactivate(repo)
+ bookmarksmod.deactivate(repo)
repo._bookmarks[bookactive] = newnode.node()
repo._bookmarks.recordchange(tr)
commands.update(ui, repo, newnode.rev())
ui.status(_('working directory now at %s\n') % newnode)
if movebookmark:
- bmactivate(repo, bookactive)
+ bookmarksmod.activate(repo, bookactive)
# update bookmarks
if bookmarks:
@@ -2876,10 +2849,10 @@
raise error.Abort(_("cannot split merge commits"))
prev = ctx.p1()
bmupdate = _bookmarksupdater(repo, ctx.node(), tr)
- bookactive = bmactive(repo)
+ bookactive = repo._activebookmark
if bookactive is not None:
- repo.ui.status(_("(leaving bookmark %s)\n") % bmactive(repo))
- bmdeactivate(repo)
+ repo.ui.status(_("(leaving bookmark %s)\n") % repo._activebookmark)
+ bookmarksmod.deactivate(repo)
hg.update(repo, prev)
commands.revert(ui, repo, rev=r, all=True)
@@ -2910,7 +2883,7 @@
tip = repo[newcommits[-1]]
bmupdate(tip.node())
if bookactive is not None:
- bmactivate(repo, bookactive)
+ bookmarksmod.activate(repo, bookactive)
obsolete.createmarkers(repo, [(repo[r], newcommits)])
tr.close()
finally:
@@ -4107,9 +4080,9 @@
dest,
branchmerge=False,
force=True)
- if bmactive(repo):
- repo.ui.status(_("(leaving bookmark %s)\n") % bmactive(repo))
- bmdeactivate(repo)
+ if repo._activebookmark:
+ repo.ui.status(_("(leaving bookmark %s)\n") % repo._activebookmark)
+ bookmarksmod.deactivate(repo)
if keepbranch:
repo.dirstate.setbranch(orig.branch())
if util.safehasattr(repo, 'currenttopic'):