From 2d65d5b7bf9aa3806721ce337b0a08925cd44fbf Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Sun, 8 Oct 2017 21:39:30 +0200 Subject: [PATCH] [entropy.client] fix conflicts removal handling during upgrade. In certain extreme situations, that are more likely if the install state is old (e.g. 9 months +), Entropy may decide to remove packages due to conflicts with the version being installed and shoot itself in the foot, if this is the case of dev-lang/python :-). So, this commit tries to avoid the scenario by filtering out package removals for those that are being installed anyway as part of the transaction (e.g. a system upgrade). This should fix the very specific case, but increase uncertainty and thus entropy in other cases where once a package that lists conflicts is installed, it may not expect to find that package installed. However, this case should be handled by the dependency graph generator (and it currently does not), which would need to reorder the execution of the queue to comply with conflicts. Perhaps, someone in the future will improve that too, for now, let's enjoy one more snowflake. Current improvement: - foo-1 and bar-2 are set to be installed - foo-1 conflicts with