From d037c55eb663e713836e73d2ebf13b7f6bb6b1eb Mon Sep 17 00:00:00 2001 From: webchick <webchick@24967.no-reply.drupal.org> Date: Wed, 16 Jan 2013 14:42:23 -0800 Subject: [PATCH] Issue #1875818 by Berdir: Update composer.json to use the latest stable 3.0.x version of Guzzle. --- core/composer.json | 4 +- core/composer.lock | 171 ++++--- core/vendor/autoload.php | 2 +- core/vendor/composer/autoload_namespaces.php | 2 +- core/vendor/composer/autoload_real.php | 8 +- core/vendor/composer/installed.json | 437 ++++++++++-------- core/vendor/easyrdf/easyrdf/.gitignore | 9 + core/vendor/easyrdf/easyrdf/CHANGELOG.md | 254 ++++++++++ core/vendor/easyrdf/easyrdf/LICENSE.md | 23 + core/vendor/easyrdf/easyrdf/Makefile | 136 ++++++ core/vendor/easyrdf/easyrdf/README.md | 136 ++++++ core/vendor/easyrdf/easyrdf/composer.json | 36 ++ core/vendor/easyrdf/easyrdf/doap.php | 46 ++ .../{njh => easyrdf}/easyrdf/lib/EasyRdf.php | 0 .../easyrdf/lib/EasyRdf/Exception.php | 0 .../easyrdf/lib/EasyRdf/Format.php | 0 .../easyrdf/lib/EasyRdf/Graph.php | 0 .../easyrdf/lib/EasyRdf/GraphStore.php | 0 .../easyrdf/lib/EasyRdf/Http.php | 0 .../easyrdf/lib/EasyRdf/Http/Client.php | 0 .../easyrdf/lib/EasyRdf/Http/Response.php | 0 .../easyrdf/lib/EasyRdf/Literal.php | 0 .../easyrdf/lib/EasyRdf/Literal/Boolean.php | 0 .../easyrdf/lib/EasyRdf/Literal/Date.php | 0 .../easyrdf/lib/EasyRdf/Literal/DateTime.php | 0 .../easyrdf/lib/EasyRdf/Literal/Decimal.php | 0 .../easyrdf/lib/EasyRdf/Literal/HTML.php | 0 .../easyrdf/lib/EasyRdf/Literal/HexBinary.php | 0 .../easyrdf/lib/EasyRdf/Literal/Integer.php | 0 .../easyrdf/lib/EasyRdf/Literal/XML.php | 0 .../easyrdf/lib/EasyRdf/Namespace.php | 0 .../easyrdf/lib/EasyRdf/ParsedUri.php | 0 .../easyrdf/lib/EasyRdf/Parser.php | 0 .../easyrdf/lib/EasyRdf/Parser/Arc.php | 0 .../easyrdf/lib/EasyRdf/Parser/Json.php | 0 .../easyrdf/lib/EasyRdf/Parser/Ntriples.php | 0 .../easyrdf/lib/EasyRdf/Parser/Rapper.php | 0 .../easyrdf/lib/EasyRdf/Parser/RdfPhp.php | 0 .../easyrdf/lib/EasyRdf/Parser/RdfXml.php | 0 .../easyrdf/lib/EasyRdf/Parser/Rdfa.php | 0 .../easyrdf/lib/EasyRdf/Parser/Redland.php | 0 .../easyrdf/lib/EasyRdf/Parser/Turtle.php | 0 .../easyrdf/lib/EasyRdf/Resource.php | 0 .../easyrdf/lib/EasyRdf/Serialiser.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/Arc.php | 0 .../lib/EasyRdf/Serialiser/GraphViz.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/Json.php | 0 .../lib/EasyRdf/Serialiser/Ntriples.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/Rapper.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/RdfXml.php | 0 .../easyrdf/lib/EasyRdf/Serialiser/Turtle.php | 0 .../easyrdf/lib/EasyRdf/Sparql/Client.php | 0 .../easyrdf/lib/EasyRdf/Sparql/Result.php | 0 .../easyrdf/lib/EasyRdf/TypeMapper.php | 0 .../easyrdf/lib/EasyRdf/Utils.php | 0 .../common/Guzzle/Common/Collection.php | 33 +- .../Common/Exception/ExceptionCollection.php | 24 + .../guzzle/common/Guzzle/Common/Version.php | 3 +- .../guzzle/common/Guzzle/Common/composer.json | 7 +- .../vendor/guzzle/http/Guzzle/Http/Client.php | 11 +- .../http/Guzzle/Http/Curl/CurlHandle.php | 1 - .../http/Guzzle/Http/Curl/CurlMulti.php | 168 ++++--- .../Guzzle/Http/Curl/CurlMultiInterface.php | 1 + .../Guzzle/Http/Exception/CurlException.php | 32 +- .../Http/Exception/MultiTransferException.php | 101 ++++ .../http/Guzzle/Http/IoEmittingEntityBody.php | 100 ++++ .../Http/Message/EntityEnclosingRequest.php | 4 +- .../http/Guzzle/Http/Message/Request.php | 24 +- .../Guzzle/Http/Message/RequestInterface.php | 11 +- .../guzzle/http/Guzzle/Http/composer.json | 8 +- .../Guzzle/Parser/UriTemplate/UriTemplate.php | 2 +- .../guzzle/parser/Guzzle/Parser/composer.json | 7 +- .../guzzle/stream/Guzzle/Stream/composer.json | 7 +- 74 files changed, 1442 insertions(+), 366 deletions(-) create mode 100644 core/vendor/easyrdf/easyrdf/.gitignore create mode 100644 core/vendor/easyrdf/easyrdf/CHANGELOG.md create mode 100644 core/vendor/easyrdf/easyrdf/LICENSE.md create mode 100644 core/vendor/easyrdf/easyrdf/Makefile create mode 100644 core/vendor/easyrdf/easyrdf/README.md create mode 100644 core/vendor/easyrdf/easyrdf/composer.json create mode 100644 core/vendor/easyrdf/easyrdf/doap.php rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Exception.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Format.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Graph.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/GraphStore.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Http.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Http/Client.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Http/Response.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/Boolean.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/Date.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/DateTime.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/Decimal.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/HTML.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/HexBinary.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/Integer.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Literal/XML.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Namespace.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/ParsedUri.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Arc.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Json.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Ntriples.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Rapper.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/RdfPhp.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/RdfXml.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Rdfa.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Redland.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Parser/Turtle.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Resource.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/Arc.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/GraphViz.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/Json.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/Ntriples.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/Rapper.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/RdfXml.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Serialiser/Turtle.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Sparql/Client.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Sparql/Result.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/TypeMapper.php (100%) rename core/vendor/{njh => easyrdf}/easyrdf/lib/EasyRdf/Utils.php (100%) create mode 100644 core/vendor/guzzle/http/Guzzle/Http/Exception/MultiTransferException.php create mode 100644 core/vendor/guzzle/http/Guzzle/Http/IoEmittingEntityBody.php diff --git a/core/composer.json b/core/composer.json index ab2dc0e3a400..4bedbf03274a 100644 --- a/core/composer.json +++ b/core/composer.json @@ -13,10 +13,10 @@ "symfony/yaml": "<2.4", "twig/twig": "1.*@stable", "doctrine/common": "2.3.*@stable", - "guzzle/http": "*", + "guzzle/http": "3.1.*@stable", "kriswallsmith/assetic": "1.1.*@alpha", "symfony-cmf/routing": "1.0.*@dev", - "njh/easyrdf": "0.8.*" + "easyrdf/easyrdf": "dev-master" }, "minimum-stability": "dev" } diff --git a/core/composer.lock b/core/composer.lock index 07d030c8a3ba..bd6e3eaf03b4 100644 --- a/core/composer.lock +++ b/core/composer.lock @@ -1,5 +1,5 @@ { - "hash": "27b5fb7194e0d492c69d372d8ba17b2b", + "hash": "9dba4484f19203d80a4d60c987df2e59", "packages": [ { "name": "doctrine/common", @@ -25,7 +25,6 @@ "dev-master": "2.3.x-dev" } }, - "installation-source": "dist", "autoload": { "psr-0": { "Doctrine\\Common": "lib/" @@ -72,27 +71,85 @@ ] }, { - "name": "guzzle/common", + "name": "easyrdf/easyrdf", "version": "dev-master", + "source": { + "type": "git", + "url": "git://github.com/njh/easyrdf.git", + "reference": "d1c363bd04cd55169fbefe52328e86031c6db3a2" + }, + "dist": { + "type": "zip", + "url": "https://github.com/njh/easyrdf/archive/d1c363bd04cd55169fbefe52328e86031c6db3a2.zip", + "reference": "d1c363bd04cd55169fbefe52328e86031c6db3a2", + "shasum": "" + }, + "require": { + "php": ">=5.2.8" + }, + "replace": { + "njh/easyrdf": "self.version" + }, + "require-dev": { + "phpunit/phpunit": ">=3.5.15", + "squizlabs/php_codesniffer": ">=1.4.3", + "sami/sami": "dev-master" + }, + "time": "2013-01-13 01:20:04", + "type": "library", + "autoload": { + "psr-0": { + "EasyRdf_": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nicholas Humfrey", + "email": "njh@aelius.com", + "homepage": "http://www.aelius.com/njh/", + "role": "Developer" + } + ], + "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", + "homepage": "http://www.easyrdf.org/", + "keywords": [ + "rdfa", + "RDF", + "Semantic Web", + "Turtle", + "Linked Data" + ] + }, + { + "name": "guzzle/common", + "version": "v3.1.0", "target-dir": "Guzzle/Common", "source": { "type": "git", "url": "git://github.com/guzzle/common.git", - "reference": "23162d56daa85b1ee6f1d73d9b5a5ecda2d70849" + "reference": "v3.1.0" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/common/archive/23162d56daa85b1ee6f1d73d9b5a5ecda2d70849.zip", - "reference": "23162d56daa85b1ee6f1d73d9b5a5ecda2d70849", + "url": "https://github.com/guzzle/common/archive/v3.1.0.zip", + "reference": "v3.1.0", "shasum": "" }, "require": { "php": ">=5.3.2", "symfony/event-dispatcher": ">=2.1" }, - "time": "2012-12-06 02:26:39", + "time": "2013-01-13 05:14:34", "type": "library", - "installation-source": "source", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, "autoload": { "psr-0": { "Guzzle\\Common": "" @@ -113,28 +170,33 @@ }, { "name": "guzzle/http", - "version": "dev-master", + "version": "v3.1.0", "target-dir": "Guzzle/Http", "source": { "type": "git", "url": "git://github.com/guzzle/http.git", - "reference": "v3.0.5" + "reference": "v3.1.0" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/http/archive/v3.0.5.zip", - "reference": "v3.0.5", + "url": "https://github.com/guzzle/http/archive/v3.1.0.zip", + "reference": "v3.1.0", "shasum": "" }, "require": { "php": ">=5.3.2", + "ext-curl": "*", "guzzle/common": "self.version", "guzzle/parser": "self.version", "guzzle/stream": "self.version" }, - "time": "2012-11-18 05:28:55", + "time": "2013-01-13 05:09:32", "type": "library", - "installation-source": "source", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, "autoload": { "psr-0": { "Guzzle\\Http": "" @@ -163,25 +225,29 @@ }, { "name": "guzzle/parser", - "version": "dev-master", + "version": "v3.1.0", "target-dir": "Guzzle/Parser", "source": { "type": "git", "url": "git://github.com/guzzle/parser.git", - "reference": "v3.0.5" + "reference": "v3.1.0" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/parser/archive/v3.0.5.zip", - "reference": "v3.0.5", + "url": "https://github.com/guzzle/parser/archive/v3.1.0.zip", + "reference": "v3.1.0", "shasum": "" }, "require": { "php": ">=5.3.2" }, - "time": "2012-11-19 00:07:13", + "time": "2013-01-12 21:43:21", "type": "library", - "installation-source": "source", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, "autoload": { "psr-0": { "Guzzle\\Parser": "" @@ -203,26 +269,30 @@ }, { "name": "guzzle/stream", - "version": "dev-master", + "version": "v3.1.0", "target-dir": "Guzzle/Stream", "source": { "type": "git", "url": "https://github.com/guzzle/stream", - "reference": "v3.0.5" + "reference": "v3.1.0" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/stream/archive/v3.0.5.zip", - "reference": "v3.0.5", + "url": "https://github.com/guzzle/stream/archive/v3.1.0.zip", + "reference": "v3.1.0", "shasum": "" }, "require": { "php": ">=5.3.2", "guzzle/common": "self.version" }, - "time": "2012-11-11 23:54:57", + "time": "2012-12-07 16:45:11", "type": "library", - "installation-source": "source", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, "autoload": { "psr-0": { "Guzzle\\Stream": "" @@ -284,7 +354,6 @@ "dev-master": "1.1-dev" } }, - "installation-source": "dist", "autoload": { "psr-0": { "Assetic": "src/" @@ -336,7 +405,6 @@ "dev-master": "1.0-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Cmf\\Component\\Routing": "" @@ -359,39 +427,6 @@ "routing" ] }, - { - "name": "njh/easyrdf", - "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", - "version": "0.8.0", - "type": "library", - "keywords": ["RDF", "Semantic Web", "Turtle", "RDFa"], - "homepage": "http://www.aelius.com/njh/easyrdf/", - "license": "BSD-3-Clause", - "authors": [ - { - "name": "Nicholas Humfrey", - "email": "njh@aelius.com", - "homepage": "http://www.aelius.com/njh/", - "role": "Developer" - } - ], - "support": { - "forum": "http://groups.google.com/group/easyrdf/", - "issues": "http://github.com/njh/easyrdf/issues" - }, - "require": { - "php": ">=5.2.8" - }, - "repositories": [ - { - "type": "vcs", - "url": "https://github.com/njh/easyrdf" - } - ], - "autoload": { - "psr-0": { "EasyRdf": "lib/" } - } - }, { "name": "symfony/class-loader", "version": "dev-master", @@ -420,7 +455,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\ClassLoader\\": "" @@ -476,7 +510,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\DependencyInjection\\": "" @@ -531,7 +564,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\EventDispatcher\\": "" @@ -579,7 +611,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\HttpFoundation\\": "" @@ -651,7 +682,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\HttpKernel\\": "" @@ -694,7 +724,6 @@ }, "time": "2012-12-06 10:00:55", "type": "library", - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\Process": "" @@ -753,7 +782,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\Routing\\": "" @@ -801,7 +829,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\Serializer\\": "" @@ -849,7 +876,6 @@ "dev-master": "2.2-dev" } }, - "installation-source": "source", "autoload": { "psr-0": { "Symfony\\Component\\Yaml\\": "" @@ -896,7 +922,6 @@ "dev-master": "1.11-dev" } }, - "installation-source": "dist", "autoload": { "psr-0": { "Twig_": "lib/" @@ -931,7 +956,9 @@ "stability-flags": { "twig/twig": 0, "doctrine/common": 0, + "guzzle/http": 0, "kriswallsmith/assetic": 15, - "symfony-cmf/routing": 20 + "symfony-cmf/routing": 20, + "easyrdf/easyrdf": 20 } } diff --git a/core/vendor/autoload.php b/core/vendor/autoload.php index 622540f4062c..517fa0b13e01 100644 --- a/core/vendor/autoload.php +++ b/core/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer' . '/autoload_real.php'; -return ComposerAutoloaderInit4f0cafaacf65c45167c785b9f087e425::getLoader(); +return ComposerAutoloaderInitcb954419c7531cdb839507174df5e8bb::getLoader(); diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php index 4fa7f515bd96..913d6b8a3a42 100644 --- a/core/vendor/composer/autoload_namespaces.php +++ b/core/vendor/composer/autoload_namespaces.php @@ -21,7 +21,7 @@ 'Guzzle\\Parser' => $vendorDir . '/guzzle/parser/', 'Guzzle\\Http' => $vendorDir . '/guzzle/http/', 'Guzzle\\Common' => $vendorDir . '/guzzle/common/', + 'EasyRdf_' => $vendorDir . '/easyrdf/easyrdf/lib/', 'Doctrine\\Common' => $vendorDir . '/doctrine/common/lib/', 'Assetic' => $vendorDir . '/kriswallsmith/assetic/src/', - 'EasyRdf_' => $vendorDir . '/njh/easyrdf/lib/', ); diff --git a/core/vendor/composer/autoload_real.php b/core/vendor/composer/autoload_real.php index d492d5c65a8a..a7159a29e8d7 100644 --- a/core/vendor/composer/autoload_real.php +++ b/core/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php generated by Composer -class ComposerAutoloaderInit4f0cafaacf65c45167c785b9f087e425 +class ComposerAutoloaderInitcb954419c7531cdb839507174df5e8bb { private static $loader; @@ -19,9 +19,9 @@ public static function getLoader() return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit4f0cafaacf65c45167c785b9f087e425', 'loadClassLoader')); + spl_autoload_register(array('ComposerAutoloaderInitcb954419c7531cdb839507174df5e8bb', 'loadClassLoader')); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInit4f0cafaacf65c45167c785b9f087e425', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInitcb954419c7531cdb839507174df5e8bb', 'loadClassLoader')); $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); @@ -36,7 +36,7 @@ public static function getLoader() $loader->addClassMap($classMap); } - $loader->register(); + $loader->register(true); return $loader; } diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json index bb8d2e19da5e..4822cd318b76 100644 --- a/core/vendor/composer/installed.json +++ b/core/vendor/composer/installed.json @@ -228,186 +228,6 @@ "minification" ] }, - { - "name": "guzzle/common", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Guzzle/Common", - "source": { - "type": "git", - "url": "git://github.com/guzzle/common.git", - "reference": "23162d56daa85b1ee6f1d73d9b5a5ecda2d70849" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/common/archive/23162d56daa85b1ee6f1d73d9b5a5ecda2d70849.zip", - "reference": "23162d56daa85b1ee6f1d73d9b5a5ecda2d70849", - "shasum": "" - }, - "require": { - "php": ">=5.3.2", - "symfony/event-dispatcher": ">=2.1" - }, - "time": "2012-12-06 02:26:39", - "type": "library", - "installation-source": "source", - "autoload": { - "psr-0": { - "Guzzle\\Common": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Common libraries used by Guzzle", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "event", - "exception", - "common", - "collection" - ] - }, - { - "name": "guzzle/stream", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Guzzle/Stream", - "source": { - "type": "git", - "url": "https://github.com/guzzle/stream", - "reference": "v3.0.5" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/stream/archive/v3.0.5.zip", - "reference": "v3.0.5", - "shasum": "" - }, - "require": { - "php": ">=5.3.2", - "guzzle/common": "self.version" - }, - "time": "2012-11-11 23:54:57", - "type": "library", - "installation-source": "source", - "autoload": { - "psr-0": { - "Guzzle\\Stream": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "Guzzle stream wrapper component", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "stream", - "Guzzle", - "component" - ] - }, - { - "name": "guzzle/parser", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Guzzle/Parser", - "source": { - "type": "git", - "url": "git://github.com/guzzle/parser.git", - "reference": "v3.0.5" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/parser/archive/v3.0.5.zip", - "reference": "v3.0.5", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "time": "2012-11-19 00:07:13", - "type": "library", - "installation-source": "source", - "autoload": { - "psr-0": { - "Guzzle\\Parser": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Interchangeable parsers used by Guzzle", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "http", - "url", - "message", - "cookie", - "URI Template" - ] - }, - { - "name": "guzzle/http", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Guzzle/Http", - "source": { - "type": "git", - "url": "git://github.com/guzzle/http.git", - "reference": "v3.0.5" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/http/archive/v3.0.5.zip", - "reference": "v3.0.5", - "shasum": "" - }, - "require": { - "php": ">=5.3.2", - "guzzle/common": "self.version", - "guzzle/parser": "self.version", - "guzzle/stream": "self.version" - }, - "time": "2012-11-18 05:28:55", - "type": "library", - "installation-source": "source", - "autoload": { - "psr-0": { - "Guzzle\\Http": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "HTTP libraries used by Guzzle", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "curl", - "http", - "http client", - "client", - "Guzzle" - ] - }, { "name": "symfony-cmf/routing", "version": "dev-master", @@ -903,5 +723,262 @@ ], "description": "Symfony Yaml Component", "homepage": "http://symfony.com" + }, + { + "name": "guzzle/common", + "version": "v3.1.0", + "version_normalized": "3.1.0.0", + "target-dir": "Guzzle/Common", + "source": { + "type": "git", + "url": "git://github.com/guzzle/common.git", + "reference": "v3.1.0" + }, + "dist": { + "type": "zip", + "url": "https://github.com/guzzle/common/archive/v3.1.0.zip", + "reference": "v3.1.0", + "shasum": "" + }, + "require": { + "php": ">=5.3.2", + "symfony/event-dispatcher": ">=2.1" + }, + "time": "2013-01-13 05:14:34", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Guzzle\\Common": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Common libraries used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "event", + "exception", + "common", + "collection" + ] + }, + { + "name": "guzzle/stream", + "version": "v3.1.0", + "version_normalized": "3.1.0.0", + "target-dir": "Guzzle/Stream", + "source": { + "type": "git", + "url": "https://github.com/guzzle/stream", + "reference": "v3.1.0" + }, + "dist": { + "type": "zip", + "url": "https://github.com/guzzle/stream/archive/v3.1.0.zip", + "reference": "v3.1.0", + "shasum": "" + }, + "require": { + "php": ">=5.3.2", + "guzzle/common": "self.version" + }, + "time": "2012-12-07 16:45:11", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Guzzle\\Stream": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Guzzle stream wrapper component", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "stream", + "Guzzle", + "component" + ] + }, + { + "name": "guzzle/parser", + "version": "v3.1.0", + "version_normalized": "3.1.0.0", + "target-dir": "Guzzle/Parser", + "source": { + "type": "git", + "url": "git://github.com/guzzle/parser.git", + "reference": "v3.1.0" + }, + "dist": { + "type": "zip", + "url": "https://github.com/guzzle/parser/archive/v3.1.0.zip", + "reference": "v3.1.0", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "time": "2013-01-12 21:43:21", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Guzzle\\Parser": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Interchangeable parsers used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "http", + "url", + "message", + "cookie", + "URI Template" + ] + }, + { + "name": "guzzle/http", + "version": "v3.1.0", + "version_normalized": "3.1.0.0", + "target-dir": "Guzzle/Http", + "source": { + "type": "git", + "url": "git://github.com/guzzle/http.git", + "reference": "v3.1.0" + }, + "dist": { + "type": "zip", + "url": "https://github.com/guzzle/http/archive/v3.1.0.zip", + "reference": "v3.1.0", + "shasum": "" + }, + "require": { + "php": ">=5.3.2", + "ext-curl": "*", + "guzzle/common": "self.version", + "guzzle/parser": "self.version", + "guzzle/stream": "self.version" + }, + "time": "2013-01-13 05:09:32", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Guzzle\\Http": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "HTTP libraries used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "curl", + "http", + "http client", + "client", + "Guzzle" + ] + }, + { + "name": "easyrdf/easyrdf", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "git://github.com/njh/easyrdf.git", + "reference": "d1c363bd04cd55169fbefe52328e86031c6db3a2" + }, + "dist": { + "type": "zip", + "url": "https://github.com/njh/easyrdf/archive/d1c363bd04cd55169fbefe52328e86031c6db3a2.zip", + "reference": "d1c363bd04cd55169fbefe52328e86031c6db3a2", + "shasum": "" + }, + "require": { + "php": ">=5.2.8" + }, + "replace": { + "njh/easyrdf": "self.version" + }, + "require-dev": { + "phpunit/phpunit": ">=3.5.15", + "squizlabs/php_codesniffer": ">=1.4.3", + "sami/sami": "dev-master" + }, + "time": "2013-01-13 01:20:04", + "type": "library", + "installation-source": "source", + "autoload": { + "psr-0": { + "EasyRdf_": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nicholas Humfrey", + "email": "njh@aelius.com", + "homepage": "http://www.aelius.com/njh/", + "role": "Developer" + } + ], + "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", + "homepage": "http://www.easyrdf.org/", + "keywords": [ + "rdfa", + "RDF", + "Semantic Web", + "Turtle", + "Linked Data" + ] } ] diff --git a/core/vendor/easyrdf/easyrdf/.gitignore b/core/vendor/easyrdf/easyrdf/.gitignore new file mode 100644 index 000000000000..83892d7ccbfb --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/.gitignore @@ -0,0 +1,9 @@ +doap.rdf +docs +samicache +lib/arc/ +reports +*.tar.gz +vendor +composer.phar +composer.lock diff --git a/core/vendor/easyrdf/easyrdf/CHANGELOG.md b/core/vendor/easyrdf/easyrdf/CHANGELOG.md new file mode 100644 index 000000000000..482076e37f1d --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/CHANGELOG.md @@ -0,0 +1,254 @@ +EasyRdf 0.8.0 +============= + +API changes +----------- +* is_a() has been renamed to isA() + +Major new features +------------------ +* Now PSR-2 compliant +* Added RDFa parser + +Enhancements +------------ + +Bug Fixes +--------- + + + +EasyRdf 0.7.2 +============= + +Enhancements +------------ +* Removed automatic registration of ARC2 and librdf parsers and serialisers +** You must now specifically choose the parser or serialiser +* Refactored `EasyRdf_Literal` with datatypes so that it preserves exact value +* Changed Turtle serialiser to not escape Unicode characters unnecessarily +* Fix for escaping literals objects in Turtle serialiser +* Added a new static function `newAndLoad()` to `EasyRdf_Graph` +* Added setters for each of the components of the URI to the class `EasyRdf_ParsedUri` +* Added option to the converter example, to allow raw output, without any HTML + +Bug Fixes +--------- +* Fixed broken Redland parser (thanks to Jon Phipps) +* Fix for serialising two bnodes that reference each other in Turtle +* Added support for parsing literals with single quotes in Turtle +* Removed require for EasyRdf/Exception.php +* Fix for serialising `EasyRdf_Literal_DateTime` to Turtle +* Fix for serialising Turtle literals with a shorthand syntax +* Several typo fixes and minor corrections + + +EasyRdf 0.7.1 +============= + +Enhancements +------------ +* Changed minimum version of PHPUnit to 3.5.15 +* Added RDFa namespace +* Added Open Graph Protocol namespace +* Made improvements to formatting of the Turtle serialiser +* Added new splitUri() function to EasyRdf_Namespace +* Made improvements to format guessing + +Bug Fixes +--------- +* Fix for RDF/XML parser not returning the number of triples +* Added re-mapping of b-nodes to N-Triples and Redland parsers + + +EasyRdf 0.7.0 +============= + +API Changes +----------- +* You must now wrap full property URIs in angle brackets + +Major new features +------------------ +* Added a new pure-PHP Turtle parser +* Added basic property-path support for traversing graphs +* Added support for serialising to the GraphViz dot format (and generating images) +* Added a new class `EasyRdf_ParsedUri` - a RFC3986 compliant URI parser + +Enhancements +------------ +* The load() function in `EasyRdf_Graph` no-longer takes a $data argument +* The parse() and load() methods, now return the number of triples parsed +* Added count() method to `EasyRdf_Resource` and `EasyRdf_Graph` +* Added localName() method to `EasyRdf_Resource` +* Added htmlLink() method to `EasyRdf_Resource` +* Added methods deleteResource() and deleteLiteral() to `EasyRdf_Graph` +* Added support for guessing the file format based on the file extension +* Performance improvements to built-in serialisers + +Environment changes +------------------- +* Added PHP Composer description to the project +* Now properly PSR-0 autoloader compatible +* New minimum version of PHP is 5.2.8 +* Changed test suite to require PHPUnit 3.6 +* Changed from Phing to GNU Make based build system +* Added automated testing of the examples + +Bug Fixes +--------- +* Fix for loading https:// URLs +* Fix for storing the value 0 in a `EasyRdf_Graph` +* Fix for HTTP servers that return relative URIs in the Location header +* Fix for Literals with languages in the SPARQL Query Results XML Format +* Fix for SPARQL servers that put extra whitespace into the XML result +* Fix for the httpget.php example in PHP 5.4+ + + +EasyRdf 0.6.3 +============= +* Added $graph->parseFile() method. +* Added support for SSL (https) to the built-in HTTP client +* Fixes for HTTP responses with a charset parameter in the Content Type. +* Improved error handling and empty documents in JSON and rapper parsers. +* Added connivence class for xsd:hexBinary literals: + - `EasyRdf_Literal_HexBinary` +* Made EasyRdf more tolerant of 'badly serialised bnodes' +* Fix for SPARQL servers that return charset in the MIME Type. +* Fix for using xml:lang in SPARQL 1.1 Query Results JSON Format +* Changed datetime ISO formatting to use 'Z' instead of +0000 for UTC dateTimes +* Added the namespace for 'The Cert Ontology' to EasyRdf. + + +EasyRdf 0.6.2 +============= +* Bug fix for missing triples in the RDF/XML serialiser. +* Added countTriples() method to `EasyRdf_Graph`. +* Re-factored the mechanism for mapping RDF datatypes to PHP classes. +* Added subclasses of `EasyRdf_Literal` for various XSD datatypes: + - `EasyRdf_Literal_Boolean` + - `EasyRdf_Literal_Date` + - `EasyRdf_Literal_DateTime` + - `EasyRdf_Literal_Decimal` + - `EasyRdf_Literal_Integer` +* Made the Redland based parser write triples directly to `EasyRdf_Graph` +* Added support for datatypes and languages in the `EasyRdf_Parser_Ntriples` parser. +* Fix for parsing XML Literals in RDF/XML + + +EasyRdf 0.6.1 +============= +* Updated API documentation for new classes and methods added in 0.6.0 +* Added a description to the top of the source code for each example. +* Changed the generated bnode identifier names from eidXXX to genidXXX. +* Implemented inlining of resources in the RDF/XML serialiser. +* Added new reversePropertyUris() method to `EasyRdf_Graph` and `EasyRdf_Resource`. +* Added addType() and setType() to `EasyRdf_Resource`. +* Added a textarea to the converter example. +* Added support for parsing the json-triples format. +* Renamed `EasyRdf_SparqlClient` to `EasyRdf_Sparql_Client` +* Renamed `EasyRdf_SparqlResult` to `EasyRdf_Sparql_Result` +* Fix for $graph->isEmpty() failing after adding and deleting some triples +* Added new `EasyRdf_DatatypeMapper` class that allows you to map RDF datatypes to PHP classes. +* Renamed guessDatatype() to getDatatypeForValue() in `EasyRdf_Literal`. +* Added getResource() and allResources() to `EasyRdf_Graph` and `EasyRdf_Resource` +* Implemented value casting in literals based on the datatype. + + +EasyRdf 0.6.0 +============= +* Major re-factor of the way data is stored internally in `EasyRdf_Graph`. +* Parsing and serialising is now much faster and will enable further optimisations. +* API is mostly backwards-compatible apart from: + - Changed inverse property operator from - to ^ to match Sparql 1.1 property paths. + - New `EasyRdf_Graphs` will not automatically be loaded on creation + You must now call $graph->load(); + - Setting the default HTTP client is now part of a new `EasyRdf_Http` class + - It is no-longer possible to add multiple properties at once using an associative array. +* Added methods to `EasyRdf_Graph` for direct manipulation of triples. +* Added new `EasyRdf_GraphStore` - class for fetching, saving and deleting graphs to a Graph Store over HTTP. +* Added new `EasyRdf_SparqlClient` and `EasyRdf_SparqlResult` - class for querying a SPARQL endpoint over HTTP. +* Added q values for each Mime-Type associated with an `EasyRdf_Format`. +* New example demonstrating integration with the Zend Framework. +* New `EasyRdf_HTTP_MockClient` class makes testing easier. + + +EasyRdf 0.5.2 +============= +* Added a built-in RDF/XML parser +* Made the RDF/XML serialiser use the rdf:type to open tags +* Added support for comments in the N-Triples parser +* Added new resolveUriReference() function to `EasyRdf_Utils` +* Added the application/rdf+json and text/rdf+n3 mime types + + +EasyRdf 0.5.1 +============= +* Bug fixes for PHP 5.2 + + +EasyRdf 0.5.0 +============= +* Added support for inverse properties. +* Updated RDF/XML and Turtle serialisers to create new namespaces if possible. +* Added new is_a($type) method to `EasyRdf_Resource`. +* Added support for passing an array of properties to the get() method. +* Added primaryTopic() method to `EasyRdf_Resource`. +* The function label() in `EasyRdf_Resource` will no longer attempted to shorten the URI, + if there is no label available. +* Resource types are now stored as resources, instead of shortened URIs. +* Added support for deleting a specific value for property to `EasyRdf_Resource`. +* Properties and datatypes are now stored as full URIs and not + converted to qnames during import. +* Change the TypeMapper to store full URIs internally. +* Added bibo and geo to the set of default namespaces. +* Improved bnode links in dump format +* Fix for converting non-string `EasyRdf_Literal` to string. +* Created an example that resolves UK postcodes using uk-postcodes.com. + + +EasyRdf 0.4.0 +============= +* Moved source code to Github +* Added an `EasyRdf_Literal` class +* Added proper support for Datatypes and Languages +* Added built-in RDF/XML serialiser +* Added built-in Turtle serialiser +* Added a new `EasyRdf_Format` class to deal with mime types etc. +* finished a major refactoring of the Parser/Serialiser registration +* removed all parsing related code from `EasyRdf_Graph` +* Added a basic serialisation example +* Added additional common namespaces +* Test fixes + + +EasyRdf 0.3.0 +============= +* Generated Wiki pages from phpdoc +* Filtering of literals by language +* Moved parsers into `EasyRdf_Parser_XXX` namespace +* Added support for serialisation +* Wrote RDF generation example (foafmaker.php) +* Added built-in ntriples parser/generator +* Added built-in RDF/PHP serialiser +* Added built-in RDF/JSON serialiser +* Added SKOS and RSS to the set of default namespaces. + + +EasyRdf 0.2.0 +============= +* Added support for Redland PHP bindings +* Added support for n-triples document type. +* Improved blank node handing and added newBNode() method to `EasyRdf_Graph`. +* Add option to `EasyRdf_RapperParser` to choose location of rapper command +* Added Rails style HTML tag helpers to examples to make them simpler + + +EasyRdf 0.1.0 +============= +* First public release +* Support for ARC2 and Rapper +* Built-in HTTP Client +* API Documentation +* PHP Unit tests for every class. +* Several usage examples diff --git a/core/vendor/easyrdf/easyrdf/LICENSE.md b/core/vendor/easyrdf/easyrdf/LICENSE.md new file mode 100644 index 000000000000..274a8e6a3265 --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/LICENSE.md @@ -0,0 +1,23 @@ +LICENSE +======= + +Copyright (c) 2009-2011 Nicholas J Humfrey. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * The name of the author 'Nicholas J Humfrey" may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/core/vendor/easyrdf/easyrdf/Makefile b/core/vendor/easyrdf/easyrdf/Makefile new file mode 100644 index 000000000000..fe453680f146 --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/Makefile @@ -0,0 +1,136 @@ +PACKAGE = easyrdf +VERSION = $(shell php -r "print json_decode(file_get_contents('composer.json'))->version;") +distdir = $(PACKAGE)-$(VERSION) +PHP = $(shell which php) +COMPOSER_FLAGS=--no-ansi --no-interaction +PHPUNIT = vendor/bin/phpunit +PHPUNIT_FLAGS = -c config/phpunit.xml +PHPCS = vendor/bin/phpcs +PHPCS_FLAGS = --standard=./config/phpcs_ruleset.xml --encoding=utf8 --extensions=php +SAMI = vendor/bin/sami.php + +EXAMPLE_FILES = examples/*.php +SOURCE_FILES = lib/EasyRdf.php \ + lib/EasyRdf/*.php \ + lib/EasyRdf/*/*.php +TEST_FILES = test/*/*Test.php \ + test/*/*/*Test.php +TEST_SUPPORT = Makefile test/cli_example_wrapper.php \ + test/TestHelper.php \ + test/EasyRdf/TestCase.php \ + test/EasyRdf/Http/MockClient.php \ + test/EasyRdf/Serialiser/NtriplesArray.php \ + test/fixtures/* +DOC_FILES = composer.json \ + doap.rdf \ + docs/api \ + README.md \ + LICENSE.md \ + CHANGELOG.md + +DISTFILES = $(EXAMPLE_FILES) $(SOURCE_FILES) $(TEST_FILES) \ + $(TEST_SUPPORT) $(DOC_FILES) + +.DEFAULT: help +all: help + +# TARGET:test Run all the PHPUnit tests +.PHONY: test +test: $(PHPUNIT) + mkdir -p reports + $(PHP) $(PHPUNIT) $(PHPUNIT_FLAGS) + +# TARGET:test-examples Run PHPUnit tests for each of the examples +.PHONY: test-examples +test-examples: $(PHPUNIT) + mkdir -p reports + $(PHP) $(PHPUNIT) $(PHPUNIT_FLAGS) --testsuite "EasyRdf Examples" + +# TARGET:test-lib Run PHPUnit tests for the library +.PHONY: test-lib +test-lib: $(PHPUNIT) + mkdir -p reports + $(PHP) $(PHPUNIT) $(PHPUNIT_FLAGS) --testsuite "EasyRdf Library" + +# TARGET:coverage Run the library tests and generate a code coverage report +.PHONY: coverage +coverage: $(PHPUNIT) + mkdir -p reports/coverage + $(PHP) $(PHPUNIT) $(PHPUNIT_FLAGS) --coverage-html ./reports/coverage --testsuite "EasyRdf Library" + +# TARGET:apidocs Generate HTML API documentation +.PHONY: apidocs +apidocs: $(SAMI) + $(PHP) $(SAMI) update config/sami.php -n -v --force + +docs/api: apidocs + +doap.rdf: doap.php composer.json + $(PHP) doap.php > doap.rdf + +# TARGET:cs Check the code style of the PHP source code +.PHONY: cs +cs: $(PHPCS) + $(PHPCS) $(PHPCS_FLAGS) lib test + +# TARGET:lint Perform basic PHP syntax check on all files +.PHONY: lint +lint: $(EXAMPLE_FILES) $(SOURCE_FILES) $(TEST_FILES) + @for file in $^; do \ + $(PHP) -l $$file || exit -1; \ + done + +# TARGET:dist Build tarball for distribution +.PHONY: dist +dist: $(distdir) + tar zcf $(distdir).tar.gz $(distdir) + rm -Rf $(distdir) + @echo "Created $(distdir).tar.gz" + +$(distdir): $(DISTFILES) + @for file in $^; do \ + dir=$(distdir)/`dirname "$$file"`; \ + test -d "$$dir" || mkdir -p "$$dir" || exit -1; \ + cp -Rfp "$$file" "$(distdir)/$$file" || exit -1; \ + done + +# TARGET:clean Delete any temporary and generated files +.PHONY: clean +clean: + -rm -Rf $(distdir) reports vendor + -rm -Rf docs/api samicache + -rm -f composer.phar composer.lock + -rm -f doap.rdf + +# TARGET:check-fixme Scan for files containing the words TODO or FIXME +.PHONY: check-fixme +check-fixme: + @git grep -n -E 'FIXME|TODO' || echo "No FIXME or TODO lines found." + +# TARGET:help You're looking at it! +.PHONY: help +help: + # Usage: + # make <target> [OPTION=value] + # + # Targets: + @egrep "^# TARGET:" [Mm]akefile | sed 's/^# TARGET:/# /' + # + # Options: + # PHP Path to php + + + +# Composer rules +composer.phar: + curl -s -z composer.phar -o composer.phar http://getcomposer.org/composer.phar + +composer-install: composer.phar + $(PHP) composer.phar $(COMPOSER_FLAGS) install --dev + +composer-update: clean composer.phar + $(PHP) composer.phar $(COMPOSER_FLAGS) update --dev + +vendor/bin/phpunit: composer-install +vendor/bin/phpcs: composer-install +vendor/bin/sami.php: composer-install diff --git a/core/vendor/easyrdf/easyrdf/README.md b/core/vendor/easyrdf/easyrdf/README.md new file mode 100644 index 000000000000..3a71ccdda119 --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/README.md @@ -0,0 +1,136 @@ +EasyRdf +======= +EasyRdf is a PHP library designed to make it easy to consume and produce [RDF]. +It was designed for use in mixed teams of experienced and inexperienced RDF +developers. It is written in Object Oriented PHP and has been tested +extensively using PHPUnit. + +After parsing EasyRdf builds up a graph of PHP objects that can then be walked +around to get the data to be placed on the page. Dump methods are available to +inspect what data is available during development. + +Data is typically loaded into a [EasyRdf_Graph] object from source RDF +documents, loaded from the web via HTTP. The [EasyRdf_GraphStore] class +simplifies loading and saving data to a SPARQL 1.1 Graph Store. + +SPARQL queries can be made over HTTP to a Triplestore using the +[EasyRdf_Sparql_Client] class. SELECT and ASK queries will return an +[EasyRdf_Sparql_Result] object and CONSTRUCT and DESCRIBE queries will return +an [EasyRdf_Graph] object. + +### Example ### + + $foaf = new EasyRdf_Graph("http://njh.me/foaf.rdf"); + $foaf->load(); + $me = $foaf->primaryTopic(); + echo "My name is: ".$me->get('foaf:name')."\n"; + + +Downloads +--------- + +The latest version of EasyRdf can be [downloaded from GitHub]. + + +Links +----- + +* [EasyRdf Homepage](http://www.easyrdf.org/) +* [API documentation](http://www.easyrdf.org/docs/api/) +* [Change Log](http://github.com/njh/easyrdf/blob/master/CHANGELOG.md) +* Source Code: <http://github.com/njh/easyrdf> +* Issue Tracker: <http://github.com/njh/easyrdf/issues> + + +Requirements +------------ + +* PHP 5.2.8 or higher + + +Features +-------- + +* API documentation written in phpdoc +* Extensive unit tests written using phpunit + * Automated testing against PHP 5.2, 5.3 and 5.4 +* Built-in parsers and serialisers: RDF/JSON, N-Triples, RDF/XML, Turtle +* Optional parsing support for: [ARC2], [Redland Bindings], [rapper] +* Optional support for [Zend_Http_Client] +* No required external dependancies upon other libraries (PEAR, Zend, etc...) +* Complies with Zend Framework coding style. +* Type mapper - resources of type foaf:Person can be mapped into PHP object of class Foaf_Person +* Support for visualisation of graphs using [GraphViz] +* Comes with a number of examples + + +Property Paths +-------------- + +EasyRdf supports querying the data in a graph using basic property paths. +This is a small subset of the property paths described in [SPARQL 1.1 query language]. + + +You may use the caret character (^) to get an inverse property, for example: + + $person = $homepage->get('^foaf:homepage'); + +You can use the pipe character (|) to get alternate properties, for example: + + $title = $document->get('dc:title|dc11:title'); + +You can use a forward slash (/) to follow a property sequence, for example to get +the names of all my friends: + + $names = $me->all('foaf:knows/foaf:name'); + +Finally, in order to use a full property URI, enclose it in angle brackets: + + $name = $me->get('<http://xmlns.com/foaf/0.1/name>'); + + +More Examples +------------- + +* [artistinfo.php](https://github.com/njh/easyrdf/blob/master/examples/artistinfo.php#slider) - Example of mapping an RDF class type to a PHP Class +* [basic.php](https://github.com/njh/easyrdf/blob/master/examples/basic.php#slider) - Basic "Hello World" type example +* [basic_sparql.php](https://github.com/njh/easyrdf/blob/master/examples/basic_sparql.php#slider) - Example of making a SPARQL SELECT query +* [converter.php](https://github.com/njh/easyrdf/blob/master/examples/converter.php#slider) - Convert RDF from one format to another +* [dump.php](https://github.com/njh/easyrdf/blob/master/examples/dump.php#slider) - Display the contents of a graph +* [foafinfo.php](https://github.com/njh/easyrdf/blob/master/examples/foafinfo.php#slider) - Display the basic information in a FOAF document +* [foafmaker.php](https://github.com/njh/easyrdf/blob/master/examples/foafmaker.php#slider) - Construct a FOAF document with a choice of serialisations +* [graph_direct.php](https://github.com/njh/easyrdf/blob/master/examples/graph_direct.php#slider) - Example of using EasyRdf_Graph directly without EasyRdf_Resource +* [graphstore.php](https://github.com/njh/easyrdf/blob/master/examples/graphstore.php#slider) - Store and retrieve data from a SPARQL 1.1 Graph Store +* [graphviz.php](https://github.com/njh/easyrdf/blob/master/examples/graphviz.php#slider) - GraphViz rendering example +* [html_tag_helpers.php](https://github.com/njh/easyrdf/blob/master/examples/html_tag_helpers.php#slider) - Rails Style html tag helpers to make the EasyRdf examples simplier +* [httpget.php](https://github.com/njh/easyrdf/blob/master/examples/httpget.php#slider) - No RDF, just test EasyRdf_Http_Client +* [serialise.php](https://github.com/njh/easyrdf/blob/master/examples/serialise.php#slider) - Basic serialisation example +* [sparql_queryform.php](https://github.com/njh/easyrdf/blob/master/examples/sparql_queryform.php#slider) - Form to submit SPARQL queries and display the result +* [uk_postcode.php](https://github.com/njh/easyrdf/blob/master/examples/uk_postcode.php#slider) - Example of resolving UK postcodes using uk-postcodes.com +* [villages.php](https://github.com/njh/easyrdf/blob/master/examples/villages.php#slider) - Fetch and information about villages in Fife from dbpedialite.org +* [zend_framework.php](https://github.com/njh/easyrdf/blob/master/examples/zend_framework.php#slider) - Example of using Zend_Http_Client and Zend_Loader_Autoloader with EasyRdf + + +Licensing +--------- + +The EasyRdf library and tests are licensed under the [BSD-3-Clause] license. +The examples are in the public domain, for more information see [UNLICENSE]. + + + +[EasyRdf_Graph]:http://www.easyrdf.org/docs/api/EasyRdf_Graph.html +[EasyRdf_GraphStore]:http://www.easyrdf.org/docs/api/EasyRdf_GraphStore.html +[EasyRdf_Sparql_Client]:http://www.easyrdf.org/docs/api/EasyRdf_Sparql_Client.html +[EasyRdf_Sparql_Result]:http://www.easyrdf.org/docs/api/EasyRdf_Sparql_Result.html + +[ARC2]:http://github.com/semsol/arc2/ +[BSD-3-Clause]:http://www.opensource.org/licenses/BSD-3-Clause +[downloaded from github]:https://github.com/njh/easyrdf/downloads +[GraphViz]:http://www.graphviz.org/ +[rapper]:http://librdf.org/raptor/rapper.html +[RDF]:http://en.wikipedia.org/wiki/Resource_Description_Framework +[Redland Bindings]:http://librdf.org/bindings/ +[SPARQL 1.1 query language]:http://www.w3.org/TR/sparql11-query/ +[UNLICENSE]:http://unlicense.org/ +[Zend_Http_Client]:http://framework.zend.com/manual/en/zend.http.client.html diff --git a/core/vendor/easyrdf/easyrdf/composer.json b/core/vendor/easyrdf/easyrdf/composer.json new file mode 100644 index 000000000000..8ce254edec34 --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/composer.json @@ -0,0 +1,36 @@ +{ + "name": "easyrdf/easyrdf", + "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.", + "version": "0.8.0", + "type": "library", + "keywords": ["RDF", "Semantic Web", "Linked Data", "Turtle", "RDFa"], + "homepage": "http://www.easyrdf.org/", + "license": "BSD-3-Clause", + "authors": [ + { + "name": "Nicholas Humfrey", + "email": "njh@aelius.com", + "homepage": "http://www.aelius.com/njh/", + "role": "Developer" + } + ], + "support": { + "forum": "http://groups.google.com/group/easyrdf/", + "issues": "http://github.com/njh/easyrdf/issues", + "irc": "irc://chat.freenode.net/easyrdf" + }, + "require": { + "php": ">=5.2.8" + }, + "require-dev": { + "phpunit/PHPUnit": ">=3.5.15", + "squizlabs/php_codesniffer": ">=1.4.3", + "sami/sami": "dev-master" + }, + "replace": { + "njh/easyrdf": "self.version" + }, + "autoload": { + "psr-0": { "EasyRdf_": "lib/" } + } +} diff --git a/core/vendor/easyrdf/easyrdf/doap.php b/core/vendor/easyrdf/easyrdf/doap.php new file mode 100644 index 000000000000..60274ff9ca01 --- /dev/null +++ b/core/vendor/easyrdf/easyrdf/doap.php @@ -0,0 +1,46 @@ +<?php + set_include_path(get_include_path() . PATH_SEPARATOR . './lib/'); + require_once "EasyRdf.php"; + + // Load some properties from the composer file + $composer = json_decode(file_get_contents('composer.json')); + + // Start building up a RDF graph + $doap = new EasyRdf_Graph($composer->homepage.'doap.rdf'); + $easyrdf = $doap->resource('#easyrdf', 'doap:Project', 'foaf:Project'); + $easyrdf->addLiteral('doap:name', 'EasyRDF'); + $easyrdf->addLiteral('doap:shortname', 'easyrdf'); + $easyrdf->addLiteral('doap:revision', $composer->version); + $easyrdf->addLiteral('doap:shortdesc', $composer->description, 'en'); + $easyrdf->addResource('doap:homepage', $composer->homepage); + + $easyrdf->addLiteral('doap:programming-language', 'PHP'); + $easyrdf->addLiteral( + 'doap:description', 'EasyRdf is a PHP library designed to make it easy to consume and produce RDF. '. + 'It was designed for use in mixed teams of experienced and inexperienced RDF developers. '. + 'It is written in Object Oriented PHP and has been tested extensively using PHPUnit.', 'en' + ); + $easyrdf->addResource('doap:license', 'http://usefulinc.com/doap/licenses/bsd'); + $easyrdf->addResource('doap:download-page', 'http://github.com/njh/easyrdf/downloads'); + $easyrdf->addResource('doap:download-page', 'http://github.com/njh/easyrdf/downloads'); + $easyrdf->addResource('doap:bug-database', 'http://github.com/njh/easyrdf/issues'); + $easyrdf->addResource('doap:mailing-list', 'http://groups.google.com/group/easyrdf'); + + $easyrdf->addResource('doap:category', 'http://dbpedia.org/resource/Resource_Description_Framework'); + $easyrdf->addResource('doap:category', 'http://dbpedia.org/resource/PHP'); + $easyrdf->addResource('doap:category', 'http://dbpedialite.org/things/24131#id'); + $easyrdf->addResource('doap:category', 'http://dbpedialite.org/things/53847#id'); + + $repository = $doap->newBNode('doap:GitRepository'); + $repository->addResource('doap:browse', 'http://github.com/njh/easyrdf'); + $repository->addResource('doap:location', 'git://github.com/njh/easyrdf.git'); + $easyrdf->addResource('doap:repository', $repository); + + $njh = $doap->resource('http://njh.me/', 'foaf:Person'); + $njh->addLiteral('foaf:name', 'Nicholas J Humfrey'); + $njh->addResource('foaf:homepage', 'http://www.aelius.com/njh/'); + $easyrdf->add('doap:maintainer', $njh); + $easyrdf->add('doap:developer', $njh); + $easyrdf->add('foaf:maker', $njh); + + print $doap->serialise('rdfxml'); diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Exception.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Exception.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Exception.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Exception.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Format.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Format.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Format.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Format.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Graph.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Graph.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Graph.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Graph.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/GraphStore.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/GraphStore.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/GraphStore.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/GraphStore.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Http.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Http.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Http/Client.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http/Client.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Http/Client.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http/Client.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Http/Response.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http/Response.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Http/Response.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Http/Response.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Boolean.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Boolean.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Boolean.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Boolean.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Date.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Date.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Date.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Date.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/DateTime.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/DateTime.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/DateTime.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/DateTime.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Decimal.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Decimal.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Decimal.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Decimal.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/HTML.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/HTML.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/HTML.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/HTML.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/HexBinary.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/HexBinary.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/HexBinary.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/HexBinary.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Integer.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Integer.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/Integer.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/Integer.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Literal/XML.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/XML.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Literal/XML.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Literal/XML.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Namespace.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Namespace.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Namespace.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Namespace.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/ParsedUri.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/ParsedUri.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/ParsedUri.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/ParsedUri.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Arc.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Arc.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Arc.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Arc.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Json.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Json.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Json.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Json.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Ntriples.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Ntriples.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Ntriples.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Ntriples.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Rapper.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Rapper.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Rapper.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Rapper.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/RdfPhp.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/RdfPhp.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/RdfPhp.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/RdfPhp.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/RdfXml.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/RdfXml.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/RdfXml.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/RdfXml.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Rdfa.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Rdfa.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Rdfa.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Rdfa.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Redland.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Redland.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Redland.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Redland.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Turtle.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Turtle.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Parser/Turtle.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Parser/Turtle.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Resource.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Resource.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Resource.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Resource.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Arc.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Arc.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Arc.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Arc.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/GraphViz.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/GraphViz.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/GraphViz.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/GraphViz.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Json.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Json.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Json.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Json.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Ntriples.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Ntriples.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Ntriples.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Ntriples.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Rapper.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Rapper.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Rapper.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Rapper.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/RdfPhp.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/RdfXml.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/RdfXml.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/RdfXml.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/RdfXml.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Turtle.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Turtle.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Serialiser/Turtle.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser/Turtle.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Sparql/Client.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Sparql/Client.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Sparql/Client.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Sparql/Client.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Sparql/Result.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Sparql/Result.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Sparql/Result.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Sparql/Result.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/TypeMapper.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/TypeMapper.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/TypeMapper.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/TypeMapper.php diff --git a/core/vendor/njh/easyrdf/lib/EasyRdf/Utils.php b/core/vendor/easyrdf/easyrdf/lib/EasyRdf/Utils.php similarity index 100% rename from core/vendor/njh/easyrdf/lib/EasyRdf/Utils.php rename to core/vendor/easyrdf/easyrdf/lib/EasyRdf/Utils.php diff --git a/core/vendor/guzzle/common/Guzzle/Common/Collection.php b/core/vendor/guzzle/common/Guzzle/Common/Collection.php index b82df138164f..d0857b2cc7f9 100644 --- a/core/vendor/guzzle/common/Guzzle/Common/Collection.php +++ b/core/vendor/guzzle/common/Guzzle/Common/Collection.php @@ -355,21 +355,36 @@ public function set($key, $value) */ public function inject($input) { - // Only perform the preg callback if needed - return strpos($input, '{') === false - ? $input - : preg_replace_callback('/{\s*([A-Za-z_\-\.0-9]+)\s*}/', array($this, 'getPregMatchValue'), $input); + $replace = array(); + foreach ($this->data as $key => $val) { + $replace['{' . $key . '}'] = $val; + } + + return strtr($input, $replace); } /** - * Return a collection value for a match array of a preg_replace function + * Gets a value from the collection using an array path (e.g. foo/baz/bar would retrieve bar from two nested arrays) * - * @param array $matches preg_replace* matches + * @param string $path Path to traverse and retrieve a value from + * @param string $separator Character used to add depth to the search * - * @return mixed + * @return mixed|null */ - public function getPregMatchValue(array $matches) + public function getPath($path, $separator = '/') { - return $this->get($matches[1]); + $parts = explode($separator, $path); + $data = &$this->data; + + // Using an iterative approach rather than recursion for speed + while (null !== ($part = array_shift($parts))) { + // Return null if this path doesn't exist or if there's more depth and the value is not an array + if (!isset($data[$part]) || ($parts && !is_array($data[$part]))) { + return null; + } + $data = &$data[$part]; + } + + return $data; } } diff --git a/core/vendor/guzzle/common/Guzzle/Common/Exception/ExceptionCollection.php b/core/vendor/guzzle/common/Guzzle/Common/Exception/ExceptionCollection.php index 52473e8eeaec..76d499ec1d68 100644 --- a/core/vendor/guzzle/common/Guzzle/Common/Exception/ExceptionCollection.php +++ b/core/vendor/guzzle/common/Guzzle/Common/Exception/ExceptionCollection.php @@ -12,6 +12,20 @@ class ExceptionCollection extends \Exception implements GuzzleException, \Iterat */ protected $exceptions = array(); + /** + * Set all of the exceptions + * + * @param array $exceptions Array of exceptions + * + * @return self + */ + public function setExceptions(array $exceptions) + { + $this->exceptions = $exceptions; + + return $this; + } + /** * Add exceptions to the collection * @@ -55,4 +69,14 @@ public function getIterator() { return new \ArrayIterator($this->exceptions); } + + /** + * Get the first exception in the collection + * + * @return \Exception + */ + public function getFirst() + { + return $this->exceptions ? $this->exceptions[0] : null; + } } diff --git a/core/vendor/guzzle/common/Guzzle/Common/Version.php b/core/vendor/guzzle/common/Guzzle/Common/Version.php index 5383311daf14..8fd9512943a5 100644 --- a/core/vendor/guzzle/common/Guzzle/Common/Version.php +++ b/core/vendor/guzzle/common/Guzzle/Common/Version.php @@ -7,6 +7,5 @@ */ class Version { - const VERSION = '3.0.5'; + const VERSION = '3.1.0'; } - diff --git a/core/vendor/guzzle/common/Guzzle/Common/composer.json b/core/vendor/guzzle/common/Guzzle/Common/composer.json index 62431ccd9727..5693c4d4d45a 100644 --- a/core/vendor/guzzle/common/Guzzle/Common/composer.json +++ b/core/vendor/guzzle/common/Guzzle/Common/composer.json @@ -11,5 +11,10 @@ "autoload": { "psr-0": { "Guzzle\\Common": "" } }, - "target-dir": "Guzzle/Common" + "target-dir": "Guzzle/Common", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + } } diff --git a/core/vendor/guzzle/http/Guzzle/Http/Client.php b/core/vendor/guzzle/http/Guzzle/Http/Client.php index 2bb814f3ab48..d38ae144aa55 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Client.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Client.php @@ -75,7 +75,7 @@ public function __construct($baseUrl = '', $config = null) // Allow ssl.certificate_authority config setting to control the certificate authority used by curl $authority = $this->config->get(self::SSL_CERT_AUTHORITY); // Use the system's cacert if in a phar (curl can't read from a phar stream wrapper) - if (strpos(__FILE__, 'phar://') === false && $authority === true) { + if (strpos(__FILE__, 'phar://') !== false && (null === $authority || $authority === true)) { $authority = 'system'; } // Set the config setting to system to use the certificate authority bundle on your system @@ -362,18 +362,13 @@ public function send($requests) try { $curlMulti->send(); } catch (ExceptionCollection $e) { - throw $multipleRequests ? $e : $e->getIterator()->offsetGet(0); + throw $multipleRequests ? $e : $e->getFirst(); } if (!$multipleRequests) { return end($requests)->getResponse(); } else { - return array_map( - function ($request) { - return $request->getResponse(); - }, - $requests - ); + return array_map(function ($request) { return $request->getResponse(); }, $requests); } } diff --git a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlHandle.php b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlHandle.php index ffb704cc32f0..53cfbfcf0c25 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlHandle.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlHandle.php @@ -208,7 +208,6 @@ public static function factory(RequestInterface $request) // Apply the options to a new cURL handle. $handle = curl_init(); curl_setopt_array($handle, $curlOptions); - $request->getParams()->set('curl.last_options', $curlOptions); if ($tempContentLength) { $request->setHeader('Content-Length', $tempContentLength); diff --git a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMulti.php b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMulti.php index 3744d7ce7c1e..ceceb90e67f2 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMulti.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMulti.php @@ -3,7 +3,7 @@ namespace Guzzle\Http\Curl; use Guzzle\Common\AbstractHasDispatcher; -use Guzzle\Common\Exception\ExceptionCollection; +use Guzzle\Http\Exception\MultiTransferException; use Guzzle\Http\Exception\CurlException; use Guzzle\Http\Message\RequestInterface; @@ -126,7 +126,7 @@ public function __construct() class_exists('Guzzle\Http\Message\Response'); class_exists('Guzzle\Http\Exception\CurlException'); - $this->createMutliHandle(); + $this->createMultiHandle(); } /** @@ -246,7 +246,7 @@ public function reset($hard = false) } if ($hard) { - $this->createMutliHandle(); + $this->createMultiHandle(); } } @@ -257,10 +257,11 @@ public function send() { $this->scope++; $this->state = self::STATE_SENDING; + $requestsInScope = empty($this->requests[$this->scope]) ? array() : $this->requests[$this->scope]; // Only prepare and send requests that are in the current recursion scope // Only enter the main perform() loop if there are requests in scope - if (!empty($this->requests[$this->scope])) { + if ($requestsInScope) { // Any exceptions thrown from this event should break the entire flow of sending requests $this->dispatch(self::BEFORE_SEND, array( @@ -276,20 +277,14 @@ public function send() try { $this->perform(); } catch (\Exception $e) { - $this->exceptions[] = $e; + $this->exceptions[] = array('request' => null, 'exception' => $e); } } $this->scope--; - // Aggregate exceptions into an ExceptionCollection - $exceptionCollection = null; - if (!empty($this->exceptions)) { - $exceptionCollection = new ExceptionCollection('Errors during multi transfer'); - while ($e = array_shift($this->exceptions)) { - $exceptionCollection->add($e); - } - } + // Aggregate exceptions into a MultiTransferException if needed + $multiException = $this->buildMultiTransferException($requestsInScope); // Complete the transfer if this is not a nested scope if ($this->scope == -1) { @@ -299,8 +294,8 @@ public function send() } // Throw any exceptions that were encountered - if ($exceptionCollection) { - throw $exceptionCollection; + if ($multiException) { + throw $multiException; } } @@ -312,6 +307,43 @@ public function count() return count($this->all()); } + /** + * Build a MultiTransferException if needed + * + * @param array $requestsInScope All requests in the previous scope + * + * @return MultiTransferException|null + */ + protected function buildMultiTransferException(array $requestsInScope) + { + if (empty($this->exceptions)) { + return null; + } + + // Keep a list of all requests, and remove errored requests from the list + $store = new \SplObjectStorage(); + foreach ($requestsInScope as $request) { + $store->attach($request); + } + + $multiException = new MultiTransferException('Errors during multi transfer'); + while ($e = array_shift($this->exceptions)) { + $multiException->add($e['exception']); + if (isset($e['request'])) { + $multiException->addFailedRequest($e['request']); + // Remove from the total list so that it becomes a list of successful requests + unset($store[$e['request']]); + } + } + + // Add successful requests + foreach ($store as $request) { + $multiException->addSuccessfulRequest($request); + } + + return $multiException; + } + /** * Prepare for sending * @@ -379,43 +411,53 @@ protected function perform() // Create the polling event external to the loop $event = array('curl_multi' => $this); + $active = $this->executeHandles(); while (1) { - $active = $this->executeHandles(); - - // Get messages from curl handles - while ($done = curl_multi_info_read($this->multiHandle)) { - $request = $this->resourceHash[(int) $done['handle']]; - $handle = $this->handles[$request]; - try { - $this->processResponse($request, $handle, $done); - } catch (\Exception $e) { - $this->removeErroredRequest($request, $e); - } - } - - // Notify each request as polling and handled queued responses - $scopedPolling = $this->scope <= 0 ? $this->all() : $this->requests[$this->scope]; + $this->processMessages(); // Exit the function if there are no more requests to send - if (empty($scopedPolling)) { + if (!($scopedPolling = $this->scope <= 0 ? $this->all() : $this->requests[$this->scope])) { break; } - // Notify all requests that requests are being polled + // Notify each request as polling + $blocking = $total = 0; foreach ($scopedPolling as $request) { $event['request'] = $request; $request->dispatch(self::POLLING_REQUEST, $event); + ++$total; + // The blocking variable just has to be non-falsey to block the loop + if ($request->getParams()->hasKey(self::BLOCKING)) { + ++$blocking; + } } - if ($active) { - // Select the curl handles until there is any activity on any of the open file descriptors - // See https://github.com/php/php-src/blob/master/ext/curl/multi.c#L170 - $active = $this->executeHandles(true, 0.1); - } else { + if ($blocking == $total) { // Sleep to prevent eating CPU because no requests are actually pending a select call usleep(500); + } else { + // Select the curl handles until there is any activity on any of the open file descriptors + // See https://github.com/php/php-src/blob/master/ext/curl/multi.c#L170 + $active = $this->executeHandles(true, 0.02, $active); + } + } + } + + /** + * Process any received curl multi messages + */ + private function processMessages() + { + // Get messages from curl handles + while ($done = curl_multi_info_read($this->multiHandle)) { + try { + $request = $this->resourceHash[(int) $done['handle']]; + $handle = $this->handles[$request]; + $this->processResponse($request, $handle, $done); + } catch (\Exception $e) { + $this->removeErroredRequest($request, $e); } } } @@ -425,29 +467,27 @@ protected function perform() * * @param bool $select Set to TRUE to select the file descriptors * @param int $timeout Select timeout in seconds + * @param int $active Previous active value * * @return int Returns the number of active handles */ - private function executeHandles($select = false, $timeout = 1) + private function executeHandles($select = false, $timeout = 1, $active = 0) { - $active = $selectResult = 0; - do { - - if ($select) { - $selectResult = curl_multi_select($this->multiHandle, $timeout); - } - - if ($selectResult === 0) { - do { - $mrc = curl_multi_exec($this->multiHandle, $active); - } while ($mrc == CURLM_CALL_MULTI_PERFORM); - // Check the return value to ensure an error did not occur - $this->checkCurlResult($mrc); + // @codeCoverageIgnoreStart + if ($select && $active && curl_multi_select($this->multiHandle, $timeout) == -1) { + // Perform a usleep if a previously executed select returned -1 + // @see https://bugs.php.net/bug.php?id=61141 + usleep(125); } - + // @codeCoverageIgnoreEnd + do { + $mrc = curl_multi_exec($this->multiHandle, $active); + } while ($mrc == CURLM_CALL_MULTI_PERFORM); + // Check the return value to ensure an error did not occur + $this->checkCurlResult($mrc); // Poll once if not selecting, or poll until there are no handles with activity - } while ($select && $active && $selectResult == 0); + } while ($select && $active); return $active; } @@ -460,7 +500,7 @@ private function executeHandles($select = false, $timeout = 1) */ protected function removeErroredRequest(RequestInterface $request, \Exception $e) { - $this->exceptions[] = $e; + $this->exceptions[] = array('request' => $request, 'exception' => $e); $this->remove($request); $request->setState(RequestInterface::STATE_ERROR); $this->dispatch(self::MULTI_EXCEPTION, array( @@ -490,7 +530,7 @@ protected function processResponse(RequestInterface $request, CurlHandle $handle $this->removeHandle($request); if (!$curlException) { - $request->setState(RequestInterface::STATE_COMPLETE); + $request->setState(RequestInterface::STATE_COMPLETE, array('handle' => $handle)); // Only remove the request if it wasn't resent as a result of the state change if ($request->getState() != RequestInterface::STATE_TRANSFER) { $this->remove($request); @@ -552,11 +592,11 @@ private function isCurlException(RequestInterface $request, CurlHandle $handle, } $handle->setErrorNo($curl['result']); - $e = new CurlException(sprintf('[curl] %s: %s [url] %s [info] %s [debug] %s', - $handle->getErrorNo(), $handle->getError(), $handle->getUrl(), - var_export($handle->getInfo(), true), $handle->getStderr())); + $e = new CurlException(sprintf('[curl] %s: %s [url] %s', + $handle->getErrorNo(), $handle->getError(), $handle->getUrl())); $e->setCurlHandle($handle) ->setRequest($request) + ->setCurlInfo($handle->getInfo()) ->setError($handle->getError(), $handle->getErrorNo()); return $e; @@ -572,19 +612,17 @@ private function isCurlException(RequestInterface $request, CurlHandle $handle, private function checkCurlResult($code) { if ($code != CURLM_OK && $code != CURLM_CALL_MULTI_PERFORM) { - if (isset($this->multiErrors[$code])) { - $message = "cURL error: {$code} ({$this->multiErrors[$code][0]}): cURL message: {$this->multiErrors[$code][1]}"; - } else { - $message = 'Unexpected cURL error: ' . $code; - } - throw new CurlException($message); + throw new CurlException(isset($this->multiErrors[$code]) + ? "cURL error: {$code} ({$this->multiErrors[$code][0]}): cURL message: {$this->multiErrors[$code][1]}" + : 'Unexpected cURL error: ' . $code + ); } } /** * Create the new cURL multi handle with error checking */ - private function createMutliHandle() + private function createMultiHandle() { if ($this->multiHandle && is_resource($this->multiHandle)) { curl_multi_close($this->multiHandle); diff --git a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMultiInterface.php b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMultiInterface.php index 17cd684914c9..ff39a1a849ad 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMultiInterface.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Curl/CurlMultiInterface.php @@ -17,6 +17,7 @@ interface CurlMultiInterface extends HasDispatcherInterface, \Countable const ADD_REQUEST = 'curl_multi.add_request'; const REMOVE_REQUEST = 'curl_multi.remove_request'; const MULTI_EXCEPTION = 'curl_multi.exception'; + const BLOCKING = 'curl_multi.blocking'; const STATE_IDLE = 'idle'; const STATE_SENDING = 'sending'; diff --git a/core/vendor/guzzle/http/Guzzle/Http/Exception/CurlException.php b/core/vendor/guzzle/http/Guzzle/Http/Exception/CurlException.php index 39a54684bf4d..a6a744a74bb2 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Exception/CurlException.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Exception/CurlException.php @@ -7,11 +7,12 @@ /** * cURL request exception */ -class CurlException extends BadResponseException +class CurlException extends RequestException { private $curlError; private $curlErrorNo; private $handle; + private $curlInfo = array(); /** * Set the cURL error message @@ -56,7 +57,7 @@ public function getCurlHandle() /** * Get the associated cURL error message * - * @return string + * @return string|null */ public function getError() { @@ -66,10 +67,35 @@ public function getError() /** * Get the associated cURL error number * - * @return int + * @return int|null */ public function getErrorNo() { return $this->curlErrorNo; } + + /** + * Returns curl information about the transfer + * + * @return array + */ + public function getCurlInfo() + { + return $this->curlInfo; + } + + /** + * Set curl transfer information + * + * @param array $info Array of curl transfer information + * + * @return self + * @link http://php.net/manual/en/function.curl-getinfo.php + */ + public function setCurlInfo(array $info) + { + $this->curlInfo = $info; + + return $this; + } } diff --git a/core/vendor/guzzle/http/Guzzle/Http/Exception/MultiTransferException.php b/core/vendor/guzzle/http/Guzzle/Http/Exception/MultiTransferException.php new file mode 100644 index 000000000000..27e4e58bbab5 --- /dev/null +++ b/core/vendor/guzzle/http/Guzzle/Http/Exception/MultiTransferException.php @@ -0,0 +1,101 @@ +<?php + +namespace Guzzle\Http\Exception; + +use Guzzle\Common\Exception\ExceptionCollection; +use Guzzle\Http\Message\RequestInterface; + +/** + * Exception encountered during a multi transfer + */ +class MultiTransferException extends ExceptionCollection +{ + protected $successfulRequests = array(); + protected $failedRequests = array(); + + /** + * Get all of the requests in the transfer + * + * @return array + */ + public function getAllRequests() + { + return array_merge($this->successfulRequests, $this->failedRequests); + } + + /** + * Add to the array of successful requests + * + * @param RequestInterface $request Successful request + * + * @return self + */ + public function addSuccessfulRequest(RequestInterface $request) + { + $this->successfulRequests[] = $request; + + return $this; + } + + /** + * Add to the array of failed requests + * + * @param RequestInterface $request Failed request + * + * @return self + */ + public function addFailedRequest(RequestInterface $request) + { + $this->failedRequests[] = $request; + + return $this; + } + + /** + * Set all of the successful requests + * + * @param array Array of requests + * + * @return self + */ + public function setSuccessfulRequests(array $requests) + { + $this->successfulRequests = $requests; + + return $this; + } + + /** + * Set all of the failed requests + * + * @param array Array of requests + * + * @return self + */ + public function setFailedRequests(array $requests) + { + $this->failedRequests = $requests; + + return $this; + } + + /** + * Get an array of successful requests sent in the multi transfer + * + * @return array + */ + public function getSuccessfulRequests() + { + return $this->successfulRequests; + } + + /** + * Get an array of failed requests sent in the multi transfer + * + * @return array + */ + public function getFailedRequests() + { + return $this->failedRequests; + } +} diff --git a/core/vendor/guzzle/http/Guzzle/Http/IoEmittingEntityBody.php b/core/vendor/guzzle/http/Guzzle/Http/IoEmittingEntityBody.php new file mode 100644 index 000000000000..15193c1aee0d --- /dev/null +++ b/core/vendor/guzzle/http/Guzzle/Http/IoEmittingEntityBody.php @@ -0,0 +1,100 @@ +<?php + +namespace Guzzle\Http; + +use Guzzle\Common\Event; +use Guzzle\Common\HasDispatcherInterface; +use Symfony\Component\EventDispatcher\EventDispatcher; +use Symfony\Component\EventDispatcher\EventSubscriberInterface; +use Symfony\Component\EventDispatcher\EventDispatcherInterface; + +/** + * EntityBody decorator that emits events for read and write methods + */ +class IoEmittingEntityBody extends AbstractEntityBodyDecorator implements HasDispatcherInterface +{ + /** + * @var EventDispatcherInterface + */ + protected $eventDispatcher; + + /** + * {@inheritdoc} + */ + public static function getAllEvents() + { + return array('body.read', 'body.write'); + } + + /** + * {@inheritdoc} + * @codeCoverageIgnore + */ + public function setEventDispatcher(EventDispatcherInterface $eventDispatcher) + { + $this->eventDispatcher = $eventDispatcher; + + return $this; + } + + /** + * {@inheritdoc} + */ + public function getEventDispatcher() + { + if (!$this->eventDispatcher) { + $this->eventDispatcher = new EventDispatcher(); + } + + return $this->eventDispatcher; + } + + /** + * {@inheritdoc} + */ + public function dispatch($eventName, array $context = array()) + { + $this->getEventDispatcher()->dispatch($eventName, new Event($context)); + } + + /** + * {@inheritdoc} + * @codeCoverageIgnore + */ + public function addSubscriber(EventSubscriberInterface $subscriber) + { + $this->getEventDispatcher()->addSubscriber($subscriber); + + return $this; + } + + /** + * {@inheritdoc} + */ + public function read($length) + { + $event = array( + 'body' => $this, + 'length' => $length, + 'read' => $this->body->read($length) + ); + $this->dispatch('body.read', $event); + + return $event['read']; + } + + /** + * {@inheritdoc} + */ + public function write($string) + { + $event = array( + 'body' => $this, + 'write' => $string, + 'result' => $this->body->write($string) + ); + $this->dispatch('body.write', $event); + + return $event['result']; + } +} diff --git a/core/vendor/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequest.php b/core/vendor/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequest.php index 21019e4c6f43..46bd51532485 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequest.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequest.php @@ -61,9 +61,9 @@ public function __toString() /** * {@inheritdoc} */ - public function setState($state) + public function setState($state, array $context = array()) { - parent::setState($state); + parent::setState($state, $context); if ($state == self::STATE_TRANSFER && !$this->body && !count($this->postFields) && !count($this->postFiles)) { $this->setHeader('Content-Length', 0)->removeHeader('Transfer-Encoding'); } diff --git a/core/vendor/guzzle/http/Guzzle/Http/Message/Request.php b/core/vendor/guzzle/http/Guzzle/Http/Message/Request.php index 59b7b0dbd72e..a41b93342ffb 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Message/Request.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Message/Request.php @@ -5,6 +5,7 @@ use Guzzle\Common\Event; use Guzzle\Common\Collection; use Guzzle\Common\Exception\RuntimeException; +use Guzzle\Common\Exception\InvalidArgumentException; use Guzzle\Http\Utils; use Guzzle\Http\Exception\RequestException; use Guzzle\Http\Exception\BadResponseException; @@ -456,13 +457,13 @@ public function getState() /** * {@inheritdoc} */ - public function setState($state) + public function setState($state, array $context = array()) { $this->state = $state; if ($this->state == self::STATE_NEW) { $this->response = null; } elseif ($this->state == self::STATE_COMPLETE) { - $this->processResponse(); + $this->processResponse($context); $this->responseBody = null; } @@ -542,9 +543,18 @@ public function setResponse(Response $response, $queued = false) /** * {@inheritdoc} */ - public function setResponseBody(EntityBodyInterface $body) + public function setResponseBody($body) { - $this->responseBody = $body; + // Attempt to open a file for writing if a string was passed + if (is_string($body)) { + // @codeCoverageIgnoreStart + if (!($body = fopen($body, 'w+'))) { + throw new InvalidArgumentException('Could not open ' . $body . ' for writing'); + } + // @codeCoverageIgnoreEnd + } + + $this->responseBody = EntityBody::factory($body); return $this; } @@ -715,9 +725,11 @@ protected function getEventArray() /** * Process a received response * + * @param array $context Contextual information + * * @throws BadResponseException on unsuccessful responses */ - protected function processResponse() + protected function processResponse(array $context = array()) { // Use the queued response if one is set if ($this->getParams()->get('queued_response')) { @@ -734,7 +746,7 @@ protected function processResponse() $this->state = self::STATE_COMPLETE; // A request was sent, but we don't know if we'll send more or if the final response will be successful - $this->dispatch('request.sent', $this->getEventArray()); + $this->dispatch('request.sent', $this->getEventArray() + $context); // Some response processors will remove the response or reset the state (example: ExponentialBackoffPlugin) if ($this->state == RequestInterface::STATE_COMPLETE) { diff --git a/core/vendor/guzzle/http/Guzzle/Http/Message/RequestInterface.php b/core/vendor/guzzle/http/Guzzle/Http/Message/RequestInterface.php index 05bafc513ce1..3928e4e0fcc9 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/Message/RequestInterface.php +++ b/core/vendor/guzzle/http/Guzzle/Http/Message/RequestInterface.php @@ -233,11 +233,12 @@ public function getState(); /** * Set the state of the request * - * @param string $state State of the request (complete, sending, or new) + * @param string $state State of the request (complete, sending, or new) + * @param array $context Contextual information about the state change * * @return RequestInterface */ - public function setState($state); + public function setState($state, array $context = array()); /** * Get the cURL options that will be applied when the cURL handle is created @@ -261,11 +262,11 @@ public function receiveResponseHeader($data); * This method should be invoked when you need to send the response's entity body somewhere other than the normal * php://temp buffer. For example, you can send the entity body to a socket, file, or some other custom stream. * - * @param EntityBodyInterface $body Response body object - * + * @param EntityBodyInterface|string|resource $body Response body object. Pass a string to attempt to store the + * response body in a local file. * @return Request */ - public function setResponseBody(EntityBodyInterface $body); + public function setResponseBody($body); /** * Determine if the response body is repeatable (readable + seekable) diff --git a/core/vendor/guzzle/http/Guzzle/Http/composer.json b/core/vendor/guzzle/http/Guzzle/Http/composer.json index a55a85540b21..b82400367618 100644 --- a/core/vendor/guzzle/http/Guzzle/Http/composer.json +++ b/core/vendor/guzzle/http/Guzzle/Http/composer.json @@ -13,6 +13,7 @@ ], "require": { "php": ">=5.3.2", + "ext-curl": "*", "guzzle/common": "self.version", "guzzle/parser": "self.version", "guzzle/stream": "self.version" @@ -20,5 +21,10 @@ "autoload": { "psr-0": { "Guzzle\\Http": "" } }, - "target-dir": "Guzzle/Http" + "target-dir": "Guzzle/Http", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + } } diff --git a/core/vendor/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplate.php b/core/vendor/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplate.php index 93ee40b63579..00d2310a60a6 100644 --- a/core/vendor/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplate.php +++ b/core/vendor/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplate.php @@ -186,7 +186,7 @@ private function expandMatch(array $matches) if (empty($variable)) { $actuallyUseQueryString = false; - } else if ($value['modifier'] == '*') { + } elseif ($value['modifier'] == '*') { $expanded = implode($joiner, $kvp); if ($isAssoc) { // Don't prepend the value name when using the explode modifier with an associative array diff --git a/core/vendor/guzzle/parser/Guzzle/Parser/composer.json b/core/vendor/guzzle/parser/Guzzle/Parser/composer.json index 898ff5098d91..9c10342426c7 100644 --- a/core/vendor/guzzle/parser/Guzzle/Parser/composer.json +++ b/core/vendor/guzzle/parser/Guzzle/Parser/composer.json @@ -10,5 +10,10 @@ "autoload": { "psr-0": { "Guzzle\\Parser": "" } }, - "target-dir": "Guzzle/Parser" + "target-dir": "Guzzle/Parser", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + } } diff --git a/core/vendor/guzzle/stream/Guzzle/Stream/composer.json b/core/vendor/guzzle/stream/Guzzle/Stream/composer.json index 6c2cc38b3182..99edfe89a176 100644 --- a/core/vendor/guzzle/stream/Guzzle/Stream/composer.json +++ b/core/vendor/guzzle/stream/Guzzle/Stream/composer.json @@ -18,5 +18,10 @@ "autoload": { "psr-0": { "Guzzle\\Stream": "" } }, - "target-dir": "Guzzle/Stream" + "target-dir": "Guzzle/Stream", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + } } -- GitLab