NC 26.0.4.2 TypeError: OC_App::checkAppDependencies(): Argument #3 ($info) must be of type array, null given

Support intro

Sorry to hear you’re facing problems :slightly_frowning_face:

help.nextcloud.com is for home/non-enterprise users. If you’re running a business, paid support can be accessed via portal.nextcloud.com where we can ensure your business keeps running smoothly.

In order to help you as quickly as possible, before clicking Create Topic please provide as much of the below as you can. Feel free to use a pastebin service for logs, otherwise either indent short log examples with four spaces:

example

Or for longer, use three backticks above and below the code snippet:

longer
example
here

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can :heart:

Nextcloud version (eg, 20.0.5): NC 26.0.4.2 2023-07-20T11:03:42+00:00 318ac2714fafa63dcd90805a5cb8ee9d60b58f53
Operating system and version (eg, Ubuntu 20.04): some nix hosted by Gandi
Apache or nginx version (eg, Apache 2.4.25): replace me
PHP version (eg, 7.4): 8.1

The issue you are facing:

Is this the first time you’ve seen this error? (Y/N): Y

Steps to replicate it:

  1. upgraded from 20.0.2 to 20.0.4 with the web interface (one thousand clics and re-uploaded the core/shipped.json several times)
  2. tried to update from the web page. Failed.
  3. In console : ./occ upgrade :
hosting-user@example:/srv/data/web/vhosts/example.fr/htdocs$ ./occ upgrade
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Setting log level to debug
Turned on maintenance mode
Updating database schema
Updated database
Disabled incompatible app: calendar
Update app contacts from App Store
An unhandled exception has been thrown:
TypeError: OC_App::checkAppDependencies(): Argument #3 ($info) must be of type array, null given, called in /srv/data/web/vhosts/example.fr/htdocs/lib/private/legacy/OC_App.php on line 1007 and defined in /srv/data/web/vhosts/example.fr/htdocs/lib/private/legacy/OC_App.php:1203
Stack trace:
#0 /srv/data/web/vhosts/example.fr/htdocs/lib/private/legacy/OC_App.php(1007): OC_App::checkAppDependencies()
#1 /srv/data/web/vhosts/example.fr/htdocs/lib/private/Installer.php(200): OC_App::updateApp()
#2 /srv/data/web/vhosts/example.fr/htdocs/lib/private/Updater.php(422): OC\Installer->updateAppstoreApp()
#3 /srv/data/web/vhosts/example.fr/htdocs/lib/private/Updater.php(281): OC\Updater->upgradeAppStoreApps()
#4 /srv/data/web/vhosts/example.fr/htdocs/lib/private/Updater.php(140): OC\Updater->doUpgrade()
#5 /srv/data/web/vhosts/example.fr/htdocs/core/Command/Upgrade.php(225): OC\Updater->upgrade()
#6 /srv/data/web/vhosts/example.fr/htdocs/3rdparty/symfony/console/Command/Command.php(255): OC\Core\Command\Upgrade->execute()
#7 /srv/data/web/vhosts/example.fr/htdocs/3rdparty/symfony/console/Application.php(1009): Symfony\Component\Console\Command\Command->run()
#8 /srv/data/web/vhosts/example.fr/htdocs/3rdparty/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand()
#9 /srv/data/web/vhosts/example.fr/htdocs/3rdparty/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun()
#10 /srv/data/web/vhosts/example.fr/htdocs/lib/private/Console/Application.php(211): Symfony\Component\Console\Application->run()
#11 /srv/data/web/vhosts/example.fr/htdocs/console.php(100): OC\Console\Application->run()
#12 /srv/data/web/vhosts/example.fr/htdocs/occ(11): require_once('...')
hosting-user@example:/srv/data/web/vhosts/example.fr/htdocs$ 

Is it me or is it a bug to report ?
Thanks

Can you elaborate on what you mean by “oun thousand clicks” and having to “re-upload core/shipped.json several times”? You were just using the web-based updater like described here, correct?

https://docs.nextcloud.com/server/latest/admin_manual/maintenance/update.html#using-the-web-based-updater

The line where this is error happening shouldn’t happen for the most part. One guess about what could cause is it the one of your apps folder permissions got messed up.

That might explain why some have had success re-installing apps:

@jtr Hi, thanks for your answer.
Yes, it is the web interface.

  • Sometimes (often on previous upgrades) it stops on making the backup (too long for the allowed time), and i have to remove the .step file and re-start the process until it reach this stage. (Thus I have to remove manually the failed backup. Too long for the web interface : more than 30000 files to remove)
  • I have hundreds clicks, during the delete old files or move new files stages for relaunching the upgrade. The process stops often due to the number of directories and files to remove. (maybe a return of the error code and some javascript could avoid me to stay for hours at the computer clicking the same button)
  • Oh, yes… The core/shipped.json is removed during the deletion of the old files. But it is needed when relaunching the upgrade. So I have to re-upload it at each failure during a part of the process. It would be clever to call one other file in the upgrade folder not being destroyed during the process. It would be maybe one hundred clicks less.

The upgrade process is becoming more and more fastidious for small configurations. It takes me at least one full day. Maybe one day I would find a SlimCloud.

But my problem now is not there. All the steps of the install have been passed. The problem occurred when coming back to the site and checking and updating the database and the apps.

The trace seems saying it was when checking the contacts app. I have done nothing with those files. The permissions are the same.

I will have a look to the thread you mention, and have a try to the deleting of app_install_overwrite

It is strange that the calendar app is not compatible with a minor change.

I will put the result of my investigations on this thread. If it fails, I will open an issue.

Thanks.

1 Like

So I commented the app_install_overwrite line (in fact 3 lines as the value was an array) in the config file.

But It did nothing better :slight_smile:

hosting-user@example:/srv/data/web/vhosts/cloud.example.fr/htdocs$ php occ upgrade -v
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
2023-07-30T13:27:20+00:00 Setting log level to debug
2023-07-30T13:27:20+00:00 Repair step: Repair MySQL collation
2023-07-30T13:27:20+00:00 Repair info: All tables already have the correct collation -> nothing to do
2023-07-30T13:27:20+00:00 Repair step: Repair SQLite autoincrement
2023-07-30T13:27:20+00:00 Repair step: Copy data from accounts table when migrating from ownCloud
2023-07-30T13:27:22+00:00 Repair step: Drop account terms table when migrating from ownCloud
2023-07-30T13:27:22+00:00 Updating database schema
2023-07-30T13:27:22+00:00 Updated database
2023-07-30T13:27:22+00:00 Disabled incompatible app: mail
2023-07-30T13:27:22+00:00 Update app metadata from App Store
An unhandled exception has been thrown:
TypeError: OC_App::checkAppDependencies(): Argument #3 ($info) must be of type array, null given, called in /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/legacy/OC_App.php on line 1007 and defined in /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/legacy/OC_App.php:1203
Stack trace:
#0 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/legacy/OC_App.php(1007): OC_App::checkAppDependencies()
#1 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/Installer.php(200): OC_App::updateApp()
#2 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/Updater.php(422): OC\Installer->updateAppstoreApp()
#3 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/Updater.php(281): OC\Updater->upgradeAppStoreApps()
#4 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/Updater.php(140): OC\Updater->doUpgrade()
#5 /srv/data/web/vhosts/cloud.example.fr/htdocs/core/Command/Upgrade.php(225): OC\Updater->upgrade()
#6 /srv/data/web/vhosts/cloud.example.fr/htdocs/3rdparty/symfony/console/Command/Command.php(255): OC\Core\Command\Upgrade->execute()
#7 /srv/data/web/vhosts/cloud.example.fr/htdocs/3rdparty/symfony/console/Application.php(1009): Symfony\Component\Console\Command\Command->run()
#8 /srv/data/web/vhosts/cloud.example.fr/htdocs/3rdparty/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand()
#9 /srv/data/web/vhosts/cloud.example.fr/htdocs/3rdparty/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun()
#10 /srv/data/web/vhosts/cloud.example.fr/htdocs/lib/private/Console/Application.php(211): Symfony\Component\Console\Application->run()
#11 /srv/data/web/vhosts/cloud.example.fr/htdocs/console.php(100): OC\Console\Application->run()
#12 /srv/data/web/vhosts/cloud.example.fr/htdocs/occ(11): require_once('...')

I will open an issue.