@clue clue released this Oct 30, 2018

Assets 2
  • Feature: Improve error reporting for failed connection attempts and improve
    cancellation forwarding during proxy connection setup.
    (#23 and #26 by @clue)

    All error messages now always contain a reference to the remote URI to give
    more details which connection actually failed and the reason for this error.
    Similarly, any underlying connection issues to the proxy server will now be
    reported as part of the previous exception.

    For most common use cases this means that simply reporting the Exception
    message should give the most relevant details for any connection issues:

    $promise = $proxy->connect('tcp://example.com:80');
    $promise->then(function (ConnectionInterface $conn) use ($loop) {
        //
    }, function (Exception $e) {
        echo $e->getMessage();
    });
  • Feature: Add support for custom HTTP request headers.
    (#25 by @valga and @clue)

    // new: now supports custom HTTP request headers
    $proxy = new ProxyConnector('127.0.0.1:8080', $connector, array(
        'Proxy-Authorization' => 'Bearer abc123',
        'User-Agent' => 'ReactPHP'
    ));
  • Fix: Fix connecting to IPv6 destination hosts.
    (#22 by @clue)

  • Link to clue/reactphp-buzz for HTTP requests and update project homepage.
    (#21 and #24 by @clue)

@clue clue released this Feb 13, 2018 · 14 commits to master since this release

Assets 2
  • Feature: Support communication over Unix domain sockets (UDS)
    (#20 by @clue)

    // new: now supports communication over Unix domain sockets (UDS)
    $proxy = new ProxyConnector('http+unix:///tmp/proxy.sock', $connector);
  • Reduce memory consumption by avoiding circular reference from stream reader
    (#18 by @valga)

  • Improve documentation
    (#19 by @clue)

@clue clue released this Aug 30, 2017 · 22 commits to master since this release

Assets 2
  • Feature: Use socket error codes for connection rejections
    (#17 by @clue)

    $promise = $proxy->connect('imap.example.com:143');
    $promise->then(null, function (Exeption $e) {
        if ($e->getCode() === SOCKET_EACCES) {
            echo 'Failed to authenticate with proxy!';
        }
        throw $e;
    });
  • Improve test suite by locking Travis distro so new defaults will not break the build and
    optionally exclude tests that rely on working internet connection
    (#15 and #16 by @clue)

@clue clue released this Jun 11, 2017 · 32 commits to master since this release

Assets 2
  • Feature: Support proxy authentication if proxy URL contains username/password
    (#14 by @clue)

    // new: username/password will now be passed to HTTP proxy server
    $proxy = new ProxyConnector('user:pass@127.0.0.1:8080');

@clue clue released this Jun 10, 2017 · 35 commits to master since this release

Assets 2
  • First stable release, now following SemVer

Contains no other changes, so it's actually fully compatible with the v0.3.2 release.

@clue clue released this Jun 10, 2017 · 36 commits to master since this release

Assets 2
  • Fix: Fix rejecting invalid URIs and unexpected URI schemes
    (#13 by @clue)

  • Fix HHVM build for now again and ignore future HHVM build errors
    (#12 by @clue)

  • Documentation for Connector concepts (TCP/TLS, timeouts, DNS resolution)
    (#11 by @clue)

@clue clue released this May 10, 2017 · 45 commits to master since this release

Assets 2
  • Feature: Forward compatibility with upcoming Socket v1.0 and v0.8
    (#10 by @clue)

@clue clue released this Apr 10, 2017 · 49 commits to master since this release

Assets 2
  • Feature / BC break: Replace deprecated SocketClient with new Socket component
    (#9 by @clue)

    This implies that the ProxyConnector from this package now implements the
    React\Socket\ConnectorInterface instead of the legacy
    React\SocketClient\ConnectorInterface.

@clue clue released this Apr 10, 2017 · 53 commits to master since this release

Assets 2
  • Feature / BC break: Update SocketClient to v0.7 or v0.6 and
    use connect($uri) instead of create($host, $port)
    (#8 by @clue)

    // old
    $connector->create($host, $port)->then(function (Stream $conn) {
        $conn->write("");
    });
    
    // new
    $connector->connect($uri)->then(function (ConnectionInterface $conn) {
        $conn->write("");
    });
  • Improve test suite by adding PHPUnit to require-dev
    (#7 by @clue)

@clue clue released this Nov 1, 2016 · 61 commits to master since this release

Assets 2
  • First tagged release