def fill_modules(): del pymodules[:] del badmodules[:] del datatools[:] all_modules.clear() svn_revisions.clear() def add_module(mod, check_svn): try: m = __import__(mod, globals(), locals(), ['__all__'], 0) cp_module = find_cpmodule(m) name = cp_module.module_name except Exception as e: logger.warning("Could not load %s", mod, exc_info=True) badmodules.append((mod, e)) return try: pymodules.append(m) if name in all_modules: logger.warning( "Multiple definitions of module %s\n\told in %s\n\tnew in %s", name, sys.modules[all_modules[name].__module__].__file__, m.__file__) all_modules[name] = cp_module check_module(cp_module, name) # attempt to instantiate if not hasattr(cp_module, 'do_not_check'): cp_module() if hasattr(cp_module, "run_as_data_tool"): datatools.append(name) if check_svn and hasattr(m, '__version__'): match = re.match('^\$Revision: ([0-9]+) \$$', m.__version__) if match is not None: svn_revisions[name] = match.groups()[0] if not hasattr(all_modules[name], "settings"): # No settings = pure data tool pure_datatools[name] = all_modules[name] del all_modules[name] except Exception as e: logger.warning("Failed to load %s", name, exc_info=True) badmodules.append((mod, e)) if name in all_modules: del all_modules[name] del pymodules[-1] for mod in builtin_modules: add_module('cellprofiler.modules.' + mod, True) plugin_directory = get_plugin_directory() if plugin_directory is not None: old_path = sys.path sys.path.insert(0, plugin_directory) try: for mod in plugin_list(): add_module(mod, False) finally: sys.path = old_path datatools.sort() if len(badmodules) > 0: logger.warning("could not load these modules: %s", ",".join([x[0] for x in badmodules]))
def fill_modules(): del pymodules[:] del badmodules[:] del datatools[:] all_modules.clear() svn_revisions.clear() def add_module(mod, check_svn): try: m = __import__(mod, globals(), locals(), ['__all__'], 0) cp_module = find_cpmodule(m) name = cp_module.module_name except Exception as e: logger.warning("Could not load %s", mod, exc_info=True) badmodules.append((mod, e)) return try: pymodules.append(m) if name in all_modules: logger.warning( "Multiple definitions of module %s\n\told in %s\n\tnew in %s", name, sys.modules[all_modules[name].__module__].__file__, m.__file__) all_modules[name] = cp_module check_module(cp_module, name) # attempt to instantiate if not hasattr(cp_module, 'do_not_check'): cp_module() if hasattr(cp_module, "run_as_data_tool"): datatools.append(name) if check_svn and hasattr(m, '__version__'): match = re.match('^\$Revision: ([0-9]+) \$$', m.__version__) if match is not None: svn_revisions[name] = match.groups()[0] if not hasattr(all_modules[name], "settings"): # No settings = pure data tool pure_datatools[name] = all_modules[name] del all_modules[name] except Exception as e: logger.warning("Failed to load %s", name, exc_info=True) badmodules.append((mod, e)) if name in all_modules: del all_modules[name] del pymodules[-1] for mod in builtin_modules: add_module('cellprofiler.modules.' + mod, True) plugin_directory = get_plugin_directory() if plugin_directory is not None: old_path = sys.path sys.path.insert(0, plugin_directory) try: for mod in plugin_list(): add_module(mod, False) finally: sys.path = old_path datatools.sort() if len(badmodules) > 0: logger.warning("could not load these modules: %s", ",".join([x[0] for x in badmodules]))
except Exception, e: logger.warning("Failed to load %s", name, exc_info=True) badmodules.append((mod, e)) if name in all_modules: del all_modules[name] del pymodules[-1] for mod in builtin_modules: add_module('cellprofiler.modules.' + mod, True) plugin_directory = get_plugin_directory() if plugin_directory is not None: old_path = sys.path sys.path.insert(0, plugin_directory) try: for mod in plugin_list(): add_module(mod, False) finally: sys.path = old_path datatools.sort() if len(badmodules) > 0: logger.warning("could not load these modules: %s", ",".join([x[0] for x in badmodules])) def add_module_for_tst(module_class): all_modules[module_class.module_name] = module_class fill_modules()
except Exception, e: logger.warning("Failed to load %s", name, exc_info=True) badmodules.append((mod, e)) if name in all_modules: del all_modules[name] del pymodules[-1] for mod in builtin_modules: add_module("cellprofiler.modules." + mod, True) plugin_directory = get_plugin_directory() if plugin_directory is not None: old_path = sys.path sys.path.insert(0, plugin_directory) try: for mod in plugin_list(): add_module(mod, False) finally: sys.path = old_path datatools.sort() if len(badmodules) > 0: logger.warning("could not load these modules: %s", ",".join([x[0] for x in badmodules])) def add_module_for_tst(module_class): all_modules[module_class.module_name] = module_class fill_modules()