com php-src: update UPGRADING infos: UPGRADING UPGRADING.INTERNALS
| From: | Anatol Belski | Date: | Thu, 02 Jul 2015 14:32:57 +0000 |
| Subject: | com php-src: update UPGRADING infos: UPGRADING UPGRADING.INTERNALS | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-87704@lists.php.net to get a copy of this message | ||
Commit: 79ca2b06b6f364b3b10cdd7b5cf36f0d5abc0caf
Author: Anatol Belski <ab@php.net> Thu, 2 Jul 2015 16:32:57 +0200
Parents: 6f3dd4d45b022504bf334add7934536289ce381c
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=79ca2b06b6f364b3b10cdd7b5cf36f0d5abc0caf
Log:
update UPGRADING infos
Changed paths:
M UPGRADING
M UPGRADING.INTERNALS
Diff:
diff --git a/UPGRADING b/UPGRADING
index 5f92921..6ae9b52 100644
--- 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
========================================
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index 9700af5..b7c69cc 100644
--- a/UPGRADING.INTERNALS
+++ b/UPGRADING.INTERNALS
@@ -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