##// END OF EJS Templates
localrepo: strip now incrementally updates the branchheads cache...
localrepo: strip now incrementally updates the branchheads cache Destroying history via strip used to invalidate the branchheads cache, causing it to be regenerated the next time it is read. This is expensive in large repos. This change converts strip to pass info to localrepo.destroyed() to enable to it to incrementally update the cache, improving the performance of strip and other operations that depend on it (e.g., rebase). This change also strengthens a bit the integrity checking of the branchheads cache when it is read, by rejecting the cache if it has nodes in it that no longer exist.

File last commit:

r14614:afccc64e default
r16716:0311a6ab default
Show More
test-ui-color.py
33 lines | 891 B | text/x-python | PythonLexer
Idan Kamara
color: check if ui is already a subclass of colorui before wrapping it...
r14516 import os, sys
Brodie Rao
color: call correct superclass method in write_err...
r11732 from hgext import color
Idan Kamara
color: check if ui is already a subclass of colorui before wrapping it...
r14516 from mercurial import dispatch, ui
Brodie Rao
color: call correct superclass method in write_err...
r11732
# ensure errors aren't buffered
testui = color.colorui()
testui.pushbuffer()
testui.write('buffered\n')
testui.warn('warning\n')
testui.write_err('error\n')
print repr(testui.popbuffer())
Idan Kamara
color: check if ui is already a subclass of colorui before wrapping it...
r14516
# test dispatch.dispatch with the same ui object
hgrc = open(os.environ["HGRCPATH"], 'w')
hgrc.write('[extensions]\n')
hgrc.write('color=\n')
hgrc.close()
ui_ = ui.ui()
ui_.setconfig('ui', 'formatted', 'True')
Idan Kamara
ui: use I/O descriptors internally...
r14614 # we're not interested in the output, so write that to devnull
ui_.fout = open(os.devnull, 'w')
Idan Kamara
color: check if ui is already a subclass of colorui before wrapping it...
r14516 # call some arbitrary command just so we go through
# color's wrapped _runcommand twice.
def runcmd():
dispatch.dispatch(dispatch.request(['version', '-q'], ui_))
runcmd()
print "colored? " + str(issubclass(ui_.__class__, color.colorui))
runcmd()
print "colored? " + str(issubclass(ui_.__class__, color.colorui))