From ec54cda5aae89144345adb1545239af7c55fd470 Mon Sep 17 00:00:00 2001 From: Adrien Di Mascio Date: Tue, 4 Aug 2009 18:36:34 +0200 Subject: [modutils] new cleanup_sys_modules function (backported from yams) --- modutils.py | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modutils.py') diff --git a/modutils.py b/modutils.py index 5755a4f..837d2b0 100644 --- a/modutils.py +++ b/modutils.py @@ -444,6 +444,16 @@ def get_source_file(filename, include_no_ext=False): raise NoSourceFile(filename) +def cleanup_sys_modules(directories): + """remove submodules of `directories` from `sys.modules`""" + for modname, module in sys.modules.items(): + modfile = getattr(module, '__file__', None) + if modfile: + for directory in directories: + if modfile.startswith(directory): + del sys.modules[modname] + break + def is_python_source(filename): """ -- cgit v1.2.1