##// END OF EJS Templates
destutil: add the ability to specify a search space for rebase destination...
destutil: add the ability to specify a search space for rebase destination In the 'hg pull --rebase', we don't want to pick a rebase destination unrelated to the pull, we lay down basic infrastructure to allow such restriction on stable (before 3.8 release) in this case. See issue 5214 for details. Actual usage and test will be in the next patch.

File last commit:

r28510:ade330de default
r29043:cf7de4ae stable
Show More
memory.py
32 lines | 1.0 KiB | text/x-python | PythonLexer
# memory.py - track memory usage
#
# Copyright 2009 Matt Mackall <mpm@selenic.com> and others
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
'''helper extension to measure memory usage
Reads current and peak memory usage from ``/proc/self/status`` and
prints it to ``stderr`` on exit.
'''
from __future__ import absolute_import
import atexit
def memusage(ui):
"""Report memory usage of the current process."""
result = {'peak': 0, 'rss': 0}
with open('/proc/self/status', 'r') as status:
# This will only work on systems with a /proc file system
# (like Linux).
for line in status:
parts = line.split()
key = parts[0][2:-1].lower()
if key in result:
result[key] = int(parts[1])
ui.write_err(", ".join(["%s: %.1f MiB" % (key, value / 1024.0)
for key, value in result.iteritems()]) + "\n")
def extsetup(ui):
atexit.register(memusage, ui)