| Summary: | mail/roundcube: ICU & ctypes bugs | ||
|---|---|---|---|
| Product: | Ports & Packages | Reporter: | Daniel O'Connor <darius> |
| Component: | Individual Port(s) | Assignee: | Alex Dupre <ale> |
| Status: | Closed Unable to Reproduce | ||
| Severity: | Affects Only Me | Flags: | bugzilla:
maintainer-feedback?
(ale) |
| Priority: | --- | ||
| Version: | Latest | ||
| Hardware: | Any | ||
| OS: | Any | ||
|
Description
Daniel O'Connor
2023-04-28 00:49:59 UTC
It looks like you have something wrong in your installation, because: 1) the ICU version shipped with FreeBSD has the INTL_IDNA_VARIANT_UTS46 constant 2) the PHP ctype extension is a dependency of roundcube Yes I was surprised also, but I have php81-ctype-8.1.17 and icu-72.1,1 installed.. Try debugging your installation with php -i / phpinfo(), as you can see everything should work properly:
pkg list
roundcube-php81-1.6.1,1 Fully skinnable XHTML/CSS webmail written in PHP
php81-intl-8.1.16_1 The intl shared extension for php
php81-ctype-8.1.16_1 The ctype shared extension for php
icu-72.1,1 International Components for Unicode (from IBM)
% cat test.php
<?
$domain = 'FreeBSD.org';
$variant = INTL_IDNA_VARIANT_UTS46;
$options = IDNA_NONTRANSITIONAL_TO_ASCII;
var_dump(idn_to_ascii($domain, $options, $variant));
$options = IDNA_NONTRANSITIONAL_TO_UNICODE;
var_dump(idn_to_utf8($domain, $options, $variant));
var_dump(ctype_alpha('FreeBSD'));
var_dump(ctype_alpha('FreeBSD 13.1'));
?>
% php test.php
string(11) "freebsd.org"
string(11) "freebsd.org"
bool(true)
bool(false)
Hmm that works fine (I had to make the first line '<?php' though) - I get the same result as you. I am running PHP scripts via php-fpm (web server is nginx). If I run the script via the web server I get the same error as I saw in roundcube. Ahh damnit I just realised what happened. I forgot to restart php-fpm after the new PHP packages were installed. I restarted it and now it works! Sorry for the noise. |