From 35f1c2b6d0d742dec1f151ec9d2ac4c0b3f5fa59 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 20 Oct 2020 08:20:28 +0200 Subject: [PATCH 1/3] update phpunitgoodpractices/polyfill to 1.4.0 update phpunitgoodpractices/traits to 1.9.1 allow PHPUnit 9 (cherry picked from commit 85c6159b427eaf1ba12e4e472c9cf9194bc8eb55) --- .gitignore | 2 ++ php-phpunitgoodpractices-polyfill.spec | 28 ++++++++++++++++---------- sources | 4 ++-- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index e0f6dfd..603eb5c 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,5 @@ /php-phpunitgoodpractices-traits-1.7.0-d7864f7.tgz /php-phpunitgoodpractices-polyfill-1.2.0-1613c59.tgz /php-phpunitgoodpractices-traits-1.8.0-7bdb460.tgz +/php-phpunitgoodpractices-polyfill-1.4.0-0e3754f.tgz +/php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz diff --git a/php-phpunitgoodpractices-polyfill.spec b/php-phpunitgoodpractices-polyfill.spec index 0f469f1..1b8bfb4 100644 --- a/php-phpunitgoodpractices-polyfill.spec +++ b/php-phpunitgoodpractices-polyfill.spec @@ -1,6 +1,6 @@ # remirepo/fedora spec file for php-phpunitgoodpractices-polyfill # -# Copyright (c) 2018 Remi Collet +# Copyright (c) 2018-2020 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # @@ -9,7 +9,7 @@ # Polyfill # https://github.com/PHPUnitGoodPractices/polyfill/releases -%global gh_commit 1613c59be473c6b238c119607de820b9274c81fd +%global gh_commit 0e3754f1e31b0051eeb5a7223f9b45ba6442af0d %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner PHPUnitGoodPractices %global gh_project polyfill @@ -23,13 +23,13 @@ %global with_tests 0%{!?_without_tests:1} # Traits # https://github.com/PHPUnitGoodPractices/Traits/releases -%global tr_commit 7bdb460da0f9d4cfa2f11ca1ecb69a6d7f126925 +%global tr_commit 1f56f643aaa3e98f22acf71129109479afb9ef33 %global tr_short %(c=%{tr_commit}; echo ${c:0:7}) -%global tr_version 1.8.0 +%global tr_version 1.9.1 Name: php-%{pk_vendor}-%{pk_project} -Version: 1.2.0 -Release: 3%{?dist} +Version: 1.4.0 +Release: 1%{?dist} Summary: Lacking future-compat polyfills for PHPUnit License: MIT @@ -51,16 +51,16 @@ BuildRequires: php-fedora-autoloader-devel %endif # From composer.json, "require": { -# "php": "^5.5 || ^7.0", -# "phpunit/phpunit": ""~4.0.0 || ~4.1.0 || ~4.2.0 || ~4.3.0 || ~4.4.0 || ~4.5.0 || ~4.6.0 || ~4.8.0 || ~5.3.0 || ~5.4.0 || ~5.5.0 || ~5.6.0 || ~5.7.0 || ~6.0.0 || ~6.1.0 || ~6.2.0 || ~6.3.0 || ~6.4.0 || ~6.5.0 || ~7.0.0 || ~7.1.0 || ~7.2.6 || ~7.3.0 || ~7.4.0 || ~7.5.0" +# "php": "^5.5 || ^7.0 || ^8.0", +# "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.0 || ^9.0" Requires: php(language) >= 5.5 -Requires: (phpunit8 or phpunit7 or phpunit6 or php-phpunit-PHPUnit) -# From phpcompatinfo report for version 1.0.0 +Requires: (phpunit9 or phpunit8 or phpunit7 or phpunit6 or php-phpunit-PHPUnit) +# From phpcompatinfo report for version polyfill 1.4.0 and traits1.9.1 # nothing # Autoloader Requires: php-composer(fedora/autoloader) -Provides: php-%{pk_vendor}-traits = %{tr_version} +Provides: php-%{pk_vendor}-traits = %{tr_version}-%{release} Provides: php-composer(%{pk_vendor}/traits) = %{tr_version} Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} @@ -88,6 +88,7 @@ require_once '%{php_home}/Fedora/Autoloader/autoload.php'; if (!class_exists('PHPUnit\\Framework\\TestCase')) { // Call outside of phpunit command \Fedora\Autoloader\Dependencies::required([ [ + '%{php_home}/PHPUnit9/autoload.php', '%{php_home}/PHPUnit8/autoload.php', '%{php_home}/PHPUnit7/autoload.php', '%{php_home}/PHPUnit6/autoload.php', @@ -142,6 +143,11 @@ if (!class_exists("PHPUnitGoodPractices\\Traits\\PHPUnitVersionRetriever")) { %changelog +* Tue Oct 20 2020 Remi Collet - 1.4.0-1 +- update phpunitgoodpractices/polyfill to 1.4.0 +- update phpunitgoodpractices/traits to 1.9.1 +- allow PHPUnit 9 + * Thu Jan 30 2020 Fedora Release Engineering - 1.2.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/sources b/sources index 2febaa1..6654476 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (php-phpunitgoodpractices-polyfill-1.2.0-1613c59.tgz) = 2c2494f948a3fb235c474fbcb7d70530a06c5973f1616aa0291094dc197ca42874aeee38563479d8e538f4fbebcebc84da114db2a51b4593f129913e14409afb -SHA512 (php-phpunitgoodpractices-traits-1.8.0-7bdb460.tgz) = 00e74a5fc639e718370d238259d2e3727197d5893e91915082eab83776b1d76682e62157fd873eb383e312182a8ca1e3093fe547d3e34fd6ef6d9632768bd289 +SHA512 (php-phpunitgoodpractices-polyfill-1.4.0-0e3754f.tgz) = e75c408d428b6719da1c9a2838aafef9d2ab647fdf85d9afd226a9c891ce45eb7ce775725e89e1179729352144811a9d3aba545e9fa4640b7680a281e14208cc +SHA512 (php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz) = 864cc1626a5b25082777a2ba46dbfa2894b130f6bdd0b6f7d0aa572c8751a36e33cb87bbe74d61b1b645d0726dd6f922ebf49fa95cb982046c44f9acf78c186c From 599cc037da5ab099bbdd32b733b8272ca1d6c2fb Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 8 Dec 2020 08:06:11 +0100 Subject: [PATCH 2/3] update phpunitgoodpractices/polyfill to 1.5.0 (cherry picked from commit 2d17417a27ff3e23df8667b333cf8bd2a7d20900) --- .gitignore | 10 ++-------- php-phpunitgoodpractices-polyfill.spec | 10 +++++++--- sources | 4 ++-- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 603eb5c..2839766 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,3 @@ -/php-phpunitgoodpractices-polyfill-1.0.0-3968a1f.tgz -/php-phpunitgoodpractices-polyfill-1.1.0-f7c9b77.tgz -/php-phpunitgoodpractices-traits-1.5.1-10d22ad.tgz -/php-phpunitgoodpractices-traits-1.6.0-d3d74de.tgz -/php-phpunitgoodpractices-traits-1.7.0-d7864f7.tgz -/php-phpunitgoodpractices-polyfill-1.2.0-1613c59.tgz -/php-phpunitgoodpractices-traits-1.8.0-7bdb460.tgz -/php-phpunitgoodpractices-polyfill-1.4.0-0e3754f.tgz +clog /php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz +/php-phpunitgoodpractices-polyfill-1.5.0-b87c59f.tgz diff --git a/php-phpunitgoodpractices-polyfill.spec b/php-phpunitgoodpractices-polyfill.spec index 1b8bfb4..583bf4d 100644 --- a/php-phpunitgoodpractices-polyfill.spec +++ b/php-phpunitgoodpractices-polyfill.spec @@ -9,7 +9,7 @@ # Polyfill # https://github.com/PHPUnitGoodPractices/polyfill/releases -%global gh_commit 0e3754f1e31b0051eeb5a7223f9b45ba6442af0d +%global gh_commit b87c59f0d3df764d0dcf8154e18be69fe6cb5cba %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner PHPUnitGoodPractices %global gh_project polyfill @@ -28,7 +28,7 @@ %global tr_version 1.9.1 Name: php-%{pk_vendor}-%{pk_project} -Version: 1.4.0 +Version: 1.5.0 Release: 1%{?dist} Summary: Lacking future-compat polyfills for PHPUnit @@ -45,7 +45,8 @@ BuildArch: noarch BuildRequires: php(language) >= 5.5 BuildRequires: %{_bindir}/phpunit # From composer.json, "require-dev": { -# "friendsofphp/php-cs-fixer": "^2.11" +# "friendsofphp/php-cs-fixer": "^2", +# "php-coveralls/php-coveralls": "^2.4" # Autoloader BuildRequires: php-fedora-autoloader-devel %endif @@ -143,6 +144,9 @@ if (!class_exists("PHPUnitGoodPractices\\Traits\\PHPUnitVersionRetriever")) { %changelog +* Tue Dec 8 2020 Remi Collet - 1.5.0-1 +- update phpunitgoodpractices/polyfill to 1.5.0 + * Tue Oct 20 2020 Remi Collet - 1.4.0-1 - update phpunitgoodpractices/polyfill to 1.4.0 - update phpunitgoodpractices/traits to 1.9.1 diff --git a/sources b/sources index 6654476..f7fbaf3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (php-phpunitgoodpractices-polyfill-1.4.0-0e3754f.tgz) = e75c408d428b6719da1c9a2838aafef9d2ab647fdf85d9afd226a9c891ce45eb7ce775725e89e1179729352144811a9d3aba545e9fa4640b7680a281e14208cc -SHA512 (php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz) = 864cc1626a5b25082777a2ba46dbfa2894b130f6bdd0b6f7d0aa572c8751a36e33cb87bbe74d61b1b645d0726dd6f922ebf49fa95cb982046c44f9acf78c186c +SHA512 (php-phpunitgoodpractices-polyfill-1.5.0-b87c59f.tgz) = 30bd3cbae013af3de7bb11d1dbcd327aba1bbb64a9742538fe476748a6fdfe786c4fae3851cea034ca2f754f0b0bb606009b93a4bf87140f67332b9f5c881704 +SHA512 (php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz) = 934b3c1a53dc0997d1084d0858771215ddd0926fd715ec5dcefdb9951c1f0827186d44e642a5266dbd56562a0b2514a64f39fa8438b271b0e395585e4a4069f8 From b316f612b9ce749e3d1f46c8ea4fdcdc0b36fb0a Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 8 Dec 2020 10:06:59 +0100 Subject: [PATCH 3/3] enable upstream test suite (cherry picked from commit d480e2bc12c4d590602c27693c2a20d27c24bd24) --- .gitignore | 1 + makesrc.sh | 83 ++++++++++++++++++-------- php-phpunitgoodpractices-polyfill.spec | 70 ++++++++++++++++++---- sources | 5 +- 4 files changed, 122 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index 2839766..5a2aeed 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ clog /php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz /php-phpunitgoodpractices-polyfill-1.5.0-b87c59f.tgz +/php-sanmai-phpunit-legacy-adapter-8.1-464c750.tgz diff --git a/makesrc.sh b/makesrc.sh index 62e19db..47d26f4 100755 --- a/makesrc.sh +++ b/makesrc.sh @@ -8,21 +8,24 @@ COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec) SHORT=${COMMIT:0:7} echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n" +if [ -f $NAME-$VERSION-$SHORT.tgz ]; then + echo "$PROJECT Skipped" +else + echo "Cloning..." + git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT -echo "Cloning..." -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT + echo "Getting commit..." + pushd $PROJECT-$COMMIT + git checkout $COMMIT || exit 1 + cp composer.json ../composer-polyfill.json + popd -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer-polyfill.json -popd + echo "Archiving..." + tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT -echo "Archiving..." -tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT - -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT + echo "Cleaning..." + rm -rf $PROJECT-$COMMIT +fi PROJECT=Traits VERSION=$(sed -n '/^%global tr_version/{s/.* //;p}' $NAME.spec) @@ -30,22 +33,54 @@ COMMIT=$(sed -n '/^%global tr_commit/{s/.* //;p}' $NAME.spec) SHORT=${COMMIT:0:7} NAME=php-phpunitgoodpractices-traits -echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n" +if [ -f $NAME-$VERSION-$SHORT.tgz ]; then + echo "$PROJECT Skipped" +else + echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n" -echo "Cloning..." -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT + echo "Cloning..." + git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer-traits.json -popd + echo "Getting commit..." + pushd $PROJECT-$COMMIT + git checkout $COMMIT || exit 1 + cp composer.json ../composer-traits.json + popd -echo "Archiving..." -tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT + echo "Archiving..." + tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT + echo "Cleaning..." + rm -rf $PROJECT-$COMMIT +fi +NAME=$(basename $PWD) +OWNER=$(sed -n '/^%global lg_owner/{s/.* //;p}' $NAME.spec) +PROJECT=$(sed -n '/^%global lg_project/{s/.* //;p}' $NAME.spec) +VERSION=$(sed -n '/^%global lg_version/{s/.* //;p}' $NAME.spec) +COMMIT=$(sed -n '/^%global lg_commit/{s/.* //;p}' $NAME.spec) +SHORT=${COMMIT:0:7} +NAME=php-$OWNER-$PROJECT + +if [ -f $NAME-$VERSION-$SHORT.tgz ]; then + echo "$PROJECT Skipped" +else + echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n" + + echo "Cloning..." + git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT + + echo "Getting commit..." + pushd $PROJECT-$COMMIT + git checkout $COMMIT || exit 1 + cp composer.json ../composer-legacy.json + popd + + echo "Archiving..." + tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT + + echo "Cleaning..." + rm -rf $PROJECT-$COMMIT +fi echo "Done." diff --git a/php-phpunitgoodpractices-polyfill.spec b/php-phpunitgoodpractices-polyfill.spec index 583bf4d..0b10ee9 100644 --- a/php-phpunitgoodpractices-polyfill.spec +++ b/php-phpunitgoodpractices-polyfill.spec @@ -7,6 +7,8 @@ # Please, preserve the changelog entries # +%bcond_without tests + # Polyfill # https://github.com/PHPUnitGoodPractices/polyfill/releases %global gh_commit b87c59f0d3df764d0dcf8154e18be69fe6cb5cba @@ -20,16 +22,22 @@ %global ns_vendor PHPUnitGoodPractices %global ns_project Polyfill %global php_home %{_datadir}/php -%global with_tests 0%{!?_without_tests:1} # Traits # https://github.com/PHPUnitGoodPractices/Traits/releases %global tr_commit 1f56f643aaa3e98f22acf71129109479afb9ef33 %global tr_short %(c=%{tr_commit}; echo ${c:0:7}) %global tr_version 1.9.1 +# Legacy +# https://github.com/sanmai/phpunit-legacy-adapter/releases +%global lg_owner sanmai +%global lg_project phpunit-legacy-adapter +%global lg_commit 464c7505c15c487239ac696a82097c765f38a2a1 +%global lg_short %(c=%{lg_commit}; echo ${c:0:7}) +%global lg_version 8.1 Name: php-%{pk_vendor}-%{pk_project} Version: 1.5.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lacking future-compat polyfills for PHPUnit License: MIT @@ -37,26 +45,39 @@ URL: https://github.com/%{gh_owner}/%{gh_project} # git snapshot to get upstream test suite (none for now) Source0: %{name}-%{version}-%{gh_short}.tgz Source1: php-%{pk_vendor}-traits-%{tr_version}-%{tr_short}.tgz -Source2: makesrc.sh +Source2: php-%{lg_owner}-%{lg_project}-%{lg_version}-%{lg_short}.tgz +Source3: makesrc.sh BuildArch: noarch -%if %{with_tests} +%if %{with tests} # For tests BuildRequires: php(language) >= 5.5 -BuildRequires: %{_bindir}/phpunit -# From composer.json, "require-dev": { +%if 0%{?fedora} >= 32 || 0%{?rhel} >= 9 +%global phpunit %{_bindir}/phpunit9 +%else +%global phpunit %{_bindir}/phpunit8 +%endif +BuildRequires: %{phpunit} +# From polyfill, composer.json, "require-dev": { # "friendsofphp/php-cs-fixer": "^2", # "php-coveralls/php-coveralls": "^2.4" +# From traits, composer.json, "require-dev": { +# "phpunitgoodpractices/polyfill": "^1.1", +# "sanmai/phpunit-legacy-adapter": "^6.1 || ^8.0" +%endif +BuildRequires: php-cli # Autoloader BuildRequires: php-fedora-autoloader-devel -%endif -# From composer.json, "require": { +# From polyfill, composer.json, "require": { # "php": "^5.5 || ^7.0 || ^8.0", # "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.0 || ^9.0" +# From traits, composer.json, "require": { +# "php": "^5.5 || ^7.0 || ^8.0", +# "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ~8.5 || ~9.4" Requires: php(language) >= 5.5 Requires: (phpunit9 or phpunit8 or phpunit7 or phpunit6 or php-phpunit-PHPUnit) -# From phpcompatinfo report for version polyfill 1.4.0 and traits1.9.1 +# From phpcompatinfo report for version polyfill 1.5.0 and traits 1.9.1 # nothing # Autoloader Requires: php-composer(fedora/autoloader) @@ -73,13 +94,15 @@ Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}/autoload.php %prep -%setup -q -n %{gh_project}-%{gh_commit} -a 1 +%setup -q -n %{gh_project}-%{gh_commit} -a 1 -a 2 mv composer.json composer-polyfill.json mv LICENSE LICENSE-polyfill mv Traits-%{tr_commit}/src src2 mv Traits-%{tr_commit}/composer.json composer-traits.json mv Traits-%{tr_commit}/LICENSE LICENSE-traits +mv Traits-%{tr_commit}/tests tests/Traits +mv %{lg_project}-%{lg_commit}/src src3 cat << 'EOF' | tee src/autoload.php - 1.5.0-2 +- enable upstream test suite + * Tue Dec 8 2020 Remi Collet - 1.5.0-1 - update phpunitgoodpractices/polyfill to 1.5.0 diff --git a/sources b/sources index f7fbaf3..abdb984 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ -SHA512 (php-phpunitgoodpractices-polyfill-1.5.0-b87c59f.tgz) = 30bd3cbae013af3de7bb11d1dbcd327aba1bbb64a9742538fe476748a6fdfe786c4fae3851cea034ca2f754f0b0bb606009b93a4bf87140f67332b9f5c881704 -SHA512 (php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz) = 934b3c1a53dc0997d1084d0858771215ddd0926fd715ec5dcefdb9951c1f0827186d44e642a5266dbd56562a0b2514a64f39fa8438b271b0e395585e4a4069f8 +SHA512 (php-phpunitgoodpractices-polyfill-1.5.0-b87c59f.tgz) = 4f5ba02c41ea6c9bb0865e1103280b6c73d34b67fcc0b74debd24ed95aad7735f6d53fcd2c165f3c8e462e25d695580d250a9525103ad796942ee44ba1e773fd +SHA512 (php-phpunitgoodpractices-traits-1.9.1-1f56f64.tgz) = f80bd879abf7d9a474241cd43c30e817ef1c2db7f9669f02c57b7d9ac8e971ad7a0c05dafa59932b27d8d03a0a345794cfedfac1504985eed047611b8eb6291a +SHA512 (php-sanmai-phpunit-legacy-adapter-8.1-464c750.tgz) = 4f5704608294fdecdbc5345fba88471d13cd33156f0c5c27287413087fce74a2ebc7dbb6f0ad67563e950312f315012597ae03fda8cdad2396dd50905002f688