diff --git a/conans/client/conanfile/configure.py b/conans/client/conanfile/configure.py index ae6a6962fce..c02ecef911b 100644 --- a/conans/client/conanfile/configure.py +++ b/conans/client/conanfile/configure.py @@ -41,4 +41,5 @@ def run_configure_method(conanfile, down_options, down_ref, ref): # Once the node is configured call the layout() if hasattr(conanfile, "layout"): - conanfile.layout() + with conanfile_exception_formatter(str(conanfile), "layout"): + conanfile.layout() diff --git a/conans/test/integration/conanfile/test_exception_printing.py b/conans/test/integration/conanfile/test_exception_printing.py index bfcb9cb5df5..dc8982afbe0 100644 --- a/conans/test/integration/conanfile/test_exception_printing.py +++ b/conans/test/integration/conanfile/test_exception_printing.py @@ -31,7 +31,8 @@ def test_all_methods(direct): else: throw = "self._aux_method()" for method in ["source", "build", "package", "package_info", "configure", "build_id", - "package_id", "requirements", "config_options"]: + "package_id", "requirements", "config_options", "layout", "generate", "export", + "export_sources"]: client.save({CONANFILE: conanfile.format(method=method, method_contents=throw)}) client.run("create . ", assert_error=True) assert "exceptions/0.1: Error in %s() method, line 12" % method in client.out