mozext: use bookmarks.recordchange (bug 1228088); r=dminor draft
authorGregory Szorc <gps@mozilla.com>
Tue, 01 Mar 2016 13:52:38 -0800
changeset 7411 0ce7b67fdf1995b0fc64c86a8cc163b12041983a
parent 7410 1aaa9bfa0ce81b7ed125b1cf42a4db39d9ea2e84
child 7412 9dcb5c18724547f987e26c7a77995cee9c732b3e
push id675
push usergszorc@mozilla.com
push dateWed, 02 Mar 2016 22:08:21 +0000
reviewersdminor
bugs1228088
mozext: use bookmarks.recordchange (bug 1228088); r=dminor Mercurial 3.7 throws a warning when bookmarks.write() is called. Call bookmarks.recordchange() instead. This API has been around since at least Mercurial 3.3. MozReview-Commit-ID: Ab96hG8hgcQ
hgext/mozext/__init__.py
--- a/hgext/mozext/__init__.py
+++ b/hgext/mozext/__init__.py
@@ -1536,17 +1536,26 @@ def reposetup(ui, repo):
 
         def prune_relbranch_refs(self):
             todelete = [bm for bm in self._bookmarks.keys()
                         if bm.endswith('RELBRANCH')]
             for bm in todelete:
                 ui.warn('Removing bookmark %s\n' % bm)
                 del self._bookmarks[bm]
 
-            self._bookmarks.write()
+            lock = self.lock()
+            try:
+                tr = repo.transaction('prunerelbranch')
+                try:
+                    self._bookmarks.recordchange(tr)
+                    tr.close()
+                finally:
+                    tr.release()
+            finally:
+                lock.release()
 
             todelete = [ref for ref in self.remoterefs.keys()
                         if ref.endswith('RELBRANCH')]
             for ref in todelete:
                 del self.remoterefs[ref]
 
             self.remoterefs.write()