Control: retitle -1 php-net-publicsuffix: FTBFS: PHP Fatal error: Uncaught ValueError: idn_to_ascii(): Argument #1 ($domain) must not be empty Control: reassign -1 php-net-publicsuffix
Sorry, but no - the usage of idn_to_ascii() is invalid in php-net-publicsuffix and you need to fix it there. The missing check got fixed in https://github.com/php/php-src/commit/33f1cf202ef1 and it's OK to make small changes like this when changing major versions. Ondrej -- Ondřej Surý (He/Him) [email protected] > On 23. 5. 2025, at 19:15, наб <[email protected]> wrote: > > 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,

