-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Python: Better allow import *
to work with API graphs
#14430
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do I understand it correctly that all instances of an imported value will be considered local sources?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, this looks good to me (but I do have one specific comment).
I feel like this is a fairly principled solution (our implementation of flow in the global scope is a bit weird), and I don't think it would add a lot of extra nodes in general.
Yes, good point @yoff. In the example below, all three occurrences of
|
(no calls or anything)
63a5b4d
to
ee75b10
Compare
rebased to drop the commit to use |
I think this is somewhat unavoidable due to how we do global flow. Right now, we have no way of knowing if the three instances of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I'm curious to see what people think of this solution :D
Performance impact
I did some testing on a random DB I had locally. On this particular DB the change in number of LocalSourceNodes and API graph edges was insignificant:
However, that's not to say it couldn't impact things heavily on other DBs. We'll see what DCA says 👍