Error after updating to version 25.0.6.1

I updated using the command line from (I think) version 25.0.5.1 to 25.0.6.1. After the update I can no longer run sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on.

I get this error:

An unhandled exception has been thrown:
ParseError: syntax error, unexpected 'private' (T_PRIVATE), expecting variable (T_VARIABLE) in /var/www/nextcloud/ap
ps/user_migration/lib/Command/Export.php:45
Stack trace:
#0 /var/www/nextcloud/lib/composer/composer/ClassLoader.php(428): Composer\Autoload\includeFile()
#1 [internal function]: Composer\Autoload\ClassLoader->loadClass()
#2 [internal function]: spl_autoload_call()
#3 /var/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(114): ReflectionClass->__construct()
#4 /var/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(133): OC\AppFramework\Utility\SimpleConta
iner->resolve()
#5 /var/www/nextcloud/lib/private/AppFramework/DependencyInjection/DIContainer.php(466): OC\AppFramework\Utility\Sim
pleContainer->query()
#6 /var/www/nextcloud/lib/private/ServerContainer.php(145): OC\AppFramework\DependencyInjection\DIContainer->queryNo
Fallback()
#7 /var/www/nextcloud/lib/private/Console/Application.php(220): OC\ServerContainer->query()
#8 /var/www/nextcloud/lib/private/Console/Application.php(130): OC\Console\Application->loadCommandsFromInfoXml()
#9 /var/www/nextcloud/console.php(99): OC\Console\Application->loadCommands()
#10 /var/www/nextcloud/occ(11): require_once('/var/www/nextcl...')

I thought maybe it has to do with the config file but I do not see any issues with that:

<?php
$CONFIG = array (
  'updatechecker' => false,
  'instanceid' => '[...]',
  'passwordsalt' => '[...]',
  'secret' => '[...]',
  'trusted_domains' => 
  array (
    0 => '192.168.0.202',
    1 => '[...].com',
  ),
  'datadirectory' => '/data/ocdata',
  'overwrite.cli.url' => 'http://192.168.0.202/nextcloud',
  'dbtype' => 'mysql',
  'version' => '25.0.6.1',
  'dbname' => 'ocdb',
  'dbhost' => 'localhost',
  'dbtableprefix' => 'oc_',
  'dbuser' => '[...]',
  'dbpassword' => '[...]',
  'logtimezone' => 'UTC',
  'installed' => true,
  'maintenance' => false,
  'theme' => '',
  'loglevel' => 1,
  'htaccess.RewriteBase' => '/nextcloud',
  'trashbin_retention_obligation' => '30, 370',
  'mysql.utf8mb4' => true,
);

This is an issue with the user_migration app, which broke compatibility with PHP7.4, which you probably use.

Try to disable the app with occ app:disable user_migration before.

EDIT: Proper issue at

1 Like

Would it be better to update my version of php if possible?

$ php -v
PHP 7.4.33 (cli) (built: Feb 14 2023 18:30:50) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies

I get the same error when trying to disable user migration.

~$ sudo -u www-data php /var/www/nextcloud/occ app:disable user_migration
An unhandled exception has been thrown:
ParseError: syntax error, unexpected 'private' (T_PRIVATE), expecting variable (T_VARIABLE) in /var/www/nextcloud/apps/user_migration/lib/Command/Export.php:45
Stack trace:
#0 /var/www/nextcloud/lib/composer/composer/ClassLoader.php(428): Composer\Autoload\includeFile()
#1 [internal function]: Composer\Autoload\ClassLoader->loadClass()
#2 [internal function]: spl_autoload_call()
#3 /var/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(114): ReflectionClass->__construct()
#4 /var/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(133): OC\AppFramework\Utility\SimpleContainer->resolve()
#5 /var/www/nextcloud/lib/private/AppFramework/DependencyInjection/DIContainer.php(466): OC\AppFramework\Utility\SimpleContainer->query()
#6 /var/www/nextcloud/lib/private/ServerContainer.php(145): OC\AppFramework\DependencyInjection\DIContainer->queryNoFallback()
#7 /var/www/nextcloud/lib/private/Console/Application.php(220): OC\ServerContainer->query()
#8 /var/www/nextcloud/lib/private/Console/Application.php(130): OC\Console\Application->loadCommandsFromInfoXml()
#9 /var/www/nextcloud/console.php(99): OC\Console\Application->loadCommands()
#10 /var/www/nextcloud/occ(11): require_once('/var/www/nextcl...')

Try occ app:remove user_migration then (it will only remove the app code, not any user data).

I get the same error. I do not think I can do any thing that requires running occ.

Thanks for your help. I ended up updating to php 8.2 but that gave me an error so I changed to php 8.1. It seems to be working now on php 8.1.