T4B
1
just updated the panel and i got this
! ] Upgrading Roundcube to version 1.7.4…
ERROR: update.sh failed (Roundcube 1.6.17 → 1.7.4)
[ ! ] Error upgrading Roundcube 1.7.4
how to fix this ? and when i visit the web mail page
Oops… something went wrong!
An internal error has occurred. Your request cannot be processed at this time.
T4B
2
error log (/var/log/roundcube/errors.log) had these lines:
- Unknown column ‘expires_at’ in ‘INSERT INTO’ (session)
- Call to undefined function array_last()
- Call to undefined function system()
I followed some advice and ran these commands, and webmail works now:
sed -i -E 's/(^disable_functions.*),system(.*$)/\1\2/' /etc/php/$(php -v | head -n1 | grep -o '[0-9]\.[0-9]')/cli/php.ini
v-add-user-composer admin
cd /var/lib/roundcube
COMPOSER_ALLOW_SUPERUSER=1 /home/admin/.composer/composer -n update
php -d disable_functions= bin/update.sh
After that I put “system” back into the disable_functions line in the same php.ini file.
Composer installed a bunch of new packages, including symfony/polyfill-php85. The last command said “This instance of Roundcube is up-to-date.”
My questions:
- Is this the correct way to fix it?
- Did I do anything wrong or risky that I should undo?
- Is there anything else I should check to make sure Roundcube is fully OK?
Thanks!
What OS you are using?
It’s a way
v-add-sys-roundcube should have managed that but it’s ok the way you finished the update.
Just once thing, you didn’t need this command:
sed -i -E 's/(^disable_functions.*),system(.*$)/\1\2/' /etc/php/$(php -v | head -n1 | grep -o '[0-9]\.[0-9]')/cli/php.ini
because the last command enable all functions just for the bin/update.sh command.
php -d disable_functions= bin/update.sh
But you added again the functions so all looks good.
No.
All should work fine now.