# remirepo/fedora spec file for php-sabre-http5 # # Copyright (c) 2013-2019 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # # Github %global gh_commit f91c7d4437dcbc6f89c8b64e855e1544f4b60250 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner sabre-io %global gh_project http # Packagist %global pk_vendor sabre %global pk_project %{gh_project} # Namespace %global ns_vendor Sabre %global ns_project HTTP %global major 5 %global with_tests %{?_without_tests:0}%{!?_without_tests:1} Name: php-%{pk_vendor}-%{pk_project}%{major} Summary: Library for dealing with http requests and responses Version: 5.0.0 Release: 2%{?dist} URL: https://github.com/%{gh_owner}/%{gh_project} License: BSD Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{name}-%{version}-%{gh_short}.tar.gz BuildArch: noarch %if %{with_tests} BuildRequires: php(language) >= 7.0 BuildRequires: php-mbstring BuildRequires: php-ctype # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 BuildRequires: (php-composer(sabre/event) >= 4.0 with php-composer(sabre/event) < 6) BuildRequires: (php-composer(sabre/uri) >= 2.0 with php-composer(sabre/uri) < 3) # remirepo:4 %else BuildRequires: php-sabre-event5 BuildRequires: php-sabre-uri2 %endif BuildRequires: php-curl BuildRequires: php-date BuildRequires: php-hash BuildRequires: php-pcre BuildRequires: php-spl BuildRequires: php-xml # From composer.json, "require-dev" : { # "phpunit/phpunit" : ">=6.0.0", # "sabre/cs" : "~1.0.0" BuildRequires: phpunit6 %endif # Autoloader BuildRequires: php-fedora-autoloader-devel # From composer.json, "require" : { # "php" : ">=7.0", # "ext-mbstring" : "*", # "ext-ctype" : "*", # "sabre/event" : ">=4.0 <6.0", # "sabre/uri" : "~2.0" Requires: php(language) >= 7.0 Requires: php-mbstring Requires: php-ctype # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 Requires: (php-composer(sabre/event) >= 4.0 with php-composer(sabre/event) < 6) Requires: (php-composer(sabre/uri) >= 2.0 with php-composer(sabre/uri) < 3) # remirepo:4 %else Requires: php-sabre-event5 Requires: php-sabre-uri2 %endif # From composer.json, "suggest" : { # "ext-curl" : " to make http requests with the Client class" Requires: php-curl # From phpcompatinfo report for version 5.0.0 Requires: php-date Requires: php-hash Requires: php-pcre Requires: php-spl Requires: php-xml # Autoloader Requires: php-composer(fedora/autoloader) # Was split from php-sabre-dav in version 1.9 Conflicts: php-sabre-dav < 1.9 Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} %description This library provides a toolkit to make working with the HTTP protocol easier. Most PHP scripts run within a HTTP request but accessing information about the HTTP request is cumbersome at least, mainly do to superglobals and the CGI standard. There's bad practices, inconsistencies and confusion. This library is effectively a wrapper around the following PHP constructs: For Input: $_GET $_POST $_SERVER php://input or $HTTP_RAW_POST_DATA. For output: php://output or echo. header() What this library provides, is a Request object, and a Response object. The objects are extendable and easily mockable. Autoloader: %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} phpab -t fedora -o lib/autoload.php lib cat << 'EOF' | tee -a lib/autoload.php // Dependencies \Fedora\Autoloader\Dependencies::required([ '%{_datadir}/php/Sabre/Event5/autoload.php', '%{_datadir}/php/Sabre/Uri2/autoload.php', ]); // Functions if (!function_exists('Sabre\\HTTP\\parseDate')) { require_once __DIR__ . '/functions.php'; } EOF %build # nothing to build %install # Install as a PSR-0 library mkdir -p %{buildroot}%{_datadir}/php/%{ns_vendor} cp -pr lib %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major} %check %if %{with_tests} cd tests ln -sf %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php bootstrap.php : Run upstream test suite against installed library ret=0 for cmd in php php71 php72 php73 php74; do if which $cmd; then $cmd %{_bindir}/phpunit6 --verbose || ret=1 fi done exit $ret %else : Skip upstream test suite %endif %files # remirepo:1 %{!?_licensedir:%global license %%doc} %license LICENSE %doc *md %doc composer.json %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major} %changelog * Fri Jul 5 2019 Remi Collet - 5.0.0-2 - fix autoloader * Fri Jul 5 2019 Remi Collet - 5.0.0-1 - update to 5.0.0 - rename to php-sabre-http5 - move to /usr/share/php/Sabre/HTTP5 - raise dependency on PHP 7 - raise dependency on sabre/event 5.0 - raise dependency on sabre/uri 2.0 - switch to classmap autoloader - use phpunit 6 * Tue Jun 5 2018 Remi Collet - 4.2.4-1 - update to 4.2.4 - use range dependencies on F27+ * Mon Jun 12 2017 Remi Collet - 4.2.3-1 - Update to 4.2.3 * Wed Jan 4 2017 Remi Collet - 4.2.2-1 - update to 4.2.2 * Sat Oct 29 2016 Remi Collet - 4.2.1-2 - switch from symfony/class-loader to fedora/autoloader * Fri Mar 11 2016 Remi Collet - 4.2.1-1 - update to 4.2.1 - add dependency on sabre/uri - run test suite with both PHP 5 and 7 when available * Mon Jul 20 2015 Remi Collet - 3.0.5-1 - update to 3.0.5 - add autoloader * Wed Jul 16 2014 Remi Collet - 2.0.4-1 - update to 2.0.4 - composer dependencies * Tue May 6 2014 Remi Collet - 2.0.3-1 - update to 2.0.3 * Tue Feb 11 2014 Remi Collet - 2.0.2-1 - update to 2.0.2 * Sat Jan 11 2014 Remi Collet - 2.0.1-1 - update to 2.0.1 * Tue Jan 7 2014 Remi Collet - 2.0.0-0.2.alpha6 - update to 2.0.0alpha6 - add explicit conflicts with php-sabre-dav < 1.9 * Tue Dec 31 2013 Remi Collet - 2.0.0-0.1.alpha5 - Initial packaging