Bryan O'Sullivan <bryano@fb.com> [Fri, 15 Jan 2016 13:14:50 -0800] rev 27796
with: use context manager for I/O in changedfiles in patch
Bryan O'Sullivan <bryano@fb.com> [Fri, 15 Jan 2016 13:14:45 -0800] rev 27795
with: use context manager for file I/O in memusage
Bryan O'Sullivan <bryano@fb.com> [Fri, 15 Jan 2016 13:14:49 -0800] rev 27794
i18n: don't translate a transaction name
Yuya Nishihara <yuya@tcha.org> [Wed, 23 Dec 2015 22:37:24 +0900] rev 27793
chgserver: mark as a built-in extension
Yuya Nishihara <yuya@tcha.org> [Wed, 23 Dec 2015 22:23:56 +0900] rev 27792
chgserver: import background server extension from cHg
This extension is copied from
https://bitbucket.org/yuja/chg/ -r 86feb5f2e971
It could be imported as mercurial/chgserver.py, but in that case, we would
have to resolve circular import between chgserver and commandserver. So I
decided to keep it as an extension.
chgserver.chgcmdserver -> commandserver.server
commandserver._servicemap -> chgserver.chgunixservice
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 15:58:59 +0000] rev 27791
check-code: export needs a space to avoid false positives
Laurent Charignon <lcharignon@fb.com> [Thu, 14 Jan 2016 11:50:28 -0800] rev 27790
rebase: small refactoring to allow better extensibility from extensions
Inhibit, one of evolve's extension, would like to change the way rebase works
with obsolete changesets. During a rebase with inhibit, the inhibition of the
obsolescence markers should be lifted for the rebase.
With this small refactoring, inhibit and can wrap the _filterobsoleterevs
function to lift inhibition cleanly and at the same time this change makes
rebases' code more legible.
Danek Duvall <danek.duvall@oracle.com> [Thu, 14 Jan 2016 13:33:08 -0800] rev 27789
tests: non-GNU mv can't move a file onto a hardlink of itself
On Solaris, when you try to mv a file to another path that is a hardlink to
the original, it complains that they're identical. GNU mv doesn't
complain, but it's simpler to just remove the original file instead.
Mathias De Maré <mathias.demare@gmail.com> [Thu, 07 Jan 2016 06:44:37 +0100] rev 27788
buildrpm: move creation of RPM directories from dockerrpm
Handling the creation of the RPM directories in buildrpm
is more consistent and takes care of non-docker builds as well.
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Jan 2016 10:31:06 -0800] rev 27787
i18n: fix a test-gendoc.t failure
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Jan 2016 09:31:03 -0800] rev 27786
test-ctxmanager: fix Python 2.6 compatibility problem
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Jan 2016 09:31:01 -0800] rev 27785
util: rename ctxmanager's __call__ method to enter
Laurent Charignon <lc2817@columbia.edu> [Wed, 13 Jan 2016 21:52:26 -0800] rev 27784
obsolete: make _computeobsoleteset much faster
This patch makes _computeobsoleteset much faster by looping
over the draft and secrets as opposed to looping over the
successors.
This works because "number of draft and secret" is typically
way smaller(<100) than the number of successor in the repo (~90k in
my checkout of core mercurial as of today). And also because
it is very fast to compute "not public()".
I timed the code with the following setup:
"""
from mercurial import hg, ui, obsolete
ui = ui.ui()
repo = hg.repository(ui, "~/hg")
l = repo.obsstore.successors # This caches the result
"""
With about 90k successors.
k=obsolete._computeobsoleteset(repo) before this patch:
10 loops, best of 3: 33.9 ms per loop
k=obsolete._computeobsoleteset(repo) after this patch:
10000 loops, best of 3: 83.3 µs per loop
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 08:34:38 +0000] rev 27783
check-commit: sort errors by line number
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 08:50:15 +0000] rev 27782
check-commit: try to fix multiline handling
The old code did not understand the difference between the first line of the summary,
and a random line in the summary that happened to include a #, or a
random line in the changes that happened to include it.
965788d9ae09 is an example where it fails
timeless <timeless@mozdev.org> [Thu, 07 Jan 2016 01:28:59 +0000] rev 27781
check-commit: support REVs as commandline arguments
usage:
* HG_NODE=REV check-commit
* hg export REV | check-commit
* check-commit REV ...
timeless <timeless@mozdev.org> [Thu, 07 Jan 2016 00:55:45 +0000] rev 27780
check-commit: modularize
timeless <timeless@mozdev.org> [Thu, 07 Jan 2016 03:58:40 +0000] rev 27779
check-commit: fix summary length regexp
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:49:35 -0800] rev 27778
util: simplify file I/O functions using context managers
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:49:10 -0800] rev 27777
run-tests: use a context manager for file I/O in TextTestRunner
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:48:27 -0800] rev 27776
bundlerepo: use context manager for file I/O in _writetempbundle
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:47:21 -0800] rev 27775
shelve: use a context manager for file I/O in listcmd
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:31:02 -0800] rev 27774
largefiles: use util.readfile in lfconvert
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:29:57 -0800] rev 27773
run-tests: use a context manager for file I/O
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:29:34 -0800] rev 27772
largefiles: use util.readfile in overrides
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:28:43 -0800] rev 27771
commands: use a context manager for file I/O in debugdiscovery
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:28:16 -0800] rev 27770
check-seclevel: use a context manager for file I/O
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 14:27:42 -0800] rev 27769
largefiles: use a context manager in _getfile
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 16:16:19 -0800] rev 27768
util: replace file I/O with readfile
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Jan 2016 15:57:18 -0800] rev 27767
patchbomb: replace file I/O with util.readfile