-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Description
⚠️ This issue respects the following points: ⚠️
- This is a bug, not a question or a configuration/webserver/proxy issue.
- This issue is not already reported on Github OR Nextcloud Community Forum (I've searched it).
- Nextcloud Server is up to date. See Maintenance and Release Schedule for supported versions.
- I agree to follow Nextcloud's Code of Conduct.
Bug description
\OC_App::updateApp()
doesn't get called the app upgrade if the app doesn't meet the server requirements but is listed in app_install_overwrite
. This results e.g. in live-migration
repair steps being ignored for these apps.
That's because the app gets removed from enabled apps at
server/lib/private/Updater.php
Line 358 in 90c2bba
$appManager->disableApp($app, true); |
app_install_overwrite
.
Steps to reproduce
- Make sure your app doesn't meet server requirements (e.g.
max-version="31"
but test on latestmaster
), but is listed inapp_install_overwrite
. - Add a
live-migration
repair step to the app and make sure it's listed in<repair-steps>
-><live-migration>
inappinfo/info.xml
- Put a debugger breakpoint in
server/lib/private/legacy/OC_App.php
Line 755 in 90c2bba
$queue = \OC::$server->getJobList(); server/lib/private/Updater.php
Line 299 in 90c2bba
$apps = \OC_App::getEnabledApps(); - Run
occ upgrade
- See that the first breakpoint is never reached and that in the second breakpoint,
\OC_App:getEnabledApps()
doesn't include your app
Expected behavior
\OC_APP::updateApp()
should be called for apps where the server version constraint is overwritten.
Probably Updater::checkAppsRequirements()
should check whether an app is listed in app_install_overwrite
before removing it from enabled apps.
Nextcloud Server version
master
Operating system
None
PHP engine version
None
Web server
None
Database engine version
None
Is this bug present after an update or on a fresh install?
None
Are you using the Nextcloud Server Encryption module?
None
What user-backends are you using?
- Default user-backend (database)
- LDAP/ Active Directory
- SSO - SAML
- Other
Configuration report
List of activated Apps
Nextcloud Signing status
Nextcloud Logs
Additional info
No response