[pkg-php-pear] Bug#1082460: php-opis-closure: FTBFS with php8.4_8.4.0~beta4-1: make[1]: *** [debian/rules:14: override_dh_auto_test] Error 1

Athos Ribeiro athoscribeiro at gmail.com
Sat Sep 21 03:16:59 BST 2024


Source: php-opis-closure
Version: 3.6.3-2
Severity: normal
Justification: FTBFS
Tags: trixie sid ftbfs
User: pkg-php-pear at lists.alioth.debian.org
Usertags: php8.4

Hi,

During a test rebuild, php-opis-closure was found to fail to build with
php8.4 8.4.0~beta4-1 available in experimental.

There are intentions to transition to php8.4 for trixie, please see #1074180.

To reproduce this locally, you need to install php8.4 and php-defaults from
experimental on an unstable system or build chroot.

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> phpabtpl 2>/dev/null \
> 	--require-file=../src/autoload.php > debian/autoload.php.test.tpl
> ln -s ../functions.php src/functions.php
> phpab \
> 	-o tests/autoload.php \
> 	-t debian/autoload.php.test.tpl \
> 	tests
> phpab %development% - Copyright (C) 2009 - 2024 by Arne Blankerts and Contributors
> 
> Scanning directory tests
> 
> Autoload file tests/autoload.php generated.
> 
> phpunit --no-coverage --bootstrap tests/autoload.php
> PHPUnit 9.6.20 by Sebastian Bergmann and contributors.
> 
> Runtime:       PHP 8.4.0beta4
> Configuration: /<<PKGBUILDDIR>>/phpunit.xml
> 
> ...............................................................  63 / 114 ( 55%)
> ...........F...F.FFF.....FFFF....F...........F.....             114 / 114 (100%)
> 
> Time: 00:00.036, Memory: 10.00 MB
> 
> There were 11 failures:
> 
> 1) Opis\Closure\Test\NamespaceUnqualifiedTest::test_instantiate_non_qualified_class_name
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function (){ new \Opis\Closure\Test\A\B; }'
> +'function (){ new \{closure:Opis\Closure\Test\A\B; }'
> 
> /<<PKGBUILDDIR>>/tests/NamespaceUnqualifiedTest.php:14
> 
> 2) Opis\Closure\Test\ReflectionClosureTest::testNewInstance2
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function (){ new \Opis\Closure\Test\A; }'
> +'function (){ new \{closure:Opis\Closure\Test\A; }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosureTest.php:36
> 
> 3) Opis\Closure\Test\ReflectionClosureTest::testClosureResolveArguments
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function (\Opis\Closure\Test\Foo $p){}'
> +'function (\{closure:Opis\Closure\Test\Foo $p){}'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosureTest.php:87
> 
> 4) Opis\Closure\Test\ReflectionClosureTest::testCloureResolveInBody
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function () { return new \Opis\Closure\Test\Foo(); }'
> +'function () { return new \{closure:Opis\Closure\Test\Foo(); }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosureTest.php:116
> 
> 5) Opis\Closure\Test\ReflectionClosureTest::testClosureResolveStaticMethod
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function () { return \Opis\Closure\Test\Foo::test(); }'
> +'function () { return \{closure:Opis\Closure\Test\Foo::test(); }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosureTest.php:146
> 
> 6) Opis\Closure\Test\ReflectionClosure2Test::testResolveReturnType
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function (): \Opis\Closure\Test\Foo{}'
> +'function (): \{closure:Opis\Closure\Test\Foo{}'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure2Test.php:103
> 
> 7) Opis\Closure\Test\ReflectionClosure2Test::testClosureInsideClosure
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function() { return function ($a): \Opis\Closure\Test\A { return $a; }; }'
> +'function() { return function ($a): \{closure:Opis\Closure\Test\A { return $a; }; }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure2Test.php:118
> 
> 8) Opis\Closure\Test\ReflectionClosure2Test::testAnonymousInsideClosure
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function() { return new class extends \Opis\Closure\Test\A {}; }'
> +'function() { return new class extends \{closure:Opis\Closure\Test\A {}; }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure2Test.php:133
> 
> 9) Opis\Closure\Test\ReflectionClosure2Test::testClosureResolveTraitsNamesInAnonymousClasses
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function () { new class { use \Opis\Closure\Test\Foo; }; }'
> +'function () { new class { use \{closure:Opis\Closure\Test\Foo; }; }'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure2Test.php:167
> 
> 10) Opis\Closure\Test\ReflectionClosure3Test::testResolveReturnType
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'function (): ?\Opis\Closure\Test\Foo{}'
> +'function (): ?\{closure:Opis\Closure\Test\Foo{}'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure3Test.php:85
> 
> 11) Opis\Closure\Test\ReflectionClosure6Test::testUnionTypes
> Failed asserting that two strings are equal.
> --- Expected
> +++ Actual
> @@ @@
> -'fn(): string|int|false|\Opis\Closure\Test\Bar|null => 1'
> +'fn(): string|int|false|\{closure:Opis\Closure\Test\Bar|null => 1'
> 
> /<<PKGBUILDDIR>>/tests/ReflectionClosure6Test.php:42
> 
> FAILURES!
> Tests: 114, Assertions: 226, Failures: 11.
> make[1]: *** [debian/rules:14: override_dh_auto_test] Error 1


The full build log is available at
http://people.ubuntu.com/~athos-ribeiro/rebuilds/php8.4-beta/2/php-opis-closure/php-opis-closure_3.6.3-2+rebuild1726680745_amd64-2024-09-18T17:32:26Z.build



More information about the pkg-php-pear mailing list