#1003652 php-horde-compress: (autopkgtest) needs update for php8.1: deprecation warnings on stderr

#1003652#5
Date:
2022-01-13 09:10:27 UTC
From:
To:
Dear maintainer(s),

We are in the transition of replacing php7.4 with php8.1 [0]. With a
recent upload of php-defaults the autopkgtest of php-horde-compress
fails in testing when that autopkgtest is run with the binary packages
of php-defaults from unstable. It passes when run with only packages
from testing. In tabular form:

                        pass            fail
php-defaults           from testing    92
php-horde-compress     from testing    2.2.4-1
versioned deps         from testing    from unstable
all others             from testing    from testing

I copied some of the output at the bottom of this report.

Currently this regression is blocking the migration of php-defaults to
testing [1]. https://www.php.net/ChangeLog-8.php list the changes since
7.4 and may help to identify what needs to be updated.

The test itself passes, but the autopkgtest fails because of deprecation
warnings on stderr. Output on stderr makes autopkgtest fail by default,
unless `allow-stderr` is added to the set of restrictions. As a flood of
deprecation warnings in server logs my be very unwanted, I'm not saying
that adding the restriction to autopkgtest is the right answer to this
issue, but because of the php8.1 transition, it needs to be resolved one
way or the other.

More information about this bug and the reason for filing it can be found on
https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation

Paul

[0] https://bugs.debian.org/976811
[1] https://qa.debian.org/excuses.php?package=php-defaults

https://ci.debian.net/data/autopkgtest/testing/amd64/p/php-horde-compress/18254592/log.gz

PHPUnit 9.5.11 by Sebastian Bergmann and contributors.

Runtime:       PHP 8.1.1
Configuration:
/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/phpunit.xml

Warning:       Test case class not matching filename is deprecated
                in
/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/RarTest.php
                Class name was 'Horde_Compress_RarTest', expected 'RarTest'
Warning:       Test case class not matching filename is deprecated
                in
/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TarTest.php
                Class name was 'Horde_Compress_TarTest', expected 'TarTest'
Warning:       Test case class not matching filename is deprecated
                in
/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php
                Class name was 'Horde_Compress_TnefTest', expected
'TnefTest'
Warning:       Test case class not matching filename is deprecated
                in
/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/ZipTest.php
                Class name was 'Horde_Compress_ZipTest', expected 'ZipTest'

PHP Deprecated:  Return type of
Horde_Support_Stub::offsetExists($offset) should either be compatible
with ArrayAccess::offsetExists(mixed $offset): bool, or the
#[\ReturnTypeWillChange] attribute should be used to temporarily
suppress the notice in /usr/share/php/Horde/Support/Stub.php on line 111
PHP Deprecated:  Return type of Horde_Support_Stub::offsetGet($offset)
should either be compatible with ArrayAccess::offsetGet(mixed $offset):
mixed, or the #[\ReturnTypeWillChange] attribute should be used to
temporarily suppress the notice in /usr/share/php/Horde/Support/Stub.php
on line 98
PHP Deprecated:  Return type of Horde_Support_Stub::offsetSet($offset,
$value) should either be compatible with ArrayAccess::offsetSet(mixed
$offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute
should be used to temporarily suppress the notice in
/usr/share/php/Horde/Support/Stub.php on line 105
PHP Deprecated:  Return type of Horde_Support_Stub::offsetUnset($offset)
should either be compatible with ArrayAccess::offsetUnset(mixed
$offset): void, or the #[\ReturnTypeWillChange] attribute should be used
to temporarily suppress the notice in
/usr/share/php/Horde/Support/Stub.php on line 118
PHP Deprecated:  Return type of Horde_Support_Stub::count() should
either be compatible with Countable::count(): int, or the
#[\ReturnTypeWillChange] attribute should be used to temporarily
suppress the notice in /usr/share/php/Horde/Support/Stub.php on line 126
PHP Deprecated:  Return type of Horde_Support_Stub::getIterator() should
either be compatible with IteratorAggregate::getIterator(): Traversable,
or the #[\ReturnTypeWillChange] attribute should be used to temporarily
suppress the notice in /usr/share/php/Horde/Support/Stub.php on line 135
.......SSSSSS..PHP Deprecated:  Return type of
Horde_Stream_Filter_Crc32::filter($in, $out, &$consumed, $closing)
should either be compatible with php_user_filter::filter($in, $out,
&$consumed, bool $closing): int, or the #[\ReturnTypeWillChange]
attribute should be used to temporarily suppress the notice in
/usr/share/php/Horde/Stream/Filter/Crc32.php on line 41
PHP Deprecated:  Return type of Horde_Stream_Filter_Crc32::onCreate()
should either be compatible with php_user_filter::onCreate(): bool, or
the #[\ReturnTypeWillChange] attribute should be used to temporarily
suppress the notice in /usr/share/php/Horde/Stream/Filter/Crc32.php on
line 31
....                                               19 / 19 (100%)

Time: 00:00.016, Memory: 6.00 MB

There were 6 skipped tests:

1) Horde_Compress_TnefTest::testItipReply
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

2) Horde_Compress_TnefTest::testvTodo
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

3) Horde_Compress_TnefTest::testMeetingInvitation
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

4) Horde_Compress_TnefTest::testMeetingTnef
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

5) Horde_Compress_TnefTest::testAttachments
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

6) Horde_Compress_TnefTest::testMultipleAttachments
Horde_Mapi is not available

/tmp/autopkgtest-lxc.tdea4k_c/downtmp/build.DSa/src/Horde_Compress-2.2.4/test/Horde/Compress/TnefTest.php:32

OK, but incomplete, skipped, or risky tests!
Tests: 19, Assertions: 31, Skipped: 6.
autopkgtest [05:11:51]: test phpunit

#1003652#12
Date:
2022-07-15 05:22:53 UTC
From:
To:
Control: close -1
Control: fixed -1  2.2.4-2

This issue should be fixed since upload of php-horde-compress 2.2.4-2.
This upload introduces the inclusion of the Mapi tests marked as
skipped. The real underlying fixes have been provided by fixing unit
test in:

   php-horde-support 2.2.2-1
   php-horde-stream-filter 2.0.5-1

Greets,
Mike