I think right now we might end up with a rather coarse decision, if the pubHash of an imported module has changed we will rerun front passes, but it's really only when names that we actually depend on
This said, I think we want to keep treating __builtin__ as a special case - I don't think we want to track all the names in __builtin__ as explicit dependencies per statement, simply because there are so many. Given how infrequently __builtin__ changes, it is OK to just track it on a module basis and if that changes we recompile everything.
I think right now we might end up with a rather coarse decision, if the pubHash of an imported module has changed we will rerun front passes, but it's really only when names that we actually depend on
This said, I think we want to keep treating
__builtin__as a special case - I don't think we want to track all the names in__builtin__as explicit dependencies per statement, simply because there are so many. Given how infrequently__builtin__changes, it is OK to just track it on a module basis and if that changes we recompile everything.