Bryan O'Sullivan <bos@serpentine.com> [Fri, 12 Aug 2005 10:17:12 -0800] rev 878
Merge patchbomb script.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 12 Aug 2005 08:04:31 -0800] rev 877
Polish patchbomb script.
diffstat output is now a non-default option.
The hgrc file can now contain default information for the patchbomb
script.
Date generation is fixed.
Bryan O'Sullivan <bos@serpentine.com> [Tue, 09 Aug 2005 20:53:50 -0800] rev 876
Get patchbomb script to not use MIME attachments.
Adding patches as attachments makes it difficult or impossible for some
mail clients to quote them effectively.
Bryan O'Sullivan <bos@serpentine.com> [Tue, 09 Aug 2005 20:18:58 -0800] rev 875
Add patchbomb script.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 12 Aug 2005 09:58:35 -0800] rev 874
Merge Chris's changes with mine.
mason@suse.com [Fri, 12 Aug 2005 09:57:59 -0800] rev 873
addremove was not correctly finding removed files when given
a list of files to look at. These end up with a src of 'f' from
walk() but no longer exist on the filesystem.
Index: mine/mercurial/commands.py
===================================================================
mason@suse.com [Fri, 12 Aug 2005 09:57:56 -0800] rev 872
dirstate walking optimizations
The repo walking code introduces a number of calls to dirstate.map.copy(),
significantly slowing down the walk on large trees. When a list of
files is passed to the walking code, we should only look at map entries
relevant to the file list passed in.
dirstate.filterfiles() is added to return a subset of the dirstate map.
The subset includes in files passed in, and if one of the files requested
is actually a directory, it includes any files inside that directory tree.
This brings the time for hg diff Makefile down from 1.7s to .3s on
a linux kernel repo.
Also, the diff command was unconditionally calling makewalk, leading
to an extra pass through repo.changes. This patch avoids the call
to makewalk when commands.diff isn't given a list of patterns, cutting
the time for hg diff (with no args) in half.
Index: mine/mercurial/hg.py
===================================================================
Bryan O'Sullivan <bos@serpentine.com> [Tue, 09 Aug 2005 17:24:38 -0800] rev 871
Merge with mpm.
Bryan O'Sullivan <bos@serpentine.com> [Sun, 07 Aug 2005 12:43:11 -0800] rev 870
Teach walk code about absolute paths.
The first consequence of this is that absolute and relative paths now
all work in the same way. The second is that paths that lie outside
the repository now cause an error to be reported, instead of something
arbitrary and expensive being done.
Internally, all of the serious work is in the util package. The new
canonpath function takes an arbitrary path and either returns a
canonical path or raises an error. Because it needs to know where the
repository root is, it must be fed a repository or dirstate object, which
has given commands.matchpats and friends a new parameter to pass along.
The util.matcher function uses this to canonicalise globs and relative
path names.
Meanwhile, I've moved the Abort exception from commands to util, and
killed off the redundant util.CommandError exception.
Bryan O'Sullivan <bos@serpentine.com> [Sun, 07 Aug 2005 11:09:21 -0800] rev 869
Kill dead function.