From 606d2a931da6f2d942cfc15ddc9400ecc4596a7b Mon Sep 17 00:00:00 2001 From: Nagy Gabor <ngaba@bibl.u-szeged.hu> Date: Sat, 19 Apr 2008 22:31:22 +0200 Subject: [PATCH] Fix for remove052.py by moving recursedeps before checkdeps
Now -Rs is processed in the plausible way: first pull the dependencies then call checkdeps. Note: -Rs is a little bit slower now, because we shouldn't check the pulled deps
In case of -Rcs we keep the old behavior because the bug cannot happen there and we must pull the pulled targets' deps too.
Ref.: http://www.archlinux.org/pipermail/pacman-dev/2008-April/011569.html
I don't know whether we should fix the issue or not, but I've created a patch for that. But I must mention a little (theoretical) edge case with my patch: pacman -Rus now can work a bit funny: Pacman first pulls the 'dep' removable dependency of 'foo'. Then it detects that foo cannot be removed, this is resolved by removing foo from target list. You may think, that the next step of "unneeded check" will also remove 'dep'. But not necessarily! Multiple satisfiers can confuse things. So in this case -Rus does some unwanted orphan deletion. Bye