<div dir="ltr">"error: module importing failed: Parent module '' not loaded, cannot perform relative import"<div><br></div><div>If you omit the dot (i.e., `from foo import foo2`), it appears to work, but I'm not sure that does the right thing.  I'll keep investigating.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 5, 2016 at 3:40 PM, Zachary Turner <span dir="ltr"><<a href="mailto:zturner@google.com" target="_blank">zturner@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Without the modification to sys.path<div class="HOEnZb"><div class="h5"><br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 5, 2016 at 3:39 PM Zachary Turner <<a href="mailto:zturner@google.com" target="_blank">zturner@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Can you try to change "import foo2" to "from .foo import foo2"<br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 5, 2016 at 2:52 PM Adrian McCarthy <<a href="mailto:amccarth@google.com" target="_blank">amccarth@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I've drilled down into the Python import statement.  It's in ScriptInterpreterPython::LoadScriptingModule.  The function inserts the diretory into sys.path and then issues a vanilla Python import statement.<div><br></div><div>I spoke with one of our local Python experts who said that this technique to specify the directory is probably unreliable, as the rules for where Python looks for modules has evolved.  The rules for both relative and absolute module paths changed from Python 2 to 3.</div><div><br></div><div>I'll revert the xfail if you want.  But this has been broken for quite a while (as has another test, which I'm looking into now).</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 5, 2016 at 2:29 PM, Zachary Turner <span dir="ltr"><<a href="mailto:zturner@google.com" target="_blank">zturner@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I think we need some more information before we xfail this.  It would help to drill down to either the python import statement or the PyImport_ImportModule C api call that actually does the import.<br><br>If you can get that, i can help come up with a fix.  Just need to step through the execution of the command until you get to the python or c code that tries to do the import<div><div><br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 5, 2016 at 1:54 PM Adrian McCarthy via lldb-commits <<a href="mailto:lldb-commits@lists.llvm.org" target="_blank">lldb-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: amccarth<br>
Date: Tue Apr  5 15:49:09 2016<br>
New Revision: 265461<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=265461&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=265461&view=rev</a><br>
Log:<br>
XFail TestImport.py on Windows because Python 3 import rules don't work that way.<br>
<br>
Modified:<br>
    lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py<br>
<br>
Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py?rev=265461&r1=265460&r2=265461&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py?rev=265461&r1=265460&r2=265461&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py (original)<br>
+++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/command_script/import/TestImport.py Tue Apr  5 15:49:09 2016<br>
@@ -16,6 +16,7 @@ class ImportTestCase(TestBase):<br>
<br>
     @add_test_categories(['pyapi'])<br>
     @no_debug_info_test<br>
+    @expectedFailureAll(oslist=["windows"], bugnumber="<a href="http://llvm.org/pr27227" rel="noreferrer" target="_blank">llvm.org/pr27227</a>: Python 3 import rules are different")<br>
     def test_import_command(self):<br>
         """Import some Python scripts by path and test them"""<br>
         self.run_test()<br>
<br>
<br>
_______________________________________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@lists.llvm.org" target="_blank">lldb-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits</a><br>
</blockquote></div>
</div></div></blockquote></div><br></div>
</blockquote></div></blockquote></div>
</div></div></blockquote></div><br></div>