Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4987
revlog: some basic code reordering
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4986
revlog: abstract out index entry packing
This lets us remove most of the remaining v0/v1 logic from revlog
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4985
revlog: simplify revlog.__init__
- move stat into io helper
- get rid of self.defversion and self.indexstat
- fold _load into __init__
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4984
revlog: mark cache private
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4983
revlog: pull chunkcache back into revlog
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4982
revlog: change _inline from a function to a variable
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4981
revlog: simplify addrevision
- remove unused defaults for p1, p2, and text
- reduce some if/else
- use better variable names
- remove some extra variables
- remove some obsolete corner tests
- simply first entry handling for revlogng
- simply inline vs outofline writeout
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4980
revlog: some codingstyle cleanups
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4979
revlog: add a magic null revision to our index
We expand our index by one entry so that index[nullrev] points to a
unique entry, the null revision. This naturally eliminates numerous
extra tests in the performance-sensitive index access functions, most
of which are now trivial again.
Adding new entries is now done with insert(-1, e) rather than
append(e).
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4978
revlog: change accesses to index entry elements to use positive offsets
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4977
revlog: parse revlogv0 indexes into v1 internally
This lets us eliminate lots of special case code in our
performance-sensitive index accessors.
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4976
revlog: only allow lazy parsing with revlogng files
This will allow us to store indices in memory in a single entry format
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4975
revlog: simplify the v1 immediate parser
- read all the data at once (large files are handled by the lazy parser)
- cache the entire file for inline revlogs
- simplify looping
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:08 -0500] rev 4974
revlog: set the threshold for lazy parsing higher
A typical machine can parse a 1MB index in well under a second
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:07 -0500] rev 4973
revlog: simplify the v0 parser
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:07 -0500] rev 4972
revlog: add revlogio interface
This lets us separate the logic for different on-disk revlog formats from
the main revlog logic.
Matt Mackall <mpm@selenic.com> [Mon, 23 Jul 2007 20:44:07 -0500] rev 4971
revlog: regroup parsing code
Matt Mackall <mpm@selenic.com> [Sun, 22 Jul 2007 14:53:57 -0500] rev 4970
transactions: avoid late tear-down (
issue641)
We use weak references (ugh) to avoid having to manually delete
transaction references out of each call frame when an exception occurs.
Patrick Mezard <pmezard@gmail.com> [Sun, 22 Jul 2007 16:21:49 +0200] rev 4969
hgk: enable mouse wheel under Windows.
For some reason, MouseWheel events are not routed under windows even in latest ActiveTcl 8.4.15 while they are under linux and macosx. These events are activated using code supplied with Tcl Tip 171: <http://www.tcl.tk/cgi-bin/tct/tip/171.html>. Strangely, the Tip code almost work but generates some unexpected infinite loop which is fixed using a simple boolean to check reentrancy.
Patrick Mezard <pmezard@gmail.com> [Sun, 22 Jul 2007 16:21:49 +0200] rev 4968
hgk: enable mouse wheel on MouseWheel events.
At this point, mouse wheel still does not work under Windows.
Thomas Arendsen Hein <thomas@intevation.de> [Sun, 22 Jul 2007 09:45:18 +0200] rev 4967
merge with crew-stable
Bryan O'Sullivan <bos@serpentine.com> [Sat, 21 Jul 2007 19:07:18 -0700] rev 4966
addremove: print meaningful error message if --similar not numeric
Matt Mackall <mpm@selenic.com> [Sat, 21 Jul 2007 16:44:38 -0500] rev 4965
Merge with crew
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 17:56:30 +0200] rev 4964
test-alias: Removed fallback to parentui, no longer needed since
10afa3fab6b4
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 17:37:39 +0200] rev 4963
merge with crew-stable
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 17:36:45 +0200] rev 4962
Make [defaults] in .hg/hgrc work.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Jul 2007 09:44:50 +0200] rev 4961
fix bogus close spotted by pychecker (no close() in global scope)
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 10:43:29 +0200] rev 4960
Remove unused pprint import and the commented line which used it before.
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 10:39:42 +0200] rev 4959
Use format string for lockname again (was changed by
3e25a6eb5c9a)
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 10:36:51 +0200] rev 4958
Backout
ad09ce1d393c and replace ''' with """ to make some highlighting happy.
I have tried Debian's default emacs and the current CVS version. Default emacs
doesn't have highlighting enabled (and being emacs-illiterate I don't know how
to enable it) and the CVS emacs' Python highlighting has no problems with '
characters here.
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 21 Jul 2007 10:30:51 +0200] rev 4957
removed trailing whitespace
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Jul 2007 09:31:32 +0200] rev 4956
fix unused variables reported by pychecker
Christian Ebert <blacktrash@gmx.net> [Thu, 19 Jul 2007 18:39:51 +0200] rev 4955
churn: get current terminal width if possible
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 19 Jul 2007 19:48:24 -0300] rev 4954
merge with crew-stable
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 19 Jul 2007 19:43:25 -0300] rev 4953
dirstate.invalidate: avoid rebuilding _map
Since hasattr will call __getattr__, the call to hasattr(self, '_dirs')
will end up reparsing the dirstate file.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 19 Jul 2007 19:43:25 -0300] rev 4952
add dirstate._dirtypl variable
Theoretically, it's possible to forget modified dirstate
parents by doing:
dirstate.invalidate()
dirstate.setparents(p1, p2)
dirstate._map
The final access to _map should call _read(), which will
unconditionally overwrite dirstate._pl.
This doesn't actually happen right now because invalidate
accidentally ends up rebuilding dirstate._map.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 19 Jul 2007 19:43:25 -0300] rev 4951
archive: delay extraction of file revisions
This allows us to look only at the filelogs we're interested in,
providing a nice speedup if we're archiving only part of a repository.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 19 Jul 2007 19:43:25 -0300] rev 4950
help: avoid traceback if an extension has only debug commands
Bryan O'Sullivan <bos@serpentine.com> [Thu, 19 Jul 2007 15:33:21 -0700] rev 4949
convert/subversion: rehandle the no-tags case
Bryan O'Sullivan <bos@serpentine.com> [Thu, 19 Jul 2007 15:29:33 -0700] rev 4948
Print meaningful error message if os.symlink fails
Bryan O'Sullivan <bos@serpentine.com> [Thu, 19 Jul 2007 15:13:48 -0700] rev 4947
lock.py: cache hostname, but not pid, in case we fork
Bryan O'Sullivan <bos@serpentine.com> [Thu, 19 Jul 2007 12:41:07 -0700] rev 4946
convert/subversion: work around memory leak in svn's python bindings
The svn.ra.get_log wrapper attaches the hash of changed paths for every
log entry to a global memory pool, so memory consumption increases
rapidly, with no way to free it.
Our workaround is to call this function in a child process, and feed
its results back over a pipe. The memory consumption of the child still
grows huge (hundreds of megabytes), but at least it goes away once the
reading-the-log phase is done.
Bryan O'Sullivan <bos@serpentine.com> [Wed, 18 Jul 2007 22:46:14 -0700] rev 4945
Automated merge with http://hg.intevation.org/mercurial/crew
Bryan O'Sullivan <bos@serpentine.com> [Wed, 18 Jul 2007 22:44:25 -0700] rev 4944
convert/subversion: Simplify callback.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 19 Jul 2007 07:28:27 +0200] rev 4943
merge with crew-stable
Bryan O'Sullivan <bos@serpentine.com> [Wed, 18 Jul 2007 14:00:55 -0700] rev 4942
Simplify update.
Bryan O'Sullivan <bos@serpentine.com> [Wed, 18 Jul 2007 13:56:08 -0700] rev 4941
Better fix for issue 622 than we had in
c4dd58af0fc8.
Bryan O'Sullivan <bos@serpentine.com> [Wed, 18 Jul 2007 19:56:36 -0700] rev 4940
convert/subversion: reduce memory usage by filtering early
This makes up to a 50% difference in memory consumption.