Control: retitle -1 php8.4-intl: idn_to_ascii("") throws ValueError ‒ 
regression from bookworm
Control: reassign -1 php8.4-intl 8.4.6-2
Control: affects -1 php-net-publicsuffix

On Mon, Dec 16, 2024 at 05:51:30PM +0000, Santiago Vila wrote:
> Package: src:php-net-publicsuffix
> Version: 0.2-1.1
> Severity: serious
> Tags: ftbfs
> 
> Dear maintainer:
> 
> During a rebuild of all packages in unstable, your package failed to build:
> 
> --------------------------------------------------------------------------------
> [...]
>  debian/rules build
> dh build
> dh: warning: Compatibility levels before 10 are deprecated (level 9 in use)
>    dh_update_autotools_config
>    debian/rules override_dh_auto_test
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> ./test.php
> PHP Fatal error:  Uncaught ValueError: idn_to_ascii(): Argument #1 ($domain) 
> must not be empty in /<<PKGBUILDDIR>>/Net/PublicSuffix.php:89
> Stack trace:
> #0 /<<PKGBUILDDIR>>/Net/PublicSuffix.php(89): idn_to_ascii()
> #1 /<<PKGBUILDDIR>>/Net/PublicSuffix.php(144): 
> Net_PublicSuffix::_canonicalize()
> #2 /<<PKGBUILDDIR>>/Net/PublicSuffix.php(47): 
> Net_PublicSuffix->get_registered_domain()
> #3 /<<PKGBUILDDIR>>/test.php(21): Net_PublicSuffix::registered_domain()
> #4 /<<PKGBUILDDIR>>/test.php(33) : eval()'d code(5): checkPublicSuffix()
> #5 /<<PKGBUILDDIR>>/test.php(33): eval()
> #6 {main}
>   thrown in /<<PKGBUILDDIR>>/Net/PublicSuffix.php on line 89
> make[1]: *** [debian/rules:6: override_dh_auto_test] Error 255
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> make: *** [debian/rules:3: build] Error 2
> dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2

This is a regression from bookworm php8.2-intl 8.2.28-1~deb12u1:
  $ cat a.php
  <?php
  print(idn_to_ascii("gaming") . "\n");
  print(idn_to_ascii("гаминг") . "\n");
  print(idn_to_ascii("") . "\n");
  bookworm$ php a.php
  gaming
  xn--80afbtth
  
  sid$ php a.php
  gaming
  xn--80afbtth
  PHP Fatal error:  Uncaught ValueError: idn_to_ascii(): Argument #1 ($domain) 
must not be empty in /srv/a.php:4
  Stack trace:
  #0 /srv/a.php(4): idn_to_ascii()
  #1 {main}
    thrown in /srv/a.php on line 4

Nothing on https://www.php.net/manual/en/function.idn-to-ascii.php
indicates a change after PHP 8 or this being invalid at all.

Best,

Attachment: signature.asc
Description: PGP signature

Reply via email to