diff --git a/.gitignore b/.gitignore index 1255b50..66f1d5f 100644 --- a/.gitignore +++ b/.gitignore @@ -6,32 +6,3 @@ clog /prophecy-1.6.0.tar.gz /prophecy-1.6.1-58a8137.tar.gz /prophecy-1.6.2-6c52c27.tar.gz -/prophecy-1.7.0-93d39f1.tar.gz -/php-phpspec-prophecy-1.7.1-15ea9ac.tgz -/php-phpspec-prophecy-1.7.2-c9b8c60.tgz -/php-phpspec-prophecy-1.7.3-e4ed002.tgz -/php-phpspec-prophecy-1.7.4-9f901e2.tgz -/php-phpspec-prophecy.spec -/php-phpspec-prophecy-1.7.5-dfd6be4.tgz -/php-phpspec-prophecy-1.7.6-33a7e3c.tgz -/php-phpspec-prophecy-1.8.0-4ba436b.tgz -/php-phpspec-prophecy-1.8.1-1927e75.tgz -/php-phpspec-prophecy-1.9.0-f6811d9.tgz -/php-phpspec-prophecy-1.10.1-cbe1df6.tgz -/php-phpspec-prophecy-1.10.2-b4400ef.tgz -/php-phpspec-prophecy-1.10.3-451c3cd.tgz -/php-phpspec-prophecy-1.11.0-8ff0384.tgz -/php-phpspec-prophecy-1.11.1-b20034b.tgz -/php-phpspec-prophecy-1.12.0-765cd5d.tgz -/php-phpspec-prophecy-1.12.1-8ce8751.tgz -/php-phpspec-prophecy-1.12.2-245710e.tgz -/php-phpspec-prophecy-1.13.0-be1996e.tgz -/php-phpspec-prophecy-1.14.0-d86dfc2.tgz -/php-phpspec-prophecy-1.15.0-bbcd738.tgz -/php-phpspec-prophecy-1.16.0-be8cac5.tgz -/php-phpspec-prophecy-1.17.0-15873c6.tgz -/php-phpspec-prophecy-1.18.0-d4f454f.tgz -/php-phpspec-prophecy-1.19.0-67a759e.tgz -/php-phpspec-prophecy-1.20.0-a0165c6.tgz -/php-phpspec-prophecy-1.22.0-35f1adb.tgz -/php-phpspec-prophecy-1.24.0-a24f1bd.tgz diff --git a/makesrc.sh b/makesrc.sh deleted file mode 100755 index 87d223d..0000000 --- a/makesrc.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -NAME=$(basename $PWD) -OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) -PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec) -VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec) -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" - -echo "Cloning..." -rm -rf $PROJECT-$COMMIT -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT - -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer.json -popd - -echo "Archiving..." -tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT - -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT - -echo "Done." diff --git a/php-phpspec-prophecy-autoload.php b/php-phpspec-prophecy-autoload.php new file mode 100644 index 0000000..12f47cb --- /dev/null +++ b/php-phpspec-prophecy-autoload.php @@ -0,0 +1,14 @@ += 8.2 -%if %{with tests} -BuildRequires: (php-composer(phpdocumentor/reflection-docblock) >= 5.2 with php-composer(phpdocumentor/reflection-docblock) < 6) -BuildRequires: (php-composer(sebastian/comparator) >= 3.0 with php-composer(sebastian/comparator) < 8) -BuildRequires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 8) -BuildRequires: (php-composer(doctrine/instantiator) >= 1.2 with php-composer(doctrine/instantiator) < 3) +%if %{with_tests} # from composer.json, "require-dev": { -# "friendsofphp/php-cs-fixer": "^3.88", -# "phpspec/phpspec": "^6.0 || ^7.0 || ^8.0", -# "phpstan/phpstan": "^2.1.13", -# "phpunit/phpunit": "^11.0 || ^12.0" -%if %{with phpspec} -BuildRequires: php-composer(phpspec/phpspec) >= 6.0 -%endif -BuildRequires: phpunit11 -BuildRequires: phpunit12 -%endif +# "phpspec/phpspec": "^2.0" +# "phpunit/phpunit": "^4.8 || ^5.6.5" +BuildRequires: php-composer(phpspec/phpspec) >= 2.0 # Autoloader -BuildRequires: php-fedora-autoloader-devel +BuildRequires: php-composer(fedora/autoloader) +%endif # from composer.json, "requires": { -# "php": "8.2.* || 8.3.* || 8.4.*", -# "phpdocumentor/reflection-docblock": "^5.2", -# "sebastian/comparator": "^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0", -# "doctrine/instantiator": "^1.2 || ^2.0", -# "sebastian/recursion-context": "^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0", -# "symfony/deprecation-contracts": "^2.5 || ^3.1" -Requires: php(language) >= 8.2 -Requires: (php-composer(phpdocumentor/reflection-docblock) >= 5.2 with php-composer(phpdocumentor/reflection-docblock) < 6) -Requires: (php-composer(sebastian/comparator) >= 3.0 with php-composer(sebastian/comparator) < 8) -Requires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 8) -Requires: (php-composer(doctrine/instantiator) >= 1.2 with php-composer(doctrine/instantiator) < 3) -# From phpcompatinfo report for version 1.11.0 -# only pcre, reflection and spl +# "php": "^5.3|^7.0", +# "phpdocumentor/reflection-docblock": "^2.0|^3.0.2", +# "sebastian/comparator": "^1.1", +# "doctrine/instantiator": "^1.0.2", +# "sebastian/recursion-context": "^1.0|^2.0" +Requires: php(language) >= 5.3 +Requires: php-composer(phpdocumentor/reflection-docblock) >= 2.0 +Requires: php-composer(phpdocumentor/reflection-docblock) < 4 +Requires: php-composer(sebastian/comparator) >= 1.1 +Requires: php-composer(sebastian/comparator) < 2 +Requires: php-composer(sebastian/recursion-context) >= 1.0 +Requires: php-composer(sebastian/recursion-context) < 3 +# use 1.0.4 to ensure we have the autoloader +Requires: php-composer(doctrine/instantiator) >= 1.0.4 +Requires: php-composer(doctrine/instantiator) < 2 +# From phpcompatinfo report for version 1.1.0 +Requires: php-pcre +Requires: php-reflection +Requires: php-spl # Autoloader Requires: php-composer(fedora/autoloader) @@ -76,55 +78,11 @@ to be used inside any testing framework out there with minimal effort. %prep %setup -q -n %{gh_project}-%{gh_commit} +cp %{SOURCE1} src/Prophecy/autoload.php + %build -phpab --template fedora --output src/Prophecy/autoload.php src -cat << 'EOF' | tee -a src/Prophecy/autoload.php - -if (PHP_VERSION_ID > 80400) { - $inst = [ - '%{_datadir}/php/Doctrine/Instantiator2/autoload.php', - '%{_datadir}/php/Doctrine/Instantiator/autoload.php', - ]; -} else { - $inst = '%{_datadir}/php/Doctrine/Instantiator/autoload.php'; -} -\Fedora\Autoloader\Dependencies::required([ - $inst, - '%{_datadir}/php/phpDocumentor/Reflection/DocBlock5/autoload.php', -]); -if (!class_exists('SebastianBergmann\\Comparator\\Comparator')) { // v2 from phpunit, v1 from phpspec - $inst = [ - '%{_datadir}/php/SebastianBergmann/Comparator6/autoload.php', - '%{_datadir}/php/SebastianBergmann/Comparator5/autoload.php', - '%{_datadir}/php/SebastianBergmann/Comparator4/autoload.php', - '%{_datadir}/php/SebastianBergmann/Comparator3/autoload.php', - ]; - if (PHP_VERSION_ID > 80300) { - array_unshift($inst, '%{_datadir}/php/SebastianBergmann/Comparator7/autoload.php'); - } - \Fedora\Autoloader\Dependencies::required([$inst]); -} -if (!class_exists('SebastianBergmann\\RecursionContext\\Context')) { // v2 from phpunit, v1 from phpspec - $inst = [ - '%{_datadir}/php/SebastianBergmann/RecursionContext6/autoload.php', - '%{_datadir}/php/SebastianBergmann/RecursionContext5/autoload.php', - '%{_datadir}/php/SebastianBergmann/RecursionContext4/autoload.php', - '%{_datadir}/php/SebastianBergmann/RecursionContext3/autoload.php', - ]; - if (PHP_VERSION_ID > 80300) { - array_unshift($inst, '%{_datadir}/php/SebastianBergmann/RecursionContext7/autoload.php'); - } - \Fedora\Autoloader\Dependencies::required([$inst]); -} -// from https://github.com/symfony/deprecation-contracts -if (!function_exists('trigger_deprecation')) { - function trigger_deprecation(string $package, string $version, string $message, mixed ...$args): void - { - @trigger_error(($package || $version ? "Since $package $version: " : '').($args ? vsprintf($message, $args) : $message), \E_USER_DEPRECATED); - } -} -EOF +# Nothing %install @@ -133,47 +91,21 @@ cp -pr src/* %{buildroot}%{_datadir}/php %check -%if %{with tests} -: Dev autoloader -mkdir vendor -phpab --output vendor/autoload.php fixtures tests +%if %{with_tests} +: ignore failed tests with phpspec 3.0 +rm spec/Prophecy/Doubler/ClassPatch/MagicCallPatchSpec.php -cat << 'EOF' | tee -a vendor/autoload.php -require_once '%{buildroot}%{_datadir}/php/Prophecy/autoload.php'; -EOF - -: check autoloader -php %{buildroot}%{_datadir}/php/Prophecy/autoload.php - -%if %{with phpspec} -: check phpspec -phpspec --version -%endif - -ret=0 -for cmd in php php82 php83 php84 php85; do - if which $cmd; then - $cmd -d auto_prepend_file=vendor/autoload.php \ - %{_bindir}/phpunit11 \ - || ret=1 - fi -done -if [ -x %{_bindir}/phpunit12 ]; then -for cmd in php php83 php84 php85; do - if which $cmd; then - $cmd -d auto_prepend_file=vendor/autoload.php \ - %{_bindir}/phpunit12 \ - || ret=1 - fi -done -fi -exit $ret +%{_bindir}/php \ + -d include_path=.:%{buildroot}%{_datadir}/php:%{_datadir}/php \ + %{_bindir}/phpspec \ + run --format pretty --verbose --no-ansi %else : Test suite disabled %endif %files +%{!?_licensedir:%global license %%doc} %license LICENSE %doc *.md %doc composer.json @@ -181,188 +113,6 @@ exit $ret %changelog -* Mon Jan 12 2026 Remi Collet - 1.24.0-2 -- update to 1.24.0 -- use doctrine/instantiator v2 only with PHP 8.4+ -- raise dependency on PHP 8.2 - -* Fri Jul 25 2025 Fedora Release Engineering - 1.22.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Wed Apr 30 2025 Remi Collet - 1.22.0-1 -- update to 1.22.0 -- re-license spec file to CECILL-2.1 - -* Sat Jan 18 2025 Fedora Release Engineering - 1.20.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Thu Nov 21 2024 Remi Collet - 1.20.0-1 -- update to 1.20.0 - -* Fri Jul 19 2024 Fedora Release Engineering - 1.19.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu Feb 29 2024 Remi Collet - 1.19.0-1 -- update to 1.19.0 -- allow doctrine/instantiator 6 -- allow sebastian/recursion-context 6 - -* Thu Jan 25 2024 Fedora Release Engineering - 1.18.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 1.18.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Dec 8 2023 Remi Collet - 1.18.0-1 -- update to 1.18.0 -- run test suite with phpunit8, phpunit9 and phpunit10 - -* Wed Sep 27 2023 Remi Collet - 1.17.0-4 -- disable phpspec tests - -* Fri Jul 21 2023 Fedora Release Engineering - 1.17.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Feb 3 2023 Remi Collet - 1.17.0-2 -- fix autoloader - -* Fri Feb 3 2023 Remi Collet - 1.17.0-1 -- update to 1.17.0 -- allow doctrine/instantiator v2 - -* Fri Jan 20 2023 Fedora Release Engineering - 1.16.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Dec 1 2022 Remi Collet - 1.16.0-1 -- update to 1.16.0 - -* Fri Jul 22 2022 Fedora Release Engineering - 1.15.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jan 21 2022 Fedora Release Engineering - 1.15.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Dec 8 2021 Remi Collet - 1.15.0-1 -- update to 1.15.0 - -* Fri Sep 10 2021 Remi Collet - 1.14.0-1 -- update to 1.14.0 - -* Fri Jul 23 2021 Fedora Release Engineering - 1.13.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Mar 18 2021 Remi Collet - 1.13.0-1 -- update to 1.13.0 - -* Wed Jan 27 2021 Fedora Release Engineering - 1.12.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Dec 21 2020 Remi Collet - 1.12.2-1 -- update to 1.12.2 -- switch to phpunit9 - -* Tue Sep 29 2020 Remi Collet - 1.12.1-1 -- update to 1.12.1 - -* Mon Sep 28 2020 Remi Collet - 1.12.0-2 -- switch to classmap autoloader - -* Mon Sep 28 2020 Remi Collet - 1.12.0-1 -- update to 1.12.0 -- raise dependency on phpdocumentor/reflection-docblock 5.2 - -* Tue Jul 28 2020 Fedora Release Engineering - 1.11.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 8 2020 Remi Collet - 1.11.1-1 -- update to 1.11.1 - -* Wed Jul 8 2020 Remi Collet - 1.11.0-1 -- update to 1.11.0 -- raise dependency on PHP 7.2 -- raise dependency on phpdocumentor/reflection-docblock 5.0 -- raise dependency on sebastian/comparator 3.0 -- raise dependency on doctrine/instantiator 1.2 -- raise dependency on sebastian/recursion-context 3.0 - -* Fri Mar 6 2020 Remi Collet - 1.10.3-1 -- update to 1.10.3 -- allow phpdocumentor/reflection-docblock 5.0 - -* Thu Jan 30 2020 Fedora Release Engineering - 1.10.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Jan 21 2020 Remi Collet - 1.10.2-1 -- update to 1.10.2 -- allow sebastian/comparator 4 and sebastian/recursion-context 4 - -* Fri Jan 3 2020 Remi Collet - 1.10.1-1 -- update to 1.10.1 - -* Fri Oct 4 2019 Remi Collet - 1.9.0-1 -- update to 1.9.0 - -* Fri Jul 26 2019 Fedora Release Engineering - 1.8.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 13 2019 Remi Collet - 1.8.1-1 -- update to 1.8.1 - -* Sat Feb 02 2019 Fedora Release Engineering - 1.8.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Aug 20 2018 Remi Collet - 1.8.0-1 -- update to 1.8.0 - -* Fri Jul 13 2018 Fedora Release Engineering - 1.7.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Thu Apr 19 2018 Remi Collet - 1.7.6-1 -- update to 1.7.6 - -* Tue Feb 20 2018 Remi Collet - 1.7.5-1 -- Update to 1.7.5 - -* Mon Feb 12 2018 Remi Collet - 1.7.4-1 -- Update to 1.7.4 -- use range dependency on F27+ - -* Fri Feb 09 2018 Fedora Release Engineering - 1.7.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Mon Nov 27 2017 Remi Collet - 1.7.3-1 -- Update to 1.7.3 - -* Tue Sep 5 2017 Remi Collet - 1.7.2-1 -- Update to 1.7.2 - -* Mon Sep 4 2017 Remi Collet - 1.7.1-1 -- Update to 1.7.1 -- use git snapshot for sources -- skip test with phpspec v4 - -* Thu Jul 27 2017 Fedora Release Engineering - 1.7.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Apr 13 2017 Shawn Iwinski - 1.7.0-4 -- Prepare for php-phpdocumentor-reflection-docblock => - php-phpdocumentor-reflection-docblock2 dependency rename -- Update autoloader to try loading newest - php-composer(phpdocumentor/reflection-docblock), then try loading older v2, - then trigger an error if neither are found in include path - -* Sat Mar 4 2017 Remi Collet - 1.7.0-3 -- drop implicit dependency on sebastian/recursion-context - -* Fri Mar 3 2017 Remi Collet - 1.7.0-2 -- fix autoloader for dep. with multiple versions - -* Fri Mar 3 2017 Remi Collet - 1.7.0-1 -- Update to 1.7.0 - -* Sat Feb 11 2017 Fedora Release Engineering - 1.6.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - * Tue Nov 22 2016 Remi Collet - 1.6.2-1 - update to 1.6.2 - allow sebastian/recursion-context 2.0 @@ -405,4 +155,4 @@ exit $ret - add dependency on sebastian/comparator * Fri Feb 13 2015 Remi Collet - 1.3.1-1 -- initial package +- initial package \ No newline at end of file diff --git a/sources b/sources index c5a1dbb..7920412 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (php-phpspec-prophecy-1.24.0-a24f1bd.tgz) = 1fb41f8835788bb06c4ec0ae67460f80370d0466a0036368ce5822750a3544ba306a3660011b95b127276695027cd099bcd85259e4d1faeff36caa11dd4610de +52edb919e86f6878da40c6865526d161 prophecy-1.6.2-6c52c27.tar.gz