Skip to content
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

Python: Include all assignments in data flow paths #13738

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

RasmusWL
Copy link
Member

Like Ruby did in #12566

Screenshots show last step before reaching the final sink (foo in eval(foo))

OLD

image

NEW

image

I don't know why we're still seeing the attribute read step though, like the one from the request in request.args.get("name") to request.args. I had actually thought they would go away when removing readStep(_, _, n) from neverSkipInPathGraph. I don't think these steps are very useful, since they're both part of the same statement, so would be nice to be able to get rid of them 😅

I used DefinitionNode since that would easily allow me to use the RHS of both normal assignments and augmented assignments (+=), but I'm not entirely sure if it has precisely the right logic around tuple assignments... will have to check that out in more detail!

(draft PR because I expect a lot of .expected files to need updating)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant