-
Notifications
You must be signed in to change notification settings - Fork 478
Handle vyper compiler warnings in asyncExec function #2291
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
Maybe it's better we handle it all in I'm asking because I'm wondering if we throw when we see something in the stdErr, are we going to see these as structured and meaningful errors in a verificationJob? Or just an unstructured string that is coming from the stdErr? From what I can see it won't because you are checking Also what happens if there's a Warning in the beginning and errors come later? |
The one I see was just an unstructured string, so I don't think an advanced parsing is needed. |
Ok but to my point, when we throw it on the stdErr output, we don't get the structured errors like this one https://verify.sourcify.dev/jobs/65f64b95-2e1b-4a8f-9db3-66985b1c15bd and also this: "Also what happens if there's a Warning in the beginning and errors come later?" |
Ah! I lost this one, it actually makes sense. Then unfortunately we need to dig deeper into this and create some tests to explore all the cases :( |
How about ignoring the stderr and looking for compiler errors in the std JSON output? I wonder if this line of checking stdErr does ever get triggered in Solidity because this |
I'll move forward with this by creating some tests with different errors / warnings for both solidity and vyper. Then we'll adapt the fix so that it doesn't break any test. |
6a7e3b5
to
9e143d3
Compare
…Vyper 0.3.10 and 0.4.1
I discovered that Vyper < 0.4.0 outputs warnings in the stderr, while vyper >=0.4.0 includes them correctly in the errors object. @kuzdogan I think the approach of this PR is correct, I added the tests for Vyper to make sure we handle cases (< 0.4.0 AND >= 0.4.0), what do you think? |
Co-authored-by: Manuel Wedler <[email protected]>
For some reason Vyper outputs warnings in
stderr
. With this PR we are handling this case.