Matt Mackall
70e7477200
revlog: only allow lazy parsing with revlogng files
...
This will allow us to store indices in memory in a single entry format
2007-07-23 20:44:08 -05:00
Matt Mackall
214f50b511
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
2007-07-23 20:44:08 -05:00
Matt Mackall
3b9167f022
revlog: set the threshold for lazy parsing higher
...
A typical machine can parse a 1MB index in well under a second
2007-07-23 20:44:08 -05:00
Matt Mackall
1889aee8b0
revlog: simplify the v0 parser
2007-07-23 20:44:07 -05:00
Matt Mackall
e7ef5dc500
revlog: add revlogio interface
...
This lets us separate the logic for different on-disk revlog formats from
the main revlog logic.
2007-07-23 20:44:07 -05:00
Matt Mackall
2158f34c5f
revlog: regroup parsing code
2007-07-23 20:44:07 -05:00
Matt Mackall
3dfe783ec5
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.
2007-07-22 14:53:57 -05:00
Patrick Mezard
475f65528e
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.
2007-07-22 16:21:49 +02:00
Patrick Mezard
20a41666e1
hgk: enable mouse wheel on MouseWheel events.
...
At this point, mouse wheel still does not work under Windows.
2007-07-22 16:21:49 +02:00
Thomas Arendsen Hein
b35814d4c2
merge with crew-stable
2007-07-22 09:45:18 +02:00
Bryan O'Sullivan
a09e8936ae
addremove: print meaningful error message if --similar not numeric
2007-07-21 19:07:18 -07:00
Matt Mackall
cd72dc7f1b
Merge with crew
2007-07-21 16:44:38 -05:00
Matt Mackall
d5b7eaa69a
revlog: privatize some methods
2007-07-21 16:18:42 -05:00
Matt Mackall
0e54e000c1
revlog: delete unused function makenode
2007-07-21 16:18:24 -05:00
Matt Mackall
9eea27ad83
revlog: raise offset/type helpers to global scope
2007-07-21 16:18:21 -05:00
Matt Mackall
3a3bd8ec5b
Make repo locks recursive, eliminate all passing of lock/wlock
2007-07-21 16:02:10 -05:00
Matt Mackall
3fdaa5a42e
Use a weakref for recursive transactions
2007-07-21 16:02:10 -05:00
Matt Mackall
3e13c68628
Use try/finally pattern to cleanup locks and transactions
2007-07-21 16:02:10 -05:00
Matt Mackall
5a93a0feb4
repo locks: use True/False
2007-07-21 16:02:09 -05:00
Matt Mackall
ce5b3192db
rename and simplify do_lock
2007-07-21 16:02:09 -05:00
Matt Mackall
7cdcc1b36f
simplify dirstate fixups in repo.status()
2007-07-21 16:02:09 -05:00
Matt Mackall
450dc6247d
dirstate: add doesn't need to call stat
2007-07-21 16:02:09 -05:00
Matt Mackall
60107c9e5e
use context for part of localrepo status
2007-07-21 16:02:09 -05:00
Matt Mackall
410e8d67c6
context: add __contains__, __getitem__, and __iter__
2007-07-21 16:02:09 -05:00
Matt Mackall
81e9f172fb
dirstate: get rid of default args for status
2007-07-21 16:02:09 -05:00
Matt Mackall
43547721ea
dirstate: make filterfiles private
2007-07-21 16:02:09 -05:00
Matt Mackall
c2967290a5
dirstate: add __contains__ and make __getitem__ more useful
...
dirstate.state(f) == '?' -> f not in dirstate
dirstate.state(f) -> dirstate[f]
2007-07-21 16:02:09 -05:00
Matt Mackall
bab511ec55
dirstate: make wjoin function private
2007-07-21 16:02:09 -05:00
Matt Mackall
cf691df912
dirstate: break update into separate functions
2007-07-21 16:02:09 -05:00
Matt Mackall
1a40b796d1
dirstate: use True and false for _dirty
2007-07-21 16:02:09 -05:00
Thomas Arendsen Hein
c8973835b3
test-alias: Removed fallback to parentui, no longer needed since 681da44cf9e4
2007-07-21 17:56:30 +02:00
Thomas Arendsen Hein
a974129de3
merge with crew-stable
2007-07-21 17:37:39 +02:00
Thomas Arendsen Hein
dbdc09ab03
Make [defaults] in .hg/hgrc work.
2007-07-21 17:36:45 +02:00
Thomas Arendsen Hein
95c8d3f7f8
Remove unused pprint import and the commented line which used it before.
2007-07-21 10:43:29 +02:00
Thomas Arendsen Hein
def3b1c2ba
Use format string for lockname again (was changed by cb157328a155)
2007-07-21 10:39:42 +02:00
Thomas Arendsen Hein
4c6cff621b
Backout 5d79f5ed74d4 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.
2007-07-21 10:36:51 +02:00
Thomas Arendsen Hein
d9d3256252
removed trailing whitespace
2007-07-21 10:30:51 +02:00
Benoit Boissinot
8c722d66b2
fix bogus close spotted by pychecker (no close() in global scope)
2007-07-20 09:44:50 +02:00
Benoit Boissinot
84d45c7794
fix unused variables reported by pychecker
2007-07-20 09:31:32 +02:00
Alexis S. L. Carvalho
afb05aff16
dirstate.invalidate: avoid rebuilding _map
...
Since hasattr will call __getattr__, the call to hasattr(self, '_dirs')
will end up reparsing the dirstate file.
2007-07-19 19:43:25 -03:00
Alexis S. L. Carvalho
534a817230
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.
2007-07-19 19:43:25 -03:00
Alexis S. L. Carvalho
563893de20
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.
2007-07-19 19:43:25 -03:00
Alexis S. L. Carvalho
e0b6efcdbf
help: avoid traceback if an extension has only debug commands
2007-07-19 19:43:25 -03:00
Christian Ebert
614aa178a1
churn: get current terminal width if possible
2007-07-19 18:39:51 +02:00
Alexis S. L. Carvalho
a8e3b41c40
merge with crew-stable
2007-07-19 19:48:24 -03:00
Bryan O'Sullivan
17119bef10
convert/subversion: rehandle the no-tags case
2007-07-19 15:33:21 -07:00
Bryan O'Sullivan
a7c1cdf4bc
Print meaningful error message if os.symlink fails
2007-07-19 15:29:33 -07:00
Bryan O'Sullivan
cd2a579d50
lock.py: cache hostname, but not pid, in case we fork
2007-07-19 15:13:48 -07:00
Bryan O'Sullivan
c303898fbc
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.
2007-07-19 12:41:07 -07:00
Bryan O'Sullivan
80b07d3c8c
Automated merge with http://hg.intevation.org/mercurial/crew
2007-07-18 22:46:14 -07:00