diff options
| -rw-r--r-- | .gitignore | 5 | ||||
| -rw-r--r-- | php-guzzlehttp-guzzle6-upstream-pull-1792.patch | 36 | ||||
| -rw-r--r-- | php-guzzlehttp-guzzle6.spec | 125 | 
3 files changed, 97 insertions, 69 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..13c9439 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +/php-guzzlehttp-guzzle6-6.1.1-c6851d6e48f63b69357cbfa55bca116448140e0c.tar.gz +/php-guzzlehttp-guzzle6-6.2.0-d094e337976dff9d8e2424e8485872194e768662.tar.gz +/php-guzzlehttp-guzzle6-6.2.1-3f808fba627f2c5b69e2501217bf31af349c1427.tar.gz +/php-guzzlehttp-guzzle6-6.2.2-ebf29dee597f02f09f4d5bbecc68230ea9b08f60.tar.gz +/php-guzzlehttp-guzzle6-6.2.3-8d6c6cc55186db87b7dc5009827429ba4e9dc006.tar.gz diff --git a/php-guzzlehttp-guzzle6-upstream-pull-1792.patch b/php-guzzlehttp-guzzle6-upstream-pull-1792.patch new file mode 100644 index 0000000..dbf6168 --- /dev/null +++ b/php-guzzlehttp-guzzle6-upstream-pull-1792.patch @@ -0,0 +1,36 @@ +From 60f134a2cd7149fa063bc797bc9db1d8ccdb4031 Mon Sep 17 00:00:00 2001 +From: Remi Collet <fedora@famillecollet.com> +Date: Thu, 30 Mar 2017 08:59:56 +0200 +Subject: [PATCH] Fix #1790 proxy should not end with / + +--- + src/Handler/StreamHandler.php       | 2 +- + tests/Handler/StreamHandlerTest.php | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/Handler/StreamHandler.php b/src/Handler/StreamHandler.php +index d36787a..1f868b8 100644 +--- a/src/Handler/StreamHandler.php ++++ b/src/Handler/StreamHandler.php +@@ -381,7 +381,7 @@ private function add_proxy(RequestInterface $request, &$options, $value, &$param +                         $value['no'] +                     ) +                 ) { +-                    $options['http']['proxy'] = $value[$scheme]; ++                    $options['http']['proxy'] = rtrim($value[$scheme], '/'); +                 } +             } +         } +diff --git a/tests/Handler/StreamHandlerTest.php b/tests/Handler/StreamHandlerTest.php +index c04a824..8449549 100644 +--- a/tests/Handler/StreamHandlerTest.php ++++ b/tests/Handler/StreamHandlerTest.php +@@ -272,7 +272,7 @@ public function testAddsProxyByProtocol() +         $url = str_replace('http', 'tcp', Server::$url); +         $res = $this->getSendResult(['proxy' => ['http' => $url]]); +         $opts = stream_context_get_options($res->getBody()->detach()); +-        $this->assertEquals($url, $opts['http']['proxy']); ++        $this->assertEquals(rtrim($url, '/'), $opts['http']['proxy']); +     } +  +     public function testAddsProxyButHonorsNoProxy() diff --git a/php-guzzlehttp-guzzle6.spec b/php-guzzlehttp-guzzle6.spec index 4d39d1c..2b437ab 100644 --- a/php-guzzlehttp-guzzle6.spec +++ b/php-guzzlehttp-guzzle6.spec @@ -2,7 +2,7 @@  #  # Fedora spec file for php-guzzlehttp-guzzle6  # -# Copyright (c) 2015-2016 Shawn Iwinski <shawn@iwin.ski> +# Copyright (c) 2015-2017 Shawn Iwinski <shawn@iwin.ski>  #  # License: MIT  # http://opensource.org/licenses/MIT @@ -12,8 +12,8 @@  %global github_owner     guzzle  %global github_name      guzzle -%global github_version   6.2.2 -%global github_commit    ebf29dee597f02f09f4d5bbecc68230ea9b08f60 +%global github_version   6.2.3 +%global github_commit    8d6c6cc55186db87b7dc5009827429ba4e9dc006  %global composer_vendor  guzzlehttp  %global composer_project guzzle @@ -23,21 +23,16 @@  # "guzzlehttp/promises": "^1.0"  %global promises_min_ver 1.0  %global promises_max_ver 2.0 -# "guzzlehttp/psr7": "^1.3.1" -%global psr7_min_ver     1.3.1 +# "guzzlehttp/psr7": "^1.4" +%global psr7_min_ver     1.4  %global psr7_max_ver     2.0  # "psr/log": "^1.0"  #     NOTE: Min version not 1.0 because autoloader required  %global psr_log_min_ver  1.0.1  %global psr_log_max_ver  2.0 -%if 0%{?rhel} == 5 -# no nodejs available in RHEL-5 -%global with_tests 0%{?_with_tests:1} -%else  # Build using "--without tests" to disable tests  %global with_tests 0%{!?_without_tests:1} -%endif  %{!?phpdir:    %global phpdir    %{_datadir}/php}  %{!?testsdir:  %global testsdir  %{_datadir}/tests} @@ -56,18 +51,25 @@ URL:           http://guzzlephp.org  Source0:       %{name}-%{github_version}-%{github_commit}.tar.gz  Source1:       %{name}-get-source.sh -BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# Proxy should not end with / +# https://github.com/guzzle/guzzle/pull/1792 +# https://github.com/guzzle/guzzle/pull/1792.patch +Patch0:        %{name}-upstream-pull-1792.patch +  BuildArch:     noarch  # Tests  %if %{with_tests}  BuildRequires: nodejs  ## composer.json -BuildRequires: php(language)                     >= %{php_min_ver} +BuildRequires: php(language) >= %{php_min_ver}  BuildRequires: php-composer(guzzlehttp/promises) >= %{promises_min_ver} -BuildRequires: php-composer(guzzlehttp/psr7)     >= %{psr7_min_ver} +BuildRequires: php-composer(guzzlehttp/promises) <  %{promises_max_ver} +BuildRequires: php-composer(guzzlehttp/psr7) >= %{psr7_min_ver} +BuildRequires: php-composer(guzzlehttp/psr7) <  %{psr7_max_ver}  BuildRequires: php-composer(phpunit/phpunit) -BuildRequires: php-composer(psr/log)             >= %{psr_log_min_ver} -## phpcompatinfo (computed from version 6.2.2) +BuildRequires: php-composer(psr/log) >= %{psr_log_min_ver} +BuildRequires: php-composer(psr/log) <  %{psr_log_max_ver} +## phpcompatinfo (computed from version 6.2.3)  BuildRequires: php-curl  BuildRequires: php-date  BuildRequires: php-filter @@ -77,23 +79,20 @@ BuildRequires: php-pcre  BuildRequires: php-reflection  BuildRequires: php-spl  BuildRequires: php-zlib -# Autoloader -## NOTE: Min version 2.5 because class -##       \Symfony\Component\ClassLoader\Psr4ClassLoader required -BuildRequires: php-composer(symfony/class-loader) >= 2.5 +## Autoloader +BuildRequires: php-composer(fedora/autoloader)  %endif -# use path as ca-certificates doesn't exists on EL-5 -Requires:      /etc/pki/tls/certs/ca-bundle.crt +Requires:      ca-certificates  # composer.json -Requires:      php(language)                     >= %{php_min_ver} +Requires:      php(language) >= %{php_min_ver}  Requires:      php-composer(guzzlehttp/promises) >= %{promises_min_ver}  Requires:      php-composer(guzzlehttp/promises) <  %{promises_max_ver} -Requires:      php-composer(guzzlehttp/psr7)     >= %{psr7_min_ver} -Requires:      php-composer(guzzlehttp/psr7)     <  %{psr7_max_ver} -Requires:      php-composer(psr/log)             >= %{psr_log_min_ver} -Requires:      php-composer(psr/log)             <  %{psr_log_max_ver} -# phpcompatinfo (computed from version 6.2.2) +Requires:      php-composer(guzzlehttp/psr7) >= %{psr7_min_ver} +Requires:      php-composer(guzzlehttp/psr7) <  %{psr7_max_ver} +Requires:      php-composer(psr/log) >= %{psr_log_min_ver} +Requires:      php-composer(psr/log) <  %{psr_log_max_ver} +# phpcompatinfo (computed from version 6.2.3)  Requires:      php-curl  Requires:      php-date  Requires:      php-filter @@ -101,9 +100,7 @@ Requires:      php-json  Requires:      php-pcre  Requires:      php-spl  # Autoloader -## NOTE: Min version 2.5 because class -## \Symfony\Component\ClassLoader\Psr4ClassLoader required -Requires:      php-composer(symfony/class-loader) >= 2.5 +Requires:      php-composer(fedora/autoloader)  # Composer  Provides:      php-composer(%{composer_vendor}/%{composer_project}) = %{version} @@ -129,6 +126,9 @@ Autoloader: %{phpdir}/GuzzleHttp6/autoload.php  %prep  %setup -qn %{github_name}-%{github_commit} +# Proxy should not end with / +%patch0 -p1 +  %build  : Create common autoloader @@ -138,29 +138,22 @@ cat <<'AUTOLOAD' | tee src/autoload.php   * Autoloader for %{name} and its' dependencies   * (created by %{name}-%{version}-%{release}).   */ +require_once '%{phpdir}/Fedora/Autoloader/autoload.php'; -if (!isset($fedoraPsr4ClassLoader) || !($fedoraPsr4ClassLoader instanceof \Symfony\Component\ClassLoader\Psr4ClassLoader)) { -    if (!class_exists('Symfony\\Component\\ClassLoader\\Psr4ClassLoader', false)) { -        require_once '%{phpdir}/Symfony/Component/ClassLoader/Psr4ClassLoader.php'; -    } - -    $fedoraPsr4ClassLoader = new \Symfony\Component\ClassLoader\Psr4ClassLoader(); -    $fedoraPsr4ClassLoader->register(true); -} - -$fedoraPsr4ClassLoader->addPrefix('GuzzleHttp\\', __DIR__); - +\Fedora\Autoloader\Autoload::addPsr4('GuzzleHttp\\', __DIR__);  require_once __DIR__.'/functions_include.php'; -require_once '%{phpdir}/GuzzleHttp/Promise/autoload.php'; -require_once '%{phpdir}/GuzzleHttp/Psr7/autoload.php'; -require_once '%{phpdir}/Psr/Log/autoload.php'; + +\Fedora\Autoloader\Dependencies::required([ +    '%{phpdir}/GuzzleHttp/Promise/autoload.php', +    '%{phpdir}/GuzzleHttp/Psr7/autoload.php', +    '%{phpdir}/Psr/Log/autoload.php', +]);  AUTOLOAD  %install -rm -rf %{buildroot} -mkdir -p %{buildroot}%{phpdir}/GuzzleHttp6 -cp -pr src/* %{buildroot}%{phpdir}/GuzzleHttp6/ +mkdir -p %{buildroot}%{phpdir} +cp -pr src %{buildroot}%{phpdir}/GuzzleHttp6  %check @@ -170,40 +163,27 @@ mkdir vendor  cat <<'AUTOLOAD' | tee vendor/autoload.php  <?php  require_once '%{buildroot}%{phpdir}/GuzzleHttp6/autoload.php'; -$fedoraPsr4ClassLoader->addPrefix('GuzzleHttp\\Tests\\', __DIR__.'/tests'); +\Fedora\Autoloader\Autoload::addPsr4('GuzzleHttp\\Tests\\', __DIR__.'/tests');  AUTOLOAD  : Skip tests known to fail  sed 's/function testDescribesType/function SKIP_testDescribesType/' \      -i tests/functionsTest.php -ret=0 -run=0 - -if which php71; then -   php71 %{_bindir}/phpunit --verbose || ret=1 -   run=1 -fi -if which php56; then -   php56 %{_bindir}/phpunit --verbose || ret=1 -   run=1 -fi -if [ $run -eq 0 ]; then -   %{_bindir}/phpunit --verbose || ret=1 -fi - -exit $ret +: Upstream tests +RETURN_CODE=0 +for PHP_EXEC in php php56 php70 php71; do +    if [ "php" == "$PHP_EXEC" ] || which $PHP_EXEC; then +        $PHP_EXEC %{_bindir}/phpunit --verbose +    fi +done +exit $RETURN_CODE  %else  : Tests skipped  %endif -%clean -rm -rf %{buildroot} - -  %files -%defattr(-,root,root,-)  %{!?_licensedir:%global license %%doc}  %license LICENSE  %doc *.md @@ -212,6 +192,13 @@ rm -rf %{buildroot}  %changelog +* Fri Apr 07 2017 Shawn Iwinski <shawn@iwin.ski> - 6.2.3-1 +- Update to 6.2.3 +- Fix rawhide (F27) FTBS +- Add max versions to BuildRequires +- Switch autoloader to php-composer(fedora/autoloader) +- Test with SCLs if available +  * Sun Oct 09 2016 Shawn Iwinski <shawn@iwin.ski> - 6.2.2-1  - Update to 6.2.2 (RHBZ #1383050)  | 
