[pkg-php-pear] Bug#1061514: php-zeta-console-tools: FTBFS with php 8.3

Athos Ribeiro athos.ribeiro at canonical.com
Thu Jan 25 19:38:49 GMT 2024


Source: php-zeta-console-tools
Version: 1.7.3-1
Severity: normal
Tags: patch
X-Debbugs-Cc: athos.ribeiro at canonical.com

Dear Maintainer,

The package currently FTBFS with PHP 8.3 (in experimental).

This happens because, when incrementing booleans (which is a noop in
PHP8 < 8.4), PHP 8.3 emits a E_WARNING, leading to a phpunit test
failure.

This has been reported upstream in
https://github.com/zetacomponents/ConsoleTools/pull/25

I am also attaching a patch which should fix this.
-------------- next part --------------
Description: Do not increment boolean variables
 Before php8.3, incrementing/decrementing boolean variables have no effect. In
 php8.3, an E_WARNING is emitted to let users know about the lack of effect of
 the operation, which may cause test suite failures. Starting in php8.4, those
 operations will have a new effect over the variable. Let's avoid these output
 changes by not performing inc/dec operations over booleans. For further
 reference, please see https://wiki.php.net/rfc/saner-inc-dec-operators.
Author: Athos Ribeiro <athos.ribeiro at canonical.com>
Forwarded: https://github.com/zetacomponents/ConsoleTools/pull/25
Last-Update: 2024-01-25
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/input/help_generators/standard.php
+++ b/src/input/help_generators/standard.php
@@ -318,7 +318,7 @@
         $synopsis = '';
 
         // Break after a nesting level of 2
-        if ( $depth++ > 2 || ( in_array( $option->short, $usedOptions['short'] ) && in_array( $option->long, $usedOptions['long'] ) ) ) return $synopsis;
+        if ( (!is_bool($depth) && $depth++ > 2) || ( in_array( $option->short, $usedOptions['short'] ) && in_array( $option->long, $usedOptions['long'] ) ) ) return $synopsis;
         
         $usedOptions['short'][] = $option->short;
         $usedOptions['long'][]  = $option->long;


More information about the pkg-php-pear mailing list