summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--php-doctrine-common-php8.patch52
-rw-r--r--php-doctrine-common.spec13
3 files changed, 64 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 1ab5c4f..01f0400 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,7 @@
+clog
package-*.xml
*.tgz
+*.tar.bz2
*.tar.gz
*.tar.xz
*.tar.xz.asc
diff --git a/php-doctrine-common-php8.patch b/php-doctrine-common-php8.patch
new file mode 100644
index 0000000..32e1ff1
--- /dev/null
+++ b/php-doctrine-common-php8.patch
@@ -0,0 +1,52 @@
+diff -up ./tests/Doctrine/Tests/Common/Proxy/MagicIssetClassWithInteger.php.php8 ./tests/Doctrine/Tests/Common/Proxy/MagicIssetClassWithInteger.php
+--- ./tests/Doctrine/Tests/Common/Proxy/MagicIssetClassWithInteger.php.php8 2021-03-31 10:54:57.668187413 +0200
++++ ./tests/Doctrine/Tests/Common/Proxy/MagicIssetClassWithInteger.php 2021-03-31 10:55:02.218170669 +0200
+@@ -24,16 +24,16 @@ class MagicIssetClassWithInteger
+ * @return int
+ * @throws \BadMethodCallException
+ */
+- public function __isset(string $name): int
++ public function __isset(string $name): bool
+ {
+ if ('test' === $name) {
+- return 1;
++ return true;
+ }
+
+ if ('publicField' === $name || 'id' === $name) {
+ throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
+ }
+
+- return 0;
++ return false;
+ }
+ }
+diff -up ./tests/Doctrine/Tests/Common/Proxy/NullableNonOptionalHintClass.php.php8 ./tests/Doctrine/Tests/Common/Proxy/NullableNonOptionalHintClass.php
+diff -up ./tests/Doctrine/Tests/Common/Proxy/ProxyGeneratorTest.php.php8 ./tests/Doctrine/Tests/Common/Proxy/ProxyGeneratorTest.php
+--- ./tests/Doctrine/Tests/Common/Proxy/ProxyGeneratorTest.php.php8 2021-03-31 10:54:38.446258154 +0200
++++ ./tests/Doctrine/Tests/Common/Proxy/ProxyGeneratorTest.php 2021-03-31 10:55:06.625154451 +0200
+@@ -54,7 +54,7 @@ class ProxyGeneratorTest extends \PHPUni
+ $params = $method->getParameters();
+
+ self::assertEquals(1, count($params));
+- self::assertEquals('stdClass', $params[0]->getClass()->getName());
++ self::assertEquals('stdClass', @$params[0]->getClass()->getName());
+ }
+
+ public function testProxyRespectsMethodsWhichReturnValuesByReference()
+@@ -240,6 +240,7 @@ class ProxyGeneratorTest extends \PHPUni
+
+ /**
+ * @group #751
++ * @requires PHP < 8
+ */
+ public function testClassWithNullableOptionalNonLastParameterOnProxiedMethods()
+ {
+@@ -265,6 +266,7 @@ class ProxyGeneratorTest extends \PHPUni
+
+ /**
+ * @group #751
++ * @requires PHP < 8
+ */
+ public function testClassWithPhp71NullableOptionalNonLastParameterOnProxiedMethods()
+ {
diff --git a/php-doctrine-common.spec b/php-doctrine-common.spec
index ed566f6..347e48d 100644
--- a/php-doctrine-common.spec
+++ b/php-doctrine-common.spec
@@ -2,7 +2,7 @@
#
# Fedora spec file for php-doctrine-common
#
-# Copyright (c) 2013-2019 Shawn Iwinski <shawn.iwinski@gmail.com>
+# Copyright (c) 2013-2021 Shawn Iwinski <shawn.iwinski@gmail.com>
#
# License: MIT
# http://opensource.org/licenses/MIT
@@ -58,7 +58,7 @@
Name: php-%{composer_vendor}-%{composer_project}
Epoch: 1
Version: %{github_version}
-Release: 1%{?dist}
+Release: 4%{?dist}
Summary: Common library for Doctrine projects
License: MIT
@@ -69,6 +69,9 @@ URL: https://github.com/%{github_owner}/%{github_name}
Source0: %{name}-%{github_version}-%{github_commit}.tar.gz
Source1: %{name}-get-source.sh
+# Minimal fix for PHP 8
+Patch0: %{name}-php8.patch
+
BuildArch: noarch
# Library version value check
BuildRequires: php-cli
@@ -172,6 +175,7 @@ Autoloader: %{phpdir}/Doctrine/Common/autoload.php
%prep
%setup -qn %{github_name}-%{github_commit}
+%patch0 -p1 -b .php8
sed -e 's/2.12.0-DEV/%{version}/' -i lib/Doctrine/Common/Version.php
@@ -223,7 +227,7 @@ sed "s#require.*autoload.*#require_once '%{buildroot}%{phpdir}/Doctrine/Common/a
: Upstream tests
RETURN_CODE=0
-for PHP_EXEC in "" php71 php72 php73 php74; do
+for PHP_EXEC in "" php73 php74 php80; do
if [ -z "$PHP_EXEC" ] || which $PHP_EXEC; then
$PHP_EXEC %{_bindir}/phpunit7 --verbose || RETURN_CODE=1
fi
@@ -247,6 +251,9 @@ exit $RETURN_CODE
%changelog
+* Wed Mar 31 2021 Remi Collet <remi@remirepo.net> - 2.13.3-4
+- add minimal patch to fix test suite for PHP 8
+
* Mon Jun 8 2020 Remi Collet <remi@remirepo.net> - 2.13.3-1
- update to 2.13.3