##// END OF EJS Templates
context: clarify that only one attempt is made to interpret changeid...
context: clarify that only one attempt is made to interpret changeid We can now tell what type of revision specifier we have just by looking at it (we no longer attempt to interpret it in one way after the other -- that's now in scmutil.revsymbol()). Let's clarify this in the code by swithing to if/elif. Differential Revision: https://phab.mercurial-scm.org/D3451

File last commit:

r31958:de5c9d0e default
r37873:bb8e93b3 default
Show More
memory.py
31 lines | 1023 B | text/x-python | PythonLexer
Martin Geisler
contrib: helper extension to track memory usage
r10017 # 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
Matt Mackall
Merge with stable
r10264 # GNU General Public License version 2 or any later version.
Martin Geisler
contrib: helper extension to track memory usage
r10017
'''helper extension to measure memory usage
Reads current and peak memory usage from ``/proc/self/status`` and
prints it to ``stderr`` on exit.
'''
Pulkit Goyal
contrib: make memory.py use absolute_import
r28510 from __future__ import absolute_import
Martin Geisler
contrib: helper extension to track memory usage
r10017
def memusage(ui):
"""Report memory usage of the current process."""
result = {'peak': 0, 'rss': 0}
Bryan O'Sullivan
with: use context manager for file I/O in memusage
r27795 with open('/proc/self/status', 'r') as status:
Martin Geisler
contrib: helper extension to track memory usage
r10017 # 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])
Augie Fackler
memory: avoid shadowing variables inside a list comprehension
r30386 ui.write_err(", ".join(["%s: %.1f MiB" % (k, v / 1024.0)
for k, v in result.iteritems()]) + "\n")
Martin Geisler
contrib: helper extension to track memory usage
r10017
def extsetup(ui):
Bryan O'Sullivan
atexit: switch to home-grown implementation
r31958 ui.atexit(memusage, ui)