-
-
Notifications
You must be signed in to change notification settings - Fork 99
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
Feat: output STDERR from the building process #540
Feat: output STDERR from the building process #540
Conversation
Hello @beta-ziliani, was wondering why not simply inherit error too? That way, you only need to check for success of process status and raise the single error (shown at the bottom) after all the error has been automatically output to you, no need to check if there were errors collected ( I think would be simpler code, but maybe I'm missing what you're trying to achieve as DX. Cheers. |
Currently, in case of failure the captured STDERR is part of the error message. |
So in the case of warning:
In the case of errors:
Thought since error is being displayed multiple times, the message about the failed target got lost in the middle, instead of something like:
But what you propose makes sense, to make a section in the output with the error. 👍🏽 Cheers. |
We could certainly change the order in the error message! That's not the point. I'm concerned about maintaining that the message of the exception contains all the error information. |
Not sure I follow your concern on that, from what I understand is that Crystal outputs the error message entirely to STDERR, so the error is captured with the current approach.
Same for errors:
Thank you. |
@luislavena I meant that the error output from |
Co-authored-by: Johannes Müller <straightshoota@gmail.com>
Solves #535 by outputting the STDERR of the
crystal
build to the STDERR of theshards
process only if the build is successful. This allows to notice deprecation warnings and the like.In order to test it, I had to concatenate the STDOUT and STDERR, which isn't as clean as possible but works.