Trim warnings and deprecations from output when invoking PHP in PhpBinaryPath
#158
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix #146
Adds a way to trim
Deprecated:
andWarning:
from output. This is not only limited toassertValidLookingPhpBinary
, but to all PHP subprocess invocation.Unfortunately, warning messages are sent to
stdout
, notstderr
.The cleaning only happens during some setup/validation step of the current env, and the deprecations and warnings are still being displayed to the user when compiling the extension. This way, there's no "sneaky hiding" of error:
I added a parameter to the
Process::run()
method, but if we don't want to add it, the output could also be directly cleaned in thePhpBinaryPath
. Indeed, I'm not 100% happy of this parameter, which is really "PHP-subprocess-related" in a class that is not limited to PHP subprocesses.