Tue, 11 Jan 2011 14:10:16 +0100 lock: use util.unlink (issue2537)
Adrian Buehlmann <adrian@cadifra.com> [Tue, 11 Jan 2011 14:10:16 +0100] rev 13281
lock: use util.unlink (issue2537)
Tue, 11 Jan 2011 14:10:16 +0100 reintroduces util.unlink, for POSIX and Windows.
Adrian Buehlmann <adrian@cadifra.com> [Tue, 11 Jan 2011 14:10:16 +0100] rev 13280
reintroduces util.unlink, for POSIX and Windows. windows: factor it out of rename posix: add alias 'unlink' for os.unlink Note that this new unlink function now has different semantics than the unlink() we had before changeset 6bf39d88c857 ("rename util.unlink to unlinkpath").
Tue, 11 Jan 2011 14:10:16 +0100 opener: check exception for ENOENT
Adrian Buehlmann <adrian@cadifra.com> [Tue, 11 Jan 2011 14:10:16 +0100] rev 13279
opener: check exception for ENOENT
Tue, 11 Jan 2011 14:10:16 +0100 windows.rename: check OSError for EEXIST
Adrian Buehlmann <adrian@cadifra.com> [Tue, 11 Jan 2011 14:10:16 +0100] rev 13278
windows.rename: check OSError for EEXIST For example, if src has been opened with Python's open(), os.rename will raise EACCES. Continuing in that case is pointless.
Tue, 18 Jan 2011 15:55:49 -0600 perf: restore lazyindex hack
Matt Mackall <mpm@selenic.com> [Tue, 18 Jan 2011 15:55:49 -0600] rev 13277
perf: restore lazyindex hack This hack (and the module it lives in) exist so that performance can be compared across different hg versions.
Tue, 18 Jan 2011 15:55:48 -0600 revlog: pass rev to _checkhash
Matt Mackall <mpm@selenic.com> [Tue, 18 Jan 2011 15:55:48 -0600] rev 13276
revlog: pass rev to _checkhash
Tue, 18 Jan 2011 15:55:46 -0600 revlog: incrementally build node cache with linear searches
Matt Mackall <mpm@selenic.com> [Tue, 18 Jan 2011 15:55:46 -0600] rev 13275
revlog: incrementally build node cache with linear searches This avoids needing to prime the cache for operations like verify which visit most or all of the index.
Fri, 07 Jan 2011 10:48:30 +0100 bundlerepo: use less intrusive util.posixfile to open bundle
Adrian Buehlmann <adrian@cadifra.com> [Fri, 07 Jan 2011 10:48:30 +0100] rev 13274
bundlerepo: use less intrusive util.posixfile to open bundle
Sat, 15 Jan 2011 23:54:01 +0100 osutil: treat open modes 'w' and 'a' as 'w+' and 'a+' in posixfile
Adrian Buehlmann <adrian@cadifra.com> [Sat, 15 Jan 2011 23:54:01 +0100] rev 13273
osutil: treat open modes 'w' and 'a' as 'w+' and 'a+' in posixfile to work around http://support.microsoft.com/kb/899149. Also, Microsoft's documentation of the CreateFile Windows API says (quote): When an application creates a file across a network, it is better to use GENERIC_READ | GENERIC_WRITE for dwDesiredAccess than to use GENERIC_WRITE alone. The resulting code is faster, because the redirector can use the cache manager and send fewer SMBs with more data. This combination also avoids an issue where writing to a file across a network can occasionally return ERROR_ACCESS_DENIED.
Tue, 04 Jan 2011 06:29:08 +0100 move tags.cache and branchheads.cache to a collected cache folder .hg/cache/
jfh <jason@jasonfharris.com> [Tue, 04 Jan 2011 06:29:08 +0100] rev 13272
move tags.cache and branchheads.cache to a collected cache folder .hg/cache/ The generation of cache files like tags.cache and branchheads.cache is not an actual reflection of things changing in the whole of the .hg directory (like eg a commit or a rebase or something) but instead these cache files are just part of bookkeeping. As such its convienant to allow various clients to ignore file events to do with these cache files which would otherwise cause a double refresh. Eg one refresh might occur after a commit, but the act of refreshing after the commit would cause Mercurial to generate a new branchheads.cache which would then cause a second refresh, for clients. However if these cache files are moved into a directory like eg .hg/cache/ then GUI clients on OSX (and possibly other platforms) can happily ignore file events in this cache directory.
Sun, 16 Jan 2011 17:26:34 +0100 addchangegroup: document the current locking semantics
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 16 Jan 2011 17:26:34 +0100] rev 13271
addchangegroup: document the current locking semantics
Sun, 16 Jan 2011 15:45:26 +0100 keyword: update documentation for kwshrink
Christian Ebert <blacktrash@gmx.net> [Sun, 16 Jan 2011 15:45:26 +0100] rev 13270
keyword: update documentation for kwshrink * remove obsolete reference to potential problems with merge and import * emphasize that running kwshrink before configuration changes which affect active/expanded keywords is mandatory
Sun, 16 Jan 2011 19:12:54 +0800 tests: remove duplication of the CGI environment variables
StevenGBrown [Sun, 16 Jan 2011 19:12:54 +0800] rev 13269
tests: remove duplication of the CGI environment variables
Sun, 16 Jan 2011 12:25:46 +0100 revlog: explicit test and explicit variable names
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 16 Jan 2011 12:25:46 +0100] rev 13268
revlog: explicit test and explicit variable names
Sun, 16 Jan 2011 12:24:48 +0100 revlog: if the nodemap is set, use the fast version of revlog.rev()
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 16 Jan 2011 12:24:48 +0100] rev 13267
revlog: if the nodemap is set, use the fast version of revlog.rev()
Sat, 15 Jan 2011 15:06:53 +0100 revlog/parseindex: construct the nodemap if it is empty
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 15 Jan 2011 15:06:53 +0100] rev 13266
revlog/parseindex: construct the nodemap if it is empty
Sat, 15 Jan 2011 13:02:19 +0100 revlog: always add the magic nullid/nullrev entry in parseindex
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 15 Jan 2011 13:02:19 +0100] rev 13265
revlog: always add the magic nullid/nullrev entry in parseindex
Sat, 15 Jan 2011 15:04:58 +0100 revlog/parseindex: no need to pass the file around
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 15 Jan 2011 15:04:58 +0100] rev 13264
revlog/parseindex: no need to pass the file around
Sat, 15 Jan 2011 12:44:28 +0100 parsers.c: fix comment
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 15 Jan 2011 12:44:28 +0100] rev 13263
parsers.c: fix comment
Sat, 15 Jan 2011 12:28:10 +0100 perf: there is no lazy index anymore
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 15 Jan 2011 12:28:10 +0100] rev 13262
perf: there is no lazy index anymore
Wed, 12 Jan 2011 13:54:39 -0600 pure: update index parsing
Matt Mackall <mpm@selenic.com> [Wed, 12 Jan 2011 13:54:39 -0600] rev 13261
pure: update index parsing
Wed, 12 Jan 2011 11:34:42 -0600 perf: fix ordering of invalidate in perfindex
Matt Mackall <mpm@selenic.com> [Wed, 12 Jan 2011 11:34:42 -0600] rev 13260
perf: fix ordering of invalidate in perfindex
Tue, 11 Jan 2011 21:52:03 -0600 revlog: do revlog node->rev mapping by scanning
Matt Mackall <mpm@selenic.com> [Tue, 11 Jan 2011 21:52:03 -0600] rev 13259
revlog: do revlog node->rev mapping by scanning Now that the nodemap is lazily created, we use linear scanning back from tip for typical node to rev mapping. Given that nodemap creation is O(n log n) and revisions searched for are usually very close to tip, this is often a significant performance win for a small number of searches. When we do end up building a nodemap for bulk lookups, the scanning function is replaced with a hash lookup.
Tue, 11 Jan 2011 17:12:32 -0600 revlog: introduce a cache for partial lookups
Matt Mackall <mpm@selenic.com> [Tue, 11 Jan 2011 17:12:32 -0600] rev 13258
revlog: introduce a cache for partial lookups Partial lookups are always O(n), and often we look up the same one multiple times.
(0) -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 +10000 +30000 tip