Skip to content

v1.0.0

Compare
Choose a tag to compare
@clue clue released this 19 Sep 14:35
  • First stable release, now following SemVer!

  • Feature: Update all ReactPHP dependencies to latest versions and
    significantly improve performance (see included benchmark examples).
    (#51 and #56 by @clue)

  • Feature / BC break: Replace Factory with simplified Client constructor.
    (#49 by @clue)

    // old
    $factory = new Clue\React\Docker\Factory($loop);
    $client = $factory->createClient($url);
    
    // new
    $client = new Clue\React\Docker\Client($loop, $url);
  • Feature / BC break: Change JSON stream to always report data events instead of progress,
    follow strict stream semantics, support backpressure and improve error handling.
    (#27 and #50 by @clue)

    // old: all JSON streams use custom "progress" event
    $stream = $client->eventsStream();
    $stream->on('progress', function ($data) {
        var_dump($data);
    });
    
    // new: all streams use default "data" event
    $stream = $client->eventsStream();
    $stream->on('data', function ($data) {
        var_dump($data);
    });
    
    // new: stream follows stream semantics and supports stream composition
    $stream = $client->eventsStream();
    $stream->pipe($logger);
  • Feature / BC break: Add containerArchive() and containerArchiveStream() methods and
    remove deprecated containerCopy() and containerCopyStream() and
    remove deprecated HostConfig parameter from containerStart().
    (#42, #48 and #55 by @clue)

    // old
    $client->containerCopy($container, array('Resource' => $path));
    
    // new
    $client->containerArchive($container, $path);
  • Feature / BC break: Change execCreate() method to accept plain params instead of config object.
    (#38 and #39 by @clue)

  • Feature / BC break: Change execStart() method to resolve with buffered string contents.
    (#35 and #40)

  • Feature: Add execStartDetached() method to resolve without waiting for exec data.
    (#38 by @clue)

  • Feature: Add execStartStream() method to return stream of exec data.
    (#37 and #40)

  • Feature: Add execInspect() method.
    (#34 by @clue)

  • Feature: Add containerLogs() and containerLogsStream() methods.
    (#53 and #54 by @clue)

  • Feature: Add containerStats() and containerStatsStream() methods.
    (#52 by @clue)

  • Feature: Add events() and eventsStream() methods
    (#32 by @clue)

  • Feature: Add containerRename() method.
    (#43 by @clue)

  • Feature: Timeout $t is optional for containerStop() and containerRestart().
    (#28 by @clue)

  • Fix: The containerResize() and execResize() to issue POST request to resize TTY.
    (#29 and #30 by @clue)

  • Improve test suite by adding PHPUnit to require-dev, support PHPUnit 7 - legacy PHPUnit 4
    and test against legacy PHP 5.3 through PHP 7.3,
    improve documentation and update project homepage.
    (#31, #46 and #47 by @clue)