mercurial/bookmarks.py
changeset 33005 9343fce87789
parent 32956 4f0a7f604449
child 33006 e0a8dd6c87c7
--- a/mercurial/bookmarks.py	Fri Jun 23 15:30:27 2017 -0400
+++ b/mercurial/bookmarks.py	Mon Jun 12 23:02:48 2017 -0700
@@ -691,3 +691,17 @@
                             "whitespace"))
     scmutil.checknewlabel(repo, mark, 'bookmark')
     return mark
+
+def delete(repo, tr, names):
+    """remove a mark from the bookmark store
+
+    Raises an abort error if mark does not exist.
+    """
+    marks = repo._bookmarks
+    for mark in names:
+        if mark not in marks:
+            raise error.Abort(_("bookmark '%s' does not exist") % mark)
+        if mark == repo._activebookmark:
+            deactivate(repo)
+        del marks[mark]
+    marks.recordchange(tr)