Feature: Full support for PHP 8.1 and PHP 8.2 release. (#91 by @SimonFrings and #99 by @WyriHaximus)
Feature / Fix: Improve error reporting when custom error handler is used. (#94 by @clue)
Minor documentation improvements. (#92 by @SimonFrings and #95 by @nhedger)
Improve test suite, skip failing tests on bugged versions and fix legacy HHVM build. (#96 and #98 by @clue and #93 by @SimonFrings)
Feature / Fix: Skip sigchild check if phpinfo()
has been disabled.
(#89 by @clue)
Fix: Fix detecting closed socket pipes on PHP 8. (#90 by @clue)
A major new feature release, see release announcement.
Feature: Simplify usage by supporting new default loop. (#87 by @clue)
// old (still supported)
$process = new React\ChildProcess\Process($command);
$process->start($loop);
// new (using default loop)
$process = new React\ChildProcess\Process($command);
$process->start();
Feature: Support PHP 8 and add non-blocking I/O support on Windows with PHP 8. (#85 by @clue)
Minor documentation improvements. (#78 by @WyriHaximus and #80 by @gdejong)
Improve test suite and add .gitattributes
to exclude dev files from exports.
Run tests on PHPUnit 9, switch to GitHub actions and clean up test suite.
(#75 by @reedy, #81 by @gdejong, #82 by @SimonFrings and #84 by @clue)
A major feature release with some minor API improvements! This project now has limited Windows support and supports passing custom pipes and file descriptors to the child process.
This update involves a few minor BC breaks. We've tried hard to avoid BC breaks where possible and minimize impact otherwise. We expect that most consumers of this package will actually not be affected by any BC breaks, see below for more details.
BC note: The optional
$options
parameter in theProcess
constructor has been removed and a new$fds
parameter has been added instead. The previous$options
parameter was Windows-only, available options were not documented or referenced anywhere else in this library, so its actual impact is expected to be relatively small. See the documentation and the following changelog entry if you're looking for Windows support.
Feature: Support spawning child process on Windows without process I/O pipes. (#67 by @clue)
Feature / BC break: Improve sigchild compatibility and support explicit configuration. (#63 by @clue)
// advanced: not recommended by default
Process::setSigchildEnabled(true);
BC note: The old public sigchild methods have been removed, but its practical impact is believed to be relatively small due to the automatic detection.
Improve performance by prefixing all global functions calls with \ to skip the look up and resolve process and go straight to the global function. (#68 by @WyriHaximus)
Minor documentation improvements and docblock updates. (#59 by @iamluc and #69 by @CharlotteDunois)
Improve test suite to test against PHP7.2 and PHP 7.3, improve HHVM compatibility, add forward compatibility with PHPUnit 7 and run tests on Windows via Travis CI. (#66 and #71 by @clue)
Feature: Detect "exit" immediately if last process pipe is closed (#58 by @clue)
This introduces a simple check to see if the program is already known to be closed when the last process pipe is closed instead of relying on a periodic timer. This simple change improves "exit" detection significantly for most programs and does not cause a noticeable penalty for more advanced use cases.
Fix forward compatibility with upcoming EventLoop releases (#56 by @clue)
Fix: Update Stream dependency to work around SEGFAULT in legacy PHP < 5.4.28 and PHP < 5.5.12 (#50 and #52 by @clue)
Improve test suite by simplifying test bootstrapping logic via Composer and adding forward compatibility with PHPUnit 6 (#53, #54 and #55 by @clue)
RuntimeException
)
(#49 by @mdrost)Ease getting started by improving documentation and adding examples (#33 and #34 by @clue)
First class support for PHP 5.3 through PHP 7.1 and HHVM (#29 by @clue and #32 by @WyriHaximus)
Feature: Forward compatibility with Stream v0.5 (#26 by @clue)
Improve test suite by removing AppVeyor and adding PHPUnit to require-dev
(#27 and #28 by @clue)