AutomaticRemovalImplementation

Overview

This page is to be used for discussion amongst the maintainers of apt and apt frontends regarding the implementation of the PackageDependencyManagement spec. Comments refer to Michael Vogt's baz branch michael.vogt@ubuntu.com--2005/apt--auto-mark--0 .

TODO list

Outstanding issues:

  • Cancel the automatic flag on packages when their removal is manually canceled, iff they are currently garbage. This deals with the fact that a package which has or will be garbage collected will otherwise be repeatedly garbage collected each time the user tries to remove it.
    • In order to do this properly we need to know what is and is not garbage at the moment of the install/keep; thus, it is necessary to run the garbage collector after every operation as in aptitude. Should begin_action_group and end_action_group also be copied? If so, should an acquire/release object be the exposed API for them? We also need to know whether keeps are manual or automatic, in addition to installs. This is because keeps can cancel the removal of a package, which means we need to implement the above notes, which means that it's necessary to know whether the keep was manual or automatic. Note that this doesn't need to be a sticky flag; we just need to know if the keep routine is being called manually or automatically.
  • Shouldn't MarkInstall also take a parameter indicating whether the install is automatic? It looks like right now, code is expected to set that flag after the fact!

  • Why does MarkDelete clear the 'is automatically installed' flag? That looks just wrong.

  • Why is the auto flag set on packages being removed due to conflicts in MarkInstall?

  • MarkKeep also should stop clearing that flag, except as noted above.

AutomaticRemovalImplementation (last edited 2008-08-06 16:23:20 by localhost)