]> granicus.if.org Git - python/commitdiff
Sjoerd Mullender:
authorGuido van Rossum <guido@python.org>
Tue, 15 Dec 1998 15:35:23 +0000 (15:35 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 15 Dec 1998 15:35:23 +0000 (15:35 +0000)
When printing missing modules, also print the module they were
imported from.

Tools/freeze/hello.py
Tools/freeze/modulefinder.py

index f978acc883c5da1fce3c3837e643ad84801f3bb2..31d84457ddb6f1e1d9a1621ef8ad6732f22232db 100644 (file)
@@ -1 +1,2 @@
 print 'Hello world...'
+import fooblurg
index e406c6aeec62dc2cf9dc44ed7c9a6e3229caed2f..5c05c3a26e286f1aa20e083299dd3f71b4f0c831 100644 (file)
@@ -220,6 +220,7 @@ class ModuleFinder:
             return m
         if self.badmodules.has_key(fqname):
             self.msgout(3, "import_module -> None")
+            self.badmodules[fqname][parent.__name__] = None
             return None
         try:
             fp, pathname, stuff = self.find_module(partname,
@@ -279,7 +280,7 @@ class ModuleFinder:
                         self.import_hook(name, m)
                     except ImportError, msg:
                         self.msg(2, "ImportError:", str(msg))
-                        self.badmodules[name] = None
+                        self.badmodules[name] = {m.__name__:None}
             elif op == IMPORT_FROM:
                 name = co.co_names[oparg]
                 assert lastname is not None
@@ -289,7 +290,7 @@ class ModuleFinder:
                     except ImportError, msg:
                         self.msg(2, "ImportError:", str(msg))
                         fullname = lastname + "." + name
-                        self.badmodules[fullname] = None
+                        self.badmodules[fullname] = {m.__name__:None}
             else:
                 lastname = None
         for c in co.co_consts:
@@ -361,7 +362,9 @@ class ModuleFinder:
         for key in keys:
             # ... but not if they were explicitely excluded.
             if key not in self.excludes:
-                print "?", key
+                mods = self.badmodules[key].keys()
+                mods.sort()
+                print "?", key, "from", string.join(mods, ', ')
 
 
 def test():