From 3e64e6ac169eec117140ac93bd79e0a72dea8c01 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 7 Feb 2020 15:17:03 +0100 Subject: update to 4.0.0 raise dependency on PHP 7.3 raise dependency on sebastian/object-reflector 2 raise dependency on sebastian/recursion-context 4 rename to php-sebastian-object-enumerator4 move to /usr/share/php/SebastianBergmann/ObjectEnumerator4 fix test suite with patch from https://github.com/sebastianbergmann/object-enumerator/pull/8 --- 8.patch | 36 ++++++++++++++++ composer.json | 15 ++++--- php-sebastian-object-enumerator4.spec | 79 +++++++++++++++++++++-------------- 3 files changed, 94 insertions(+), 36 deletions(-) create mode 100644 8.patch diff --git a/8.patch b/8.patch new file mode 100644 index 0000000..32e1e11 --- /dev/null +++ b/8.patch @@ -0,0 +1,36 @@ +From 52b1e37791d037094699302998b6df7a9f9c4a48 Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Fri, 7 Feb 2020 15:10:47 +0100 +Subject: [PATCH] fix test suite for PHPUnit v9 + +--- + phpunit.xml | 2 +- + tests/EnumeratorTest.php | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/phpunit.xml b/phpunit.xml +index c401ba8..e0ce8df 100644 +--- a/phpunit.xml ++++ b/phpunit.xml +@@ -8,7 +8,7 @@ + beStrictAboutTestsThatDoNotTestAnything="true" + beStrictAboutTodoAnnotatedTests="true" + verbose="true"> +- ++ + tests + + +diff --git a/tests/EnumeratorTest.php b/tests/EnumeratorTest.php +index a6bd29a..1398f49 100644 +--- a/tests/EnumeratorTest.php ++++ b/tests/EnumeratorTest.php +@@ -23,7 +23,7 @@ class EnumeratorTest extends TestCase + */ + private $enumerator; + +- protected function setUp() ++ protected function setUp(): void + { + $this->enumerator = new Enumerator; + } diff --git a/composer.json b/composer.json index 7b7d158..de98982 100644 --- a/composer.json +++ b/composer.json @@ -9,13 +9,18 @@ "email": "sebastian@phpunit.de" } ], + "prefer-stable": true, + "config": { + "optimize-autoloader": true, + "sort-packages": true + }, "require": { - "php": "^7.0", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" + "php": "^7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" }, "require-dev": { - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9.0" }, "autoload": { "classmap": [ @@ -29,7 +34,7 @@ }, "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "4.0-dev" } } } diff --git a/php-sebastian-object-enumerator4.spec b/php-sebastian-object-enumerator4.spec index 6b138c7..4806690 100644 --- a/php-sebastian-object-enumerator4.spec +++ b/php-sebastian-object-enumerator4.spec @@ -1,23 +1,25 @@ -# remirepo/fedora spec file for php-sebastian-object-enumerator3 +# remirepo/fedora spec file for php-sebastian-object-enumerator4 # -# Copyright (c) 2015-2018 Remi Collet +# Copyright (c) 2015-2020 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %global bootstrap 0 -%global gh_commit 7cfd9e65d11ffb5af41198476395774d4c8a84c5 +%global gh_commit e67516b175550abad905dc952f43285957ef4363 #global gh_date 20150728 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner sebastianbergmann %global gh_project object-enumerator +# Packagist %global pk_vendor sebastian %global pk_project %{gh_project} -%global major 3 -%global php_home %{_datadir}/php +# Namespace %global ns_vendor SebastianBergmann %global ns_project ObjectEnumerator +%global major 4 +%global php_home %{_datadir}/php %if %{bootstrap} %global with_tests 0%{?_with_tests:1} %else @@ -25,8 +27,8 @@ %endif Name: php-%{pk_vendor}-%{pk_project}%{major} -Version: 3.0.3 -%global specrel 3 +Version: 4.0.0 +%global specrel 1 Release: %{?gh_date:1%{specrel}.%{?prever}%{!?prever:%{gh_date}git%{gh_short}}}%{!?gh_date:%{specrel}}%{?dist} Summary: Traverses array and object to enumerate all referenced objects @@ -34,36 +36,39 @@ License: BSD URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{name}-%{version}-%{gh_short}.tar.gz +# fix for PHPUnit 8/9 +Patch0: https://patch-diff.githubusercontent.com/raw/sebastianbergmann/object-enumerator/pull/8.patch + BuildArch: noarch -BuildRequires: php(language) >= 7.0 +BuildRequires: php(language) >= 7.3 BuildRequires: php-fedora-autoloader-devel %if %{with_tests} %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -BuildRequires: (php-composer(%{pk_vendor}/object-reflector) >= 1.1.1 with php-composer(%{pk_vendor}/object-reflector) < 2) -BuildRequires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 4) +BuildRequires: (php-composer(%{pk_vendor}/object-reflector) >= 2.0 with php-composer(%{pk_vendor}/object-reflector) < 3) +BuildRequires: (php-composer(sebastian/recursion-context) >= 4.0 with php-composer(sebastian/recursion-context) < 5) %else -BuildRequires: php-sebastian-object-reflector -BuildRequires: php-sebastian-recursion-context3 +BuildRequires: php-sebastian-object-reflector2 +BuildRequires: php-sebastian-recursion-context4 %endif # From composer.json"require-dev": { -# "phpunit/phpunit": "^6.0" -BuildRequires: phpunit6 +# "phpunit/phpunit": "^9.0" +# TODO test suite passes with v8, switch to v9 when available +BuildRequires: phpunit8 %endif # from composer.json -# "php": "^7.0", -# "sebastian/object-reflector": "^1.1.1", -# "sebastian/recursion-context": "^3.0" -Requires: php(language) >= 7.0 +# "php": "^7.3", +# "sebastian/object-reflector": "^2.0", +# "sebastian/recursion-context": "^4.0" +Requires: php(language) >= 7.3 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -Requires: (php-composer(%{pk_vendor}/object-reflector) >= 1.1.1 with php-composer(%{pk_vendor}/object-reflector) < 2) -Requires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 4) +Requires: (php-composer(%{pk_vendor}/object-reflector) >= 2.0 with php-composer(%{pk_vendor}/object-reflector) < 3) +Requires: (php-composer(sebastian/recursion-context) >= 4.0 with php-composer(sebastian/recursion-context) < 5) %else -Requires: php-sebastian-object-reflector -Requires: php-sebastian-recursion-context3 +Requires: php-sebastian-object-reflector2 +Requires: php-sebastian-recursion-context4 %endif -# from phpcompatinfo report for version 3.0.1: -Requires: php-reflection +# from phpcompatinfo report for version 4.0.0: Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) @@ -80,7 +85,7 @@ Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} - +%patch0 -p1 -b .pr8 %build # Generate the Autoloader, from composer.json "autoload": { @@ -88,9 +93,10 @@ Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}%{major}/autoload.php # "src/" %{_bindir}/phpab --template fedora --output src/autoload.php src cat << 'EOF' | tee -a src/autoload.php -// Dependencies -require_once 'SebastianBergmann/ObjectReflector/autoload.php'; -require_once 'SebastianBergmann/RecursionContext3/autoload.php'; +\Fedora\Autoloader\Dependencies::required([ + '%{php_home}/%{ns_vendor}/ObjectReflector2/autoload.php', + '%{php_home}/%{ns_vendor}/RecursionContext4/autoload.php', +]); EOF @@ -106,10 +112,10 @@ mkdir vendor : Run upstream test suite ret=0 -for cmd in php70 php71 php; do +for cmd in php php73 php74; do if which $cmd; then - %{_bindir}/php -d include_path=.:%{buildroot}%{_datadir}/php:%{_datadir}/php \ - %{_bindir}/phpunit6 --verbose || ret=1 + $cmd -d auto_prepend_file=%{buildroot}%{php_home}/%{ns_vendor}/%{ns_project}%{major}/autoload.php \ + %{_bindir}/phpunit8 --verbose || ret=1 fi done exit $ret @@ -119,6 +125,7 @@ exit $ret %files +# remirepo:1 %{!?_licensedir:%global license %%doc} %license LICENSE %doc README.md composer.json @@ -126,6 +133,16 @@ exit $ret %changelog +* Fri Feb 7 2020 Remi Collet - 4.0.0-1 +- update to 4.0.0 +- raise dependency on PHP 7.3 +- raise dependency on sebastian/object-reflector 2 +- raise dependency on sebastian/recursion-context 4 +- rename to php-sebastian-object-enumerator4 +- move to /usr/share/php/SebastianBergmann/ObjectEnumerator4 +- fix test suite with patch from + https://github.com/sebastianbergmann/object-enumerator/pull/8 + * Thu Dec 6 2018 Remi Collet - 3.0.3-3 - cleanup for EL-8 -- cgit