* merged daniel burrows fixes for the auto-mark code
Patches applied:
* dburrows@debian.org--2005/apt--auto-mark--0--base-0
tag of michael.vogt@ubuntu.com--2005/apt--auto-mark--0--patch-22
* dburrows@debian.org--2005/apt--auto-mark--0--patch-1
doxygenize the new automark stuff
* dburrows@debian.org--2005/apt--auto-mark--0--patch-2
Automatically update package markings after every state-changing public operation, and allow users of the dep-cache to group actions into a single action.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-3
Automatically update package markings after every state-changing public operation, and allow users of the dep-cache to group actions into a single action.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-4
Make action groups noncopyable
* dburrows@debian.org--2005/apt--auto-mark--0--patch-6
Add a FromUser flag to MarkKeep.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-7
Somehow the ActionGroup definition got duplicated; kill the duplicate.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-8
Cancel the automatic flag on packages that are being kept only if they are garbage.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-9
Don't clear the 'automatically installed' flag in MarkDelete.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-10
Add a FromUser flag to MarkInstall, and fix its handling of the Auto flag.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-11
Only clear the Auto flag on manual changes in MarkKeep.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-12
Make changes from the internal algorithms automatic.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-13
Use ActionGroups in algorithms that make lots of changes, and fix a compile error.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-14
Split the sweep code into a separate routine from pkgMarkUsed
* dburrows@debian.org--2005/apt--auto-mark--0--patch-15
Update another call of MarkKeep to indicate that it's automatic.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-16
Move the mark-and-sweep code into pkgDepCache; call Sweep and document what it and Garbage are for; add a hook that can be used to generate a custom root-set function; move the big blob of regexp stuff into the custom root-set; fix the memory leak in the regexp stuff.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-17
Make ActionGroup take a reference instead of a pointer to the cache.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-18
Don't mark already-to-be-deleted packages as garbage, to imitate aptitude's behavior.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-19
Update apt-get for the new auto-mark protocol.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-20
Add a setter method for the Auto flag.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-21
Fix the test in apt-get about what to delete.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-22
Add a zero-argument mark-and-sweep routine and use it to do a mark-and-sweep on startup (so the garbage flags are initialized properly).
* dburrows@debian.org--2005/apt--auto-mark--0--patch-23
Right, Status is 2 for new installs, not 0.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-24
POT updates.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-25
Actually initialize group_level to 0.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-26
Don't make an ActionGroup in Sweep, since there's no point and it also is an infinite loop.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-27
Add virtual hooks to control whether the garbage collector considers recommends and/or suggests to be strong links.
* dburrows@debian.org--2005/apt--auto-mark--0--patch-28
Call the progress methods in the right order so we don't generate nonsensical progress notifications.