From f672825a1e2c9019979f199d220dec598e19ad30 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Wed, 23 Apr 2008 23:53:01 +0000 Subject: Bug #172812 - Document new automatic uninstallation behavior in the "Conflict Avoidance" section. svn path=/main/trunk/; revision=9948 --- doc/dependency_resolution/task_scheduling.docbook | 33 ++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/dependency_resolution/task_scheduling.docbook b/doc/dependency_resolution/task_scheduling.docbook index 8979a9f6..d9ecec16 100644 --- a/doc/dependency_resolution/task_scheduling.docbook +++ b/doc/dependency_resolution/task_scheduling.docbook @@ -12,11 +12,38 @@ Conflict Avoidance - In some cases it is possible to adjust package installation order - to avoid having two conflicting packages installed simultaneously. + Sometimes a package installation order exists such that it is + possible to avoid having two conflicting packages installed + simultaneously. If a currently installed package conflicts with a + new package that is planned to be installed, it may be possible to + solve the conflict by replacing the installed package with a + different package that occupies the same slot. - TODO: Automatically uninstall packages when necessary to avoid conflicts. + In order to avoid a conflict, a package may need to be uninstalled + in advance, rather than through replacement. The following constraints + protect inappropriate packages from being chosen for automatic + uninstallation: + + + Installed packages that have been pulled into the current dependency + graph will not be uninstalled. Due to + + dependency neglection, other checks may be necessary in order + to protect inappropriate packages from being uninstalled. + + + An installed package that is matched by a dependency atom from the + "system" set will not be uninstalled in advance since it might not + be safe. Such a package will be uninstalled through replacement. + + + An installed package that is matched by a dependency atom from the + "world" set will not be uninstalled if the dependency graph does not + contain a replacement package that is matched by the same dependency + atom. + + -- cgit v1.2.3-65-gdbad