Add Utils\proc_open_compat() for Windows compat, plus misc other compat. #4572
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.
Fixes #4566
Adds
Utils\proc_open_compat()
(and companion privateUtils\_proc_open_compat_win_env()
) function for Windows compatibleproc_open()
, and uses it instead ofproc_open()
throughout (there's another instance inserver-command
). Also escapes all instances ofget_php_binary()
.Changes
DocParser\get_arg_or_param_args()
to use"\n"
instead ofPHP_EOL
as it's been subbed already.Also simplifies
Utils\get_temp_dir()
to just usesys_get_temp_dir()
as it always returns some non-empty value.Makes various Windows-compat changes to the
phpunit
tests, in particular not usingWP_CLI_PHP_ARGS
andbin/wp
but callingphp\boot-fs.php
directly asbin/wp.bat
doesn't haveWP_CLI_PHP_ARGS
and the invocation was *nix-specific anyway.Also makes
FeatureContext\get_process_env_variables()
more Windows-compat by setting the path separator for thePATH
appropriately.