HowTo: Upgrade to Nextcloud 26 on Debian Bullseye

Thanks for the help. I have updated to 25.0.8 (with updater.phar) but now 26.0.x is not offered for update if i run updater.phar again. Is there a way to ā€œforceā€ update check again?

You are definitely on PHP 8.2 now? php -v

I am not sure how exactly it works, but saw a 30 minutes cache for update checks. So probably give it that time before trying other things. Also changing the channel to beta and back to stable might help.

I am not aware of a way to force an update if it was not offered, aside of applying it manually: Upgrade manually ā€” Nextcloud latest Administration Manual latest documentation

Yes i am sure im on PHP8.2:


Still 25.0.8, very strange! :face_with_raised_eyebrow:

Sorry but i canā€™t follow. How to upgrade to 26.x.x?

Sorry, my post was not helpful. Deleted it.

Hello,

I may have the same problem as TheRaven500, I have no update from 26 to 27 :

I had my Nextcloud in version 15, on a debian 9, with php7.0

I upgraded to debian 11 and php 8.2 with Nextcloud 26, yes I know itā€™sā€¦ a huge jump :smiley:

Iā€™m on 26.0.3 now, on debian 11 with apache2 and php8.2-fpm, everythingā€™s OK but I donā€™t see a message to upgrade to version 27, why? How can I get the upgrade to 27? Thank you in advance :smiley:

NC27 is very new, and due to updates being offered in waves, this is quite expected. TheRaven500 has the issue that NC26 is not offered, which is unexpected and an issue since NC25 does not officially support PHP 8.2, used already.

I remember this bug, that an update to the same version that has been applied already is offered. I think it has to do something with the updater cache indeed. If I remember correctly, (re)moving the updater data (from NC data dir) was a solution. But better to search for related issues/topics first, and ā€œmoveā€ instead of ā€œremoveā€ the directory, so that it can be reverted.

Iā€™m really sorry, I managed to get the update from the command line, forget what I saidā€¦ via :

sudo -u www-data php8.2 --define apc.enable_cli=1 updater/updater.phar

But it displays 26.0.3 on the web, but itā€™s still up to date, weird, but weā€™ll see with the next release, thanks and sorry.

EDIT : after php8.2-fpm and apache2 restart itā€™s okay it displayed 27.0.0 in the GUI Web Interface

1 Like

@TheRaven500 and @DevilDan You can always do a manual upgrade: Upgrade manually ā€” Nextcloud latest Administration Manual latest documentation

Yes is more complex and time consuming, and yes you do not necessarily want to do it, but at least in the case of @TheRaven500 it is perhaps the only option. (Donā€™t skip 26, if you want to go to 27!)

@DevilDan You can just wait a little bit longer, or you could switch to the beta channel. However, itā€™s possible that 26.0.3 RC is offered via the beta channel, which means you would have to go through two updates, in order to get to 27.

1 Like

Thank you! I have now manually updated to 26.0.3 and that worked perfectly. Sometimes a good advice is better than a helmet! :grin:
Edit:
Interesting is that now version 27.x.x is also not displayed. Looks like it asks only every 24h or something like that for a new version. :man_shrugging:

1 Like

Glad it worked out :slight_smile:

Hi @TheRaven500 it is working with my command ? And restart fpm and apache

I donā€™t think so, because your issue is different from the on @TheRaven500 had. @TheRaven500 was on a incompatible PHP version, while you are just waiting for Nextcloud to offer you the update to 27. As @MichaIng already said, Nextcloud updates are coming in waves. You can either force the upgrade by using the Beta channel, which should still work at this point in time, by going over 26.0.3 (RC), or you could upgrade manually, or you could wait :wink:

No, has nothing to do with this i think. After switching to ā€œbetaā€ channel, NC27 is ready to update to. But i donā€™t like to update before it reaches 27.0.1 :wink:
0 sounds like ā€œbetaā€. :stuck_out_tongue_winking_eye:

I have been able to muddle my way through to Debian 12 and NC27 but my files view, calendar, and contacts are non-functional.

I get Sabre DAV errors in the logs:

[webdav] Error: Sabre\Xml\LibXMLException: Validation failed: no DTD found ! on line 1, column 130 at <<closure>>

 0. /var/www/nextcloud/3rdparty/sabre/xml/lib/Element/Base.php line 80
    Sabre\Xml\Reader->parseInnerTree()
 1. <<closure>>
    Sabre\Xml\Element\Base::xmlDeserialize()
 2. /var/www/nextcloud/3rdparty/sabre/xml/lib/Reader.php line 234
    call_user_func()
 3. /var/www/nextcloud/3rdparty/sabre/xml/lib/Deserializer/functions.php line 87
    Sabre\Xml\Reader->parseCurrentElement()
 4. /var/www/nextcloud/3rdparty/sabre/xml/lib/Element/KeyValue.php line 98
    Sabre\Xml\Deserializer\keyValue()
 5. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Xml/Request/SyncCollectionReport.php line 80
    Sabre\Xml\Element\KeyValue::xmlDeserialize()
 6. <<closure>>
    Sabre\DAV\Xml\Request\SyncCollectionReport::xmlDeserialize()
 7. /var/www/nextcloud/3rdparty/sabre/xml/lib/Reader.php line 234
    call_user_func()
 8. /var/www/nextcloud/3rdparty/sabre/xml/lib/Reader.php line 75
    Sabre\Xml\Reader->parseCurrentElement()
 9. /var/www/nextcloud/3rdparty/sabre/xml/lib/Service.php line 129
    Sabre\Xml\Reader->parse()
10. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 684
    Sabre\Xml\Service->parse()
11. <<closure>>
    Sabre\DAV\CorePlugin->httpReport()
12. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    call_user_func_array()
13. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit()
14. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod()
15. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
16. /var/www/nextcloud/apps/dav/lib/Server.php line 364
    Sabre\DAV\Server->exec()
17. /var/www/nextcloud/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
18. /var/www/nextcloud/remote.php line 172
    require_once("/var/www/nextcl ... p")

REPORT /remote.php/dav/addressbooks/users/<redacted>/contacts/
from <Redacted> at 2023-06-26T12:49:05+00:00
[dav] Warning: Sabre\VObject\ParseException: This parser only supports VCARD and VCALENDAR files at <<closure>>

0. /var/www/nextcloud/3rdparty/sabre/vobject/lib/Parser/MimeDir.php line 90
   Sabre\VObject\Parser\MimeDir->parseDocument()
1. /var/www/nextcloud/3rdparty/sabre/vobject/lib/Reader.php line 47
   Sabre\VObject\Parser\MimeDir->parse()
2. /var/www/nextcloud/apps/dav/lib/CalDAV/WebcalCaching/RefreshWebcalService.php line 247
   Sabre\VObject\Reader::read()
3. /var/www/nextcloud/apps/dav/lib/CalDAV/WebcalCaching/RefreshWebcalService.php line 86
   OCA\DAV\CalDAV\WebcalCaching\RefreshWebcalService->queryWebcalFeed()
4. /var/www/nextcloud/apps/dav/lib/BackgroundJob/RefreshWebcalJob.php line 115
   OCA\DAV\CalDAV\WebcalCaching\RefreshWebcalService->refreshSubscription()
5. /var/www/nextcloud/lib/public/BackgroundJob/Job.php line 86
   OCA\DAV\BackgroundJob\RefreshWebcalJob->run()
6. /var/www/nextcloud/lib/public/BackgroundJob/Job.php line 67
   OCP\BackgroundJob\Job->start()
7. /var/www/nextcloud/apps/dav/lib/BackgroundJob/RefreshWebcalJob.php line 108
   OCP\BackgroundJob\Job->execute()
8. /var/www/nextcloud/cron.php line 152
   OCA\DAV\BackgroundJob\RefreshWebcalJob->execute()

at 2023-06-26T12:50:03+00:00

I found the following bug report related to the VCARD Parsing error:

I have a full system backup prior to starting the debian 12 upgrade that I can fall back on.

Any advice would be appreciated.

Maybe a php package is missing? php-xml for example?

1 Like

And also assure that the modules of this package are enabled:

phpenmod simplexml xml xmlreader xmlwriter

If you needed to add this setting via CLI, then it is missing in your PHP config? I think in this case, the NC cron jobs and other CLI operations will fail. CLI currently strictly requires the configured cache to be available, hence if APCu is configured in config.php, apc.enable_cli=1 is mandatory. I personally add own settings as modules:

echo -e '; Nextcloud config\n; priority=99\napc.enable_cli=1' > /etc/php/8.2/mods-available/nextcloud.ini
phpenmod nextcloud

For now, I restored my system backup from before the bookworm upgrade.

Couple of points:

  1. All the required packages are installed and enabled. I manually checked that.

  2. The web interface loads, but apps like files, contacts, and calendars load no data.

  3. Looking at the browser console, there are HTTP 400 error codes being thrown trying to access the DAV url. The desktop client throws similar errors.

  4. I am able to access the underlying SabreDAV by /remote.php/dav/ sucessfully via a browser.

I suspect the XML parsing errors are a related to the HTTP 400 errors and the parser not getting an XML DAV reply but that is the extent of the debugging I was able to do before needing to restore a backup. Alas, I do not have a lab.

Sounds like the Nextcloud update went wrong, probably some filesystem corruption or similar. A CLI integrity check as well as the updater log might give/have given some hints.

The software/packages/versions Debian Bookworm provides with its APT repositories are without doubt fully compatible with Nextcloud 26 and 27.

BTW: I could not wait and am now on NC27.0.0 and it works. :+1:

1 Like