Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/3rdparty.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@owncloud.com>2015-10-23 21:39:52 +0300
committerRoeland Jago Douma <rullzer@owncloud.com>2015-10-23 22:47:11 +0300
commit7de08801456a63247e6456e9f4fff73b45e11012 (patch)
tree3ad8c8fa3da62a2623f235cdad83d09f8dbc874e /guzzlehttp
parentede581ec5bb12a920b9aa5d14d071f65620ef73b (diff)
Update guzzlehttp/guzzle to 5.3.0
Also update depenencie react/promise to 2.2.1
Diffstat (limited to 'guzzlehttp')
-rw-r--r--guzzlehttp/guzzle/src/Client.php89
-rw-r--r--guzzlehttp/guzzle/src/ClientInterface.php2
-rw-r--r--guzzlehttp/guzzle/src/Event/AbstractRequestEvent.php2
-rw-r--r--guzzlehttp/guzzle/src/Event/Emitter.php2
-rw-r--r--guzzlehttp/guzzle/src/Exception/RequestException.php2
-rw-r--r--guzzlehttp/guzzle/src/Message/MessageFactoryInterface.php4
-rw-r--r--guzzlehttp/guzzle/src/Message/Request.php2
-rw-r--r--guzzlehttp/guzzle/src/Pool.php2
-rw-r--r--guzzlehttp/guzzle/src/Subscriber/Mock.php15
-rw-r--r--guzzlehttp/guzzle/src/Url.php4
-rw-r--r--guzzlehttp/guzzle/src/Utils.php68
11 files changed, 111 insertions, 81 deletions
diff --git a/guzzlehttp/guzzle/src/Client.php b/guzzlehttp/guzzle/src/Client.php
index f1779eb4..b5ed11ff 100644
--- a/guzzlehttp/guzzle/src/Client.php
+++ b/guzzlehttp/guzzle/src/Client.php
@@ -6,10 +6,6 @@ use GuzzleHttp\Message\MessageFactory;
use GuzzleHttp\Message\MessageFactoryInterface;
use GuzzleHttp\Message\RequestInterface;
use GuzzleHttp\Message\FutureResponse;
-use GuzzleHttp\Ring\Client\Middleware;
-use GuzzleHttp\Ring\Client\CurlMultiHandler;
-use GuzzleHttp\Ring\Client\CurlHandler;
-use GuzzleHttp\Ring\Client\StreamHandler;
use GuzzleHttp\Ring\Core;
use GuzzleHttp\Ring\Future\FutureInterface;
use GuzzleHttp\Exception\RequestException;
@@ -89,75 +85,12 @@ class Client implements ClientInterface
} elseif (isset($config['adapter'])) {
$handler = $config['adapter'];
} else {
- $handler = static::getDefaultHandler();
+ $handler = Utils::getDefaultHandler();
}
$this->fsm = new RequestFsm($handler, $this->messageFactory);
}
}
- /**
- * Create a default handler to use based on the environment
- *
- * @throws \RuntimeException if no viable Handler is available.
- */
- public static function getDefaultHandler()
- {
- $default = $future = $streaming = null;
-
- if (extension_loaded('curl')) {
- $config = [
- 'select_timeout' => getenv('GUZZLE_CURL_SELECT_TIMEOUT') ?: 1
- ];
- if ($maxHandles = getenv('GUZZLE_CURL_MAX_HANDLES')) {
- $config['max_handles'] = $maxHandles;
- }
- $future = new CurlMultiHandler($config);
- if (function_exists('curl_reset')) {
- $default = new CurlHandler();
- }
- }
-
- if (ini_get('allow_url_fopen')) {
- $streaming = new StreamHandler();
- }
-
- if (!($default = ($default ?: $future) ?: $streaming)) {
- throw new \RuntimeException('Guzzle requires cURL, the '
- . 'allow_url_fopen ini setting, or a custom HTTP handler.');
- }
-
- $handler = $default;
-
- if ($streaming && $streaming !== $default) {
- $handler = Middleware::wrapStreaming($default, $streaming);
- }
-
- if ($future) {
- $handler = Middleware::wrapFuture($handler, $future);
- }
-
- return $handler;
- }
-
- /**
- * Get the default User-Agent string to use with Guzzle
- *
- * @return string
- */
- public static function getDefaultUserAgent()
- {
- static $defaultAgent = '';
- if (!$defaultAgent) {
- $defaultAgent = 'Guzzle/' . self::VERSION;
- if (extension_loaded('curl')) {
- $defaultAgent .= ' curl/' . curl_version()['version'];
- }
- $defaultAgent .= ' PHP/' . PHP_VERSION;
- }
-
- return $defaultAgent;
- }
-
public function getDefaultOption($keyOrPath = null)
{
return $keyOrPath === null
@@ -345,11 +278,11 @@ class Client implements ClientInterface
// Add the default user-agent header
if (!isset($this->defaults['headers'])) {
$this->defaults['headers'] = [
- 'User-Agent' => static::getDefaultUserAgent()
+ 'User-Agent' => Utils::getDefaultUserAgent()
];
} elseif (!Core::hasHeader($this->defaults, 'User-Agent')) {
// Add the User-Agent header if one was not already set
- $this->defaults['headers']['User-Agent'] = static::getDefaultUserAgent();
+ $this->defaults['headers']['User-Agent'] = Utils::getDefaultUserAgent();
}
}
@@ -400,4 +333,20 @@ class Client implements ClientInterface
{
Pool::send($this, $requests, $options);
}
+
+ /**
+ * @deprecated Use GuzzleHttp\Utils::getDefaultHandler
+ */
+ public static function getDefaultHandler()
+ {
+ return Utils::getDefaultHandler();
+ }
+
+ /**
+ * @deprecated Use GuzzleHttp\Utils::getDefaultUserAgent
+ */
+ public static function getDefaultUserAgent()
+ {
+ return Utils::getDefaultUserAgent();
+ }
}
diff --git a/guzzlehttp/guzzle/src/ClientInterface.php b/guzzlehttp/guzzle/src/ClientInterface.php
index fac88645..63f0174d 100644
--- a/guzzlehttp/guzzle/src/ClientInterface.php
+++ b/guzzlehttp/guzzle/src/ClientInterface.php
@@ -11,7 +11,7 @@ use GuzzleHttp\Message\ResponseInterface;
*/
interface ClientInterface extends HasEmitterInterface
{
- const VERSION = '5.2.0';
+ const VERSION = '5.3.0';
/**
* Create and return a new {@see RequestInterface} object.
diff --git a/guzzlehttp/guzzle/src/Event/AbstractRequestEvent.php b/guzzlehttp/guzzle/src/Event/AbstractRequestEvent.php
index 8c8fbc94..8a6ee47c 100644
--- a/guzzlehttp/guzzle/src/Event/AbstractRequestEvent.php
+++ b/guzzlehttp/guzzle/src/Event/AbstractRequestEvent.php
@@ -54,7 +54,7 @@ abstract class AbstractRequestEvent extends AbstractEvent
/**
* @return Transaction
*/
- protected function getTransaction()
+ public function getTransaction()
{
return $this->transaction;
}
diff --git a/guzzlehttp/guzzle/src/Event/Emitter.php b/guzzlehttp/guzzle/src/Event/Emitter.php
index 536317a9..4e44f45e 100644
--- a/guzzlehttp/guzzle/src/Event/Emitter.php
+++ b/guzzlehttp/guzzle/src/Event/Emitter.php
@@ -47,7 +47,7 @@ class Emitter implements EmitterInterface
$eventName
) use (&$onceListener, $eventName, $listener, $priority) {
$this->removeListener($eventName, $onceListener);
- $listener($event, $eventName, $this);
+ $listener($event, $eventName);
};
$this->on($eventName, $onceListener, $priority);
diff --git a/guzzlehttp/guzzle/src/Exception/RequestException.php b/guzzlehttp/guzzle/src/Exception/RequestException.php
index f81d2483..3f052d36 100644
--- a/guzzlehttp/guzzle/src/Exception/RequestException.php
+++ b/guzzlehttp/guzzle/src/Exception/RequestException.php
@@ -34,7 +34,7 @@ class RequestException extends TransferException
}
/**
- * Wrap non-RequesExceptions with a RequestException
+ * Wrap non-RequestExceptions with a RequestException
*
* @param RequestInterface $request
* @param \Exception $e
diff --git a/guzzlehttp/guzzle/src/Message/MessageFactoryInterface.php b/guzzlehttp/guzzle/src/Message/MessageFactoryInterface.php
index 57c43e5c..86ae9c7e 100644
--- a/guzzlehttp/guzzle/src/Message/MessageFactoryInterface.php
+++ b/guzzlehttp/guzzle/src/Message/MessageFactoryInterface.php
@@ -33,7 +33,7 @@ interface MessageFactoryInterface
*
* This method accepts an associative array of request options. Below is a
* brief description of each parameter. See
- * http://docs.guzzlephp.org/clients.html#request-options for a much more
+ * http://docs.guzzlephp.org/en/latest/clients.html#request-options for a much more
* in-depth description of each parameter.
*
* - headers: Associative array of headers to add to the request
@@ -65,7 +65,7 @@ interface MessageFactoryInterface
* @param array $options Array of options to apply to the request
*
* @return RequestInterface
- * @link http://docs.guzzlephp.org/clients.html#request-options
+ * @link http://docs.guzzlephp.org/en/latest/clients.html#request-options
*/
public function createRequest($method, $url, array $options = []);
}
diff --git a/guzzlehttp/guzzle/src/Message/Request.php b/guzzlehttp/guzzle/src/Message/Request.php
index 4dbe32e6..38714af8 100644
--- a/guzzlehttp/guzzle/src/Message/Request.php
+++ b/guzzlehttp/guzzle/src/Message/Request.php
@@ -51,7 +51,7 @@ class Request extends AbstractMessage implements RequestInterface
if ($headers) {
foreach ($headers as $key => $value) {
- $this->setHeader($key, $value);
+ $this->addHeader($key, $value);
}
}
}
diff --git a/guzzlehttp/guzzle/src/Pool.php b/guzzlehttp/guzzle/src/Pool.php
index 49d9940f..7b9d83a4 100644
--- a/guzzlehttp/guzzle/src/Pool.php
+++ b/guzzlehttp/guzzle/src/Pool.php
@@ -328,6 +328,6 @@ class Pool implements FutureInterface
$result = $value instanceof ResponseInterface
? ['request' => $request, 'response' => $value, 'error' => null]
: ['request' => $request, 'response' => null, 'error' => $value];
- $this->deferred->progress($result);
+ $this->deferred->notify($result);
}
}
diff --git a/guzzlehttp/guzzle/src/Subscriber/Mock.php b/guzzlehttp/guzzle/src/Subscriber/Mock.php
index 39a3c442..2af4d375 100644
--- a/guzzlehttp/guzzle/src/Subscriber/Mock.php
+++ b/guzzlehttp/guzzle/src/Subscriber/Mock.php
@@ -7,6 +7,7 @@ use GuzzleHttp\Event\BeforeEvent;
use GuzzleHttp\Exception\RequestException;
use GuzzleHttp\Message\MessageFactory;
use GuzzleHttp\Message\ResponseInterface;
+use GuzzleHttp\Stream\StreamInterface;
/**
* Queues mock responses or exceptions and delivers mock responses or
@@ -60,6 +61,20 @@ class Mock implements SubscriberInterface, \Countable
}
}
+ $saveTo = $event->getRequest()->getConfig()->get('save_to');
+
+ if (null !== $saveTo) {
+ $body = $item->getBody();
+
+ if (is_resource($saveTo)) {
+ fwrite($saveTo, $body);
+ } elseif (is_string($saveTo)) {
+ file_put_contents($saveTo, $body);
+ } elseif ($saveTo instanceof StreamInterface) {
+ $saveTo->write($body);
+ }
+ }
+
$event->intercept($item);
}
diff --git a/guzzlehttp/guzzle/src/Url.php b/guzzlehttp/guzzle/src/Url.php
index a81bad2f..637f60c2 100644
--- a/guzzlehttp/guzzle/src/Url.php
+++ b/guzzlehttp/guzzle/src/Url.php
@@ -138,7 +138,7 @@ class Url
$query = null,
$fragment = null
) {
- $this->scheme = $scheme;
+ $this->scheme = strtolower($scheme);
$this->host = $host;
$this->port = $port;
$this->username = $username;
@@ -234,7 +234,7 @@ class Url
$this->port = null;
}
- $this->scheme = $scheme;
+ $this->scheme = strtolower($scheme);
}
/**
diff --git a/guzzlehttp/guzzle/src/Utils.php b/guzzlehttp/guzzle/src/Utils.php
index 285fe30b..1c896610 100644
--- a/guzzlehttp/guzzle/src/Utils.php
+++ b/guzzlehttp/guzzle/src/Utils.php
@@ -1,6 +1,11 @@
<?php
namespace GuzzleHttp;
+use GuzzleHttp\Ring\Client\CurlHandler;
+use GuzzleHttp\Ring\Client\CurlMultiHandler;
+use GuzzleHttp\Ring\Client\StreamHandler;
+use GuzzleHttp\Ring\Client\Middleware;
+
/**
* Utility methods used throughout Guzzle.
*/
@@ -61,8 +66,14 @@ final class Utils
*/
public static function setPath(&$data, $path, $value)
{
- $current =& $data;
$queue = explode('/', $path);
+ // Optimization for simple sets.
+ if (count($queue) === 1) {
+ $data[$path] = $value;
+ return;
+ }
+
+ $current =& $data;
while (null !== ($key = array_shift($queue))) {
if (!is_array($current)) {
throw new \RuntimeException("Trying to setPath {$path}, but "
@@ -142,4 +153,59 @@ final class Utils
return $data;
}
+
+ /**
+ * Get the default User-Agent string to use with Guzzle
+ *
+ * @return string
+ */
+ public static function getDefaultUserAgent()
+ {
+ static $defaultAgent = '';
+ if (!$defaultAgent) {
+ $defaultAgent = 'Guzzle/' . ClientInterface::VERSION;
+ if (extension_loaded('curl')) {
+ $defaultAgent .= ' curl/' . curl_version()['version'];
+ }
+ $defaultAgent .= ' PHP/' . PHP_VERSION;
+ }
+
+ return $defaultAgent;
+ }
+
+ /**
+ * Create a default handler to use based on the environment
+ *
+ * @throws \RuntimeException if no viable Handler is available.
+ */
+ public static function getDefaultHandler()
+ {
+ $default = $future = null;
+
+ if (extension_loaded('curl')) {
+ $config = [
+ 'select_timeout' => getenv('GUZZLE_CURL_SELECT_TIMEOUT') ?: 1
+ ];
+ if ($maxHandles = getenv('GUZZLE_CURL_MAX_HANDLES')) {
+ $config['max_handles'] = $maxHandles;
+ }
+ if (function_exists('curl_reset')) {
+ $default = new CurlHandler();
+ $future = new CurlMultiHandler($config);
+ } else {
+ $default = new CurlMultiHandler($config);
+ }
+ }
+
+ if (ini_get('allow_url_fopen')) {
+ $default = !$default
+ ? new StreamHandler()
+ : Middleware::wrapStreaming($default, new StreamHandler());
+ } elseif (!$default) {
+ throw new \RuntimeException('Guzzle requires cURL, the '
+ . 'allow_url_fopen ini setting, or a custom HTTP handler.');
+ }
+
+ return $future ? Middleware::wrapFuture($default, $future) : $default;
+ }
}