From a57f441b37fbabd96f35759c22f571bf39a7c9e3 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sat, 15 Apr 2017 20:38:53 -0400 Subject: Raise clear error if module name doesn't exist. Don't raise a full backtrace. --- mesonbuild/interpreter.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'mesonbuild/interpreter.py') diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index d00338b..649b842 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1403,8 +1403,11 @@ class Interpreter(InterpreterBase): raise InvalidCode('Import takes one argument.') modname = args[0] if modname not in self.environment.coredata.modules: - module = importlib.import_module('mesonbuild.modules.' + modname).initialize() - self.environment.coredata.modules[modname] = module + try: + module = importlib.import_module('mesonbuild.modules.' + modname) + except ImportError: + raise InvalidArguments('Module "%s" does not exist' % (modname, )) + self.environment.coredata.modules[modname] = module.initialize() return ModuleHolder(modname, self.environment.coredata.modules[modname], self) @stringArgs -- cgit v1.1