]> granicus.if.org Git - php/commitdiff
update UPGRADING infos
authorAnatol Belski <ab@php.net>
Thu, 2 Jul 2015 14:32:57 +0000 (16:32 +0200)
committerAnatol Belski <ab@php.net>
Thu, 2 Jul 2015 14:32:57 +0000 (16:32 +0200)
UPGRADING
UPGRADING.INTERNALS

index 5f92921d0414f8cd33a642bbe98c7ccdb30f082c..6ae9b52e9934d7da5ecd360fa4e26b002da7d358 100644 (file)
--- a/UPGRADING
+++ b/UPGRADING
@@ -606,15 +606,25 @@ Other
     unserialize($foo, ["allowed_classes" => ["MyClass", "MyClass2"]]);
 
 - proc_open():
-  The maximum number of pipes used by proc_open() was previously limited by
+  The maximum number of pipes used by proc_open() was previously limited by
   hardcoded value of 16. This limit is now removed and the number of pipes is
   effectively limited by the amount of memory available to PHP.
+  . New Windows only configuration option "blocking_pipes" can be used to
+  force blocking reads on child process pipes. This covers several
+  edge cases in CLI usage however can lead to dead locks. Also, this
+  correlates with the new stream context options for pipes.
 
 - array_column():
   The function now supports an array of objects as well as two-dimensional
   arrays. Only public properties are considered, and objects that make use of
   __get() for dynamic properties must also implement __isset().
 
+- stream_context_create()
+  It accepts now a Windows only configuration 
+  array("pipe" => array("blocking" => <boolean>))  which forces blocking reads
+  on pipes. This option should be used carefully because due to the
+  platform restrictions dead locks on pipe buffers are possible.
+
 ========================================
 6. New Functions
 ========================================
index 9700af595b701221abc46e7e660f8f9df4b63cec..b7c69cc7a2b3e37a93aedcec0d1d4d244868751f 100644 (file)
@@ -18,6 +18,7 @@ PHP 7.0 INTERNALS UPGRADE NOTES
   p. TSRM changes
   q. gc_collect_cycles() is now hookable
   r. PDO uses size_t for lengths
+  u. Streams changes
 
 2. Build system changes
   a. Unix build system changes
@@ -210,6 +211,10 @@ changes. See: https://wiki.php.net/phpng-upgrading
      Instead of reallocation and copying string on each ZEND_ADD_STRING/VAR/CAHR,
      collect all the strings and then allocate and construct the resulting string once.
 
+  u. Streams changes
+     - It is possible to do blocking reads on Windows pipes. It can be done either
+       using context stream option PHP_STREAM_OPTION_PIPE_BLOCKING or 
+       adding STREAM_USE_BLOCKING_PIPE when opening the stream.
 
 ========================
 2. Build system changes