nextcloud_update: fix the php-apcu cleanup - #2860
Merged
Merged
Conversation
The check tested for "php-acpu", which never exists, so php-apcu was never purged. Both purges also failed on their own: the updater holds php* packages earlier on and the updater runs unattended from cron, so pass -y --allow-change-held-packages like the other php purges do.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The updater's php-apcu cleanup never runs.
Root cause:
nextcloud_update.shchecksis_this_installed php-acpu(typo since 2021), which never matches.php*packages earlier on, and neither purge passes--allow-change-held-packages, and the second one not even-y. From cron that gives "Held packages were changed" or "Unable to satisfy dependencies".Fix: check
php-apcu, and purge both packages with-y --allow-change-held-packages, like the other php purges in the updater.Existing installs: the next update removes php-apcu and php$PHPVER-apcu if they're installed.
Verified: on a 26.04 test VM with php-apcu installed,
update.sh minor(run like the cron job) now removes php-apcu and php8.5-apcu and APCu is no longer loaded. With main's code both stay installed.🤖 AI (if applicable)
Assisted-by: ClaudeCode:claude-opus-5-5