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_EOLas 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
phpunittests, in particular not usingWP_CLI_PHP_ARGSandbin/wpbut callingphp\boot-fs.phpdirectly asbin/wp.batdoesn't haveWP_CLI_PHP_ARGSand the invocation was *nix-specific anyway.Also makes
FeatureContext\get_process_env_variables()more Windows-compat by setting the path separator for thePATHappropriately.