[horde] This week's round of fixes vs horde/wicked

Michael Schlueter michael at johalla.de
Tue Jun 3 21:43:54 UTC 2025


Hi Ralf,

I just did a composer update now I see following errors:

PHP message: PHP Fatal error:  Cannot declare class 
Kronolith_Application, because the name is already in use in 
/srv/www/horde/vendor/horde/kronolith/lib/Application.php on line 39;
PHP message: PHP Stack trace:;
PHP message: PHP   1. {main}() 
/srv/www/horde/vendor/horde/horde/services/portal/index.php:0;
PHP message: PHP   2. Horde_Core_Block_Layout_View->toHtml() 
/srv/www/horde/vendor/horde/horde/services/portal/index.php:35;
PHP message: PHP   3. Horde_Core_Block->getTitle() 
/srv/www/horde/vendor/horde/core/lib/Horde/Core/Block/Layout/View.php:100;
PHP message: PHP   4. Horde_Core_Block->_call($name = '_title', $default 
= '', $args = *uninitialized*) 
/srv/www/horde/vendor/horde/core/lib/Horde/Core/Block.php:152;
PHP message: PHP   5. Kronolith_Block_Summary->_title() 
/srv/www/horde/vendor/horde/core/lib/Horde/Core/Block.php:279;
PHP message: PHP   6. Horde_Registry->getInitialPage($app = 
*uninitialized*) 
/srv/www/horde/vendor/horde/kronolith/lib/Block/Summary.php:72;
PHP message: PHP   7. Horde_Registry->callAppMethod($app = NULL, $call = 
'getInitialPage', $options = *uninitialized*) 
/srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:2101;
PHP message: PHP   8. Horde_Registry->getApiInstance($app = NULL, $type 
= 'application') 
/srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:1201;
PHP message: PHP   9. class_exists($class = '_Application', $autoload = 
TRUE) /srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:859;
PHP message: PHP  10. Horde_Autoloader->loadClass($className = 
'_Application') 
/srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:859;
PHP message: PHP  11. Horde_Autoloader->_include($path = 
'/srv/www/horde/vendor/horde/kronolith/lib/Application.php') 
/srv/www/horde/vendor/horde/autoloader/lib/Horde/Autoloader.php:66;
PHP message: PHP  12. include() 
/srv/www/horde/vendor/horde/autoloader/lib/Horde/Autoloader.php:129',

Got error 'PHP message: PHP Fatal error:  Cannot declare class 
Horde_Application, because the name is already in use in 
/srv/www/horde/vendor/horde/horde/lib/Application.php on line 26;
PHP message: PHP Stack trace:;
PHP message: PHP   1. {main}() 
/srv/www/horde/vendor/horde/imp/dynamic.php:0;
PHP message: PHP   2. Horde_PageOutput->footer($opts = *uninitialized*) 
/srv/www/horde/vendor/horde/imp/dynamic.php:42;
PHP message: PHP   3. Horde_Core_Notification_Handler->notify($options = 
['listeners' => [0 => 'audio']]) 
/srv/www/horde/vendor/horde/core/lib/Horde/PageOutput.php:804;
PHP message: PHP   4. 
Horde_Core_Notification_Handler->addAppHandler($app = 0) 
/srv/www/horde/vendor/horde/core/lib/Horde/Core/Notification/Handler.php:43; 

PHP message: PHP   5. Horde_Registry->callAppMethod($app = 0, $call = 
'setupNotification', $options = ['args' => [0 => class 
Horde_Core_Notification_Handler { ... }], 'noperms' => TRUE]) 
/srv/www/horde/vendor/horde/core/lib/Horde/Core/Notification/Handler.php:100; 

PHP message: PHP   6. Horde_Registry->getApiInstance($app = 0, $type = 
'application') 
/srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:1201;
PHP message: PHP   7. class_exists($class = '0_Application', $autoload = 
TRUE) /srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:859;
PHP message: PHP   8. Horde_Autoloader->loadClass($className = 
'0_Application') 
/srv/www/horde/vendor/horde/core/lib/Horde/Registry.php:859;
PHP message: PHP   9. Horde_Autoloader->_include($path = 
'/srv/www/horde/vendor/horde/horde/lib/Application.php') 
/srv/www/horde/vendor/horde/autoloader/lib/Horde/Autoloader.php:66;
PHP message: PHP  10. include() 
/srv/www/horde/vendor/horde/autoloader/lib/Horde/Autoloader.php:129'

Do I need to change something in my configuration?

Regards
Michael


Am 30.05.25 um 06:17 schrieb Ralf Lang:
> Hello,
>
> This week we released another round of fixes:
>
> - horde/db now supports expressions as default values and upgrades 
> literal default values to expressions for MYSQL field types JSON, TEXT 
> (TINYTEXT, MEDIUMTEXT, LONGTEXT), BLOB (TINYBLOB, MEDIUMBLOB, LONGBLOB)
> This unbreaks horde DB migrations for nag and kronolith on oracle 
> mysql 8.0.13+ and related percona builds. Mariadb was not affected by 
> this problem
>
> - Upgrades for horde/form, horde/wups, horde/nag, horde/perms, 
> horde/util, horde/core, horde/base fix various form issues and 
> non-fatal warnings, including the permissions admin dialog and the 
> "full" add dialog on nag. The quick-add dialog of nag was not affected 
> by these problems.
> - Fixed issues with the search functionality on nag, mnemo an whups on 
> PHP 8.3 and 8.4
> - Fixed the reporting screen of whups for PHP 8.4
>
> - Large and mostly backward-incompatible release 2.0.0-alpha to 
> horde/text_wiki to make it run much better on PHP 8.3/8.4 versions. 
> See also 
> https://www.ralf-lang.de/2025/05/27/a-wicked-problem-from-the-past/ 
> for details. We decided this was both necessary and safe to do because 
> the main use case of horde/text_wiki is horde/wicked, but wicked until 
> recently had its own slightly different version of pear/text_wiki 
> internalized. External users of text_wiki should not upgrade from the 
> 1.x branch or master branch to 2.x without understanding the changes. 
> We are still trying to contact the original authors and current 
> maintainers of pear/text_wiki if they are interested in an upstream 
> solution for pear/text_wiki.
>
> NOT RELEASED:
>
> - horde/wicked has had major internal changes. I ripped out the 
> internal version of horde/text_wiki and made it depend on the 
> horde/text_wiki 2.x version described above. Along the way multiple 
> other warnings and issues under PHP 8.4 got fixed. As this is a short 
> work week / traditional vacation or beer drinking opportunity in 
> Germany I aligned with Torben that we will only release this as a 
> tagged version after he performs some more testing next week. It 
> "works for me" with the default wiki driver but we don't want to break 
> anybody's wiki.
>
>



More information about the horde mailing list