2000-01-10  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/NEWS:
	Add an entry to NEWS for release 0.0.4a

	* /cvsroot/aptitude/aptitude/configure.in, /cvsroot/aptitude/aptitude/src/curses++.h:
	  Hack around the fact that libncurses5 no longer implicitly hides the cursor
	when leaveok is set to true.

	* /cvsroot/aptitude/aptitude/NEWS, /cvsroot/aptitude/aptitude/README:
	  Argh.  I forgot to commit this stuff before tagging 0.0.4 .  Grrr....

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	  Hopefully honor Auto-Install when automatically upgrading packages as well.

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	Also honor Aptitude::Auto-Install when the package is installed by selecting
	a particular version

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Don't send characters to unselectable items

	* /cvsroot/aptitude/aptitude/Makefile.am:
	Hopefully get a CVS logfile when doing 'make dist'

	* /cvsroot/aptitude/aptitude/BUGS, /cvsroot/aptitude/aptitude/aptitude-hackers-guide.txt:
	  Documentation updates..

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	  Updated the "preview actions" screen to show reinstalled packages.

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	Fixed the semantics of fiddling with version items to handle reinstall and
	be slightly more consistent

	* /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h, /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  Added full support for reinstallation of packages and tweaked the
	documentation to mention this.

	* /cvsroot/aptitude/aptitude/BUGS, /cvsroot/aptitude/aptitude/README:
	  Added a list of known bugs, and brought the README up-to-date with the current
	state of things.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Renamed Aptitude::UI::Display-SizeStats to Aptitude::Display-SizeStats

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Slightly tweaked the download/install-size display..it now correctly hides
	zero-byte changes while not hiding non-zero-byte changes.

	* /cvsroot/aptitude/aptitude/configure.in, /cvsroot/aptitude/aptitude/src/testscr.cc:
	  Commented out (with "#if 0") gobs of rigged-up test code, and bumped the
	configure.in version to 0.0.4 .  Yes, I'm finally getting ready for another
	release..

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Display an indicator of the amount of stuff being downloaded and installed
	at the top of package trees.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc, /cvsroot/aptitude/aptitude/src/vs_staticitem.cc, /cvsroot/aptitude/aptitude/src/vs_staticitem.h:
	  Moved the vs_staticitem class into another file, where it belongs.

	* /cvsroot/aptitude/aptitude/src/vs_progress.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Hopefully don't display the weird ": 0%" message when nothing has happened yet

	* /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc:
	  Finally, finally fixed the package size displayed in the package information
	screen.

2000-01-09  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc:
	  Only add a "Source Package:" line in the info screen if the
	'SourcePackage' string is nonempty.

	* /cvsroot/aptitude/aptitude/src/defaults.cc:
	  Trrying something new -- "Enter" now display info about a package.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Previously, the selection bar, when a new page was encountered while in the
	middle of non-selectable gunk, would get temporarily 'stuck' -- you'd have to
	press down or up again to select something.  It has more logical behavior now,
	and another bug in the scrolling was cleared up..

2000-01-08  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Do something slightly more sensible if a non-selectable thing gets selected--
	just hide the selection (yes, it's silly :) )

	* /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	  Added descriptive headers to various information screens.

	* /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc:
	  Display the names of the attributes of a package ("Section:", "Maintainer:",
	etc) with the A_BOLD flag on.

	* /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.h:
	  Display the "Description" header of the description line with the A_BOLD
	attribute.

	* /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc:
	  Actually display the package itself in the information screen about it.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Fixed a number of visual bugs involving mixtures of selectable and
	non-selectable items.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/defaults.cc, /cvsroot/aptitude/aptitude/src/pkg_info_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_info_screen.h, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Added preliminary support for a unified package information screen.  Needs
	a little work, still..

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h:
	  Fixed a problem that was causing all sorts of weirdness and segfaults by doing
	what I should have done long ago: all package trees are now tracked in a
	container, so when something changes that requires that their pointers be
	updated, all of them can be updated at once.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Commented out the call to InstallProtect--it /should/ be unnecessary and
	was causing packages to be upgraded in spite of being marked as Held.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Setting the configuration option "Aptitude::Fix-Broken" to true will cause
	Aptitude to attempt to fix up dependencies before installing packages.  This
	is a little quirky, but I'm defaulting it to on for now.

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	Enable autoinstall sometimes (hmm..)

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  You can now request autoinstall of dependencies by setting the
	configuration option Aptitude::Auto-Install to true.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Added a hook to catch when a transient message has been removed.  Not sure if
	it's useful right now, but.. :)

	* /cvsroot/aptitude/aptitude/src/vs_statusedit.cc, /cvsroot/aptitude/aptitude/src/vs_statusedit.h:
	  Fixed some backwards logic dealing with leaveok and getting string input from
	the user..

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h:
	  Finally added an intermediate install-run screen, in which Aptitude displays
	what it's about to do before actually doing it.

2000-01-07  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_statusedit.cc:
	  Added some hacks to try to have the cursor do something sensible while a
	search term is being edited.  It's not working (grrr....)

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_statusedit.cc, /cvsroot/aptitude/aptitude/src/vs_statusedit.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Generalized the search-entry stuff slightly and moved it to the new
	status-widget system, which eliminated a whole lot of nastiness.  It also
	caused some minor internal API tweaks..not sure how many of them are good
	long-term ideas..but they're infinitely better than the mess I had before.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Errors are now pushed onto the back of a display queue instead of the front.
	This has two effects: first, they show up behind other things (text being
	edited, for example) and second, they appear in the right order (as opposed to
	in reverse order..)

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/vs_progress.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Moved the error indicators over to the new system.  In the process, fixed some
	weirdness which occured when a non-root user tried to update package lists and
	got an error.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_progress.cc, /cvsroot/aptitude/aptitude/src/vs_progress.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	Added support code to handle transient messages and minibuffer-style editing
	the Right Way[tm].  This obviously touches a *lot* of source files.  Hopefully
	it's worth it :)

2000-01-06  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/dep_item.cc:
	Fix the "eternal dependency OR" bug (the OR counter wasn't being cleared,
	so after encountering one 'or', everything afterwards was treated as
	part of it)

2000-01-03  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	More fiddling with handling of leaveok; unfortunately, it didn't help

	* /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vscreen.cc:
	Updated it to at least compile against libncurses5

2000-01-02  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc:
	  Added some more information in the download screen: the actual number of bytes
	downloaded, and the estimated time to completion (with the latter shamelessly
	stolen from apt-get)

2000-01-01  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	  Eliminated the annoying warning message when the package state file can't be
	opened simply because it doesn't exist.

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	  Finally hunted down the bug with New packages being ignored or forgotten --
	changing the name of the tag in the statefile to Unseen (which isn't as
	accurate, but..) worked!  I say it's a bug in the tagfile class, but anyway
	it's working again..

1999-12-28  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/config/colors.cc, /cvsroot/aptitude/aptitude/src/config/colors.h:
	Ok, you can now use symbolic names ("white", "black", etc) for colors.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Added a potential new binding; binding something to Refresh will make it force
	a redraw of the screen.  Not sure what the default should be :)

	* /cvsroot/aptitude/aptitude/src/config/colors.cc, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	Ok, fixed the problem which was causing the screen to not be refreshed
	when colors were altered (it's an ncurses bug but I hacked around it..)

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  vs_trees no longer even pretend to store their colors internally; all color
	tests go through vs_tree::get_*_color.  This makes it a lot easier to change the
	default :) -- although I may want to switch to using a static list of defaults
	(trying to keep all the different default settings up-to-date is an incredible
	pain..)

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	You almost certainly want the background color to be used to display tree items
	(otherwise everything looks awful), so vs_treeitem::get_normal_attr() now
	returns the background color.

	* /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  The last commit swapped the background and status colors of the vs_tree for
	some routines.  Oops.  get_background_color() and get_status_color() now
	return the Right Thing[tm]..

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/config/Makefile.am, /cvsroot/aptitude/aptitude/src/config/colors.cc, /cvsroot/aptitude/aptitude/src/config/colors.h, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Finally added the ability to change colors using apt.conf .  Syntax is:
	SomeColor {Fg; Bg;};
	  where Fg and Bg are color numbers (see curses.h).  Sort of works. :)

	* /cvsroot/aptitude/aptitude/config.h.in, /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_item.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h:
	  Reverted the changes -- I can't make them work properly with libapt
	the way it is, and the old system was at least somewhat stable and workable.
	Even if it doesn't display "Connecting" and "Waiting for File" messages :)

1999-12-27  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_item.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h:
	  Tried to modify the download status code to display messages while the
	download processes are connecting, waiting for files, etc.  It's..um..sorta
	working.  It stopped crashing, anyway..

	* /cvsroot/aptitude/aptitude/src/apt.cc:
	Notice both errors /and/ warnings

1999-12-23  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h:
	Fixed another thinko; held packages weren't properly being held.  MarkKeep now
	sets the state to "hold" *by default*, but takes another optional parameter
	to change this.

1999-12-22  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	Fixed a number of thinkos and got watching of the dselect status working; also,
	made the callers of MarkKeep responsible for changing the selection state
	(hmmm...)

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	Initialize the selection states when we allocate them for the first time

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	Fixed a bug that would have caused us never to change what the 'last' selected
	state was

	* /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h:
	Added a hack to attempt to detect changes in the dpkg status of a package and
	compensate accordingly

1999-12-20  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/configure.in, /cvsroot/aptitude/aptitude/src/Makefile.am:
	Fixed a couple of things that caused 'make dist' to fail, and corrected the
	version number

	* /cvsroot/aptitude/aptitude/Makefile.am, /cvsroot/aptitude/aptitude/NEWS, /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/TODO, /cvsroot/aptitude/aptitude/aptitude-hackers-guide.txt:
	  Updated the documentation in preparation for release 0.0.3 .  Split out the
	TODO and code guide from README.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc: Fix syntax error

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Don't check the currently selected item for matches.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	Allow the search to match any substring

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Oops, change the selected package when we find something.  Also, it seems that
	we need to call refresh after beeping or the beep never happens..

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	Finally get the bloody thing to compile again.. (the gods of C++ are clearly
	angered with me for the disgusting mess that is the vs_treeitem system..)

	* /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	Make it compile again, hopefully.

	* /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	Eliminated the problem which lead to problems entering search strings.
	Unfortunately, used an ugly hack to do it :(  This needs to be fixed by
	adding a minibuffer stack in the next release.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	Hopefully, finished getting the search code compiled and integrated into the
	vs_tree class.

	* /cvsroot/aptitude/aptitude/src/defaults.cc, /cvsroot/aptitude/aptitude/src/pkg_node.h, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Added code (some of which is IMO rather kludgy) which should allow the user
	to search for packages in the tree.

	* /cvsroot/aptitude/aptitude/src/defaults.cc, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_node.cc:
	Added bindable commands HoldPackage and PurgePackage; they default to
	dselect-style bindings (because I'm lazy :) )

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Fix the not-compiling error introduced in the last commit, oops..

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Added configuration options Aptitude::Forget-New-On-Update and
	Aptitude::Forget-New-On-Install.  The first causes information about what
	packages are 'new' to be discarded when the package lists are updated; the
	second causes this information to be discarded when an install run is
	performed.  Untested, but it's so trivial that I don't feel a need
	to test (which means it's probably the one part of the program that'll eat
	the user's filesystem alive ;-) )

	* /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h:
	  Finished up preliminary support for sticky package selections.  I decided to
	essentially mimic dselect's behavior for now; more complex behavior will be
	coming next millennium :)  (yes, 2000 *is* the end of the millennium; everyone
	knows you count from 0..)
	  Unfortunately, I also removed the dselect integration in this commit.  Trying
	to figure out how to maintain two separate databases of package selection states
	was too much for my feeble mind ;-)  Actually, the main problem was that you'd
	have to release the dpkg lock from inside an aptitudeDepCache in order to run
	dpkg --set-selections, which is icky..
	  Anyway, since most of dselect's important abilities (with the notable
	exceptions of running on poor terminals and searching for packages) are now
	available in aptitude, this won't be too painful.  Maybe it'll spur me to finish
	up the remaining features :)

1999-12-19  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/aptcache.cc:
	Add code to make the selection states 'sticky' -- using the same mechanism as
	the sticky 'newness'.

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h, /cvsroot/aptitude/aptitude/src/defaults.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Persistent-state code in hand, I rewrote forget_net as a method of
	aptitudeDepCache, which was the point of this whole bloody exercise anyway --
	and..IT LIVES!  IT LIVES!  <maniacal laughter>
	  Oh, and now that ForgetNewPackages doesn't cause an immediate segfault, I've
	added a default keybinding for it (it's bound to 'f')

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h, /cvsroot/aptitude/aptitude/src/vs_subtree.h:
	Fix a rather nasty and hard to track down segfault

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	Now that I have my own persistent 'new' information, use it to build the tree.

	* /cvsroot/aptitude/aptitude/src/curses++.cc: More compile fixes

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	Fix a thinko that broke the compile

	* /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/testscr.cc:
	Actually save the selection states, and handle missing stuff more sanely

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h:
	  Altered the aptitudeDepCache to include a first stab at persistent state.
	dselect selection inheritence was moved into this file as well, and is now
	off by default (set Aptitude::Use-DSelect-Selections to turn it on)

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/aptcache.cc, /cvsroot/aptitude/aptitude/src/aptcache.h, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.h:
	  Reimplemented pkgCacheFile, in order to (in the future :) ) add my own
	depcache extensions.  The code was basically retyped from cachefile.cc (so it
	fits my own style of indentation and so on)

	* /cvsroot/aptitude/aptitude/src/config/keybindings.cc:
	Fixed two off-by-one errors in keybindings.cc which made it impossible to bind
	to modified keys.

	* /cvsroot/aptitude/aptitude/src/apt.cc:
	  You can now bind actions to multiple keys with the syntax:
	SomeAction "key1,key2,key3";
	  in apt.conf.

	* /cvsroot/aptitude/aptitude/src/config/keybindings.cc:
	When you're storing stuff in lower case, it's a good idea to turn strings to
	lower case instead of upper case when you search for them, now isn't it?..

	* /cvsroot/aptitude/aptitude/src/config/keybindings.cc:
	Complete the fix (doh\!)

	* /cvsroot/aptitude/aptitude/src/config/keybindings.cc:
	  Fixed a silly thinko in keybindings.cc which caused keys in configuration
	files to sometimes be read with the opposite "shifted" state from what was
	expected.

	* /cvsroot/aptitude/aptitude/src/defaults.cc:
	Include default bindings for pkg_tree stuff

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Synced pkg_tree's keybinding names with the general conventions

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/config/keybindings.cc, /cvsroot/aptitude/aptitude/src/config/keybindings.h, /cvsroot/aptitude/aptitude/src/defaults.cc, /cvsroot/aptitude/aptitude/src/defaults.h, /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.cc, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_item_with_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_node.cc, /cvsroot/aptitude/aptitude/src/pkg_node.h, /cvsroot/aptitude/aptitude/src/pkg_subtree.cc, /cvsroot/aptitude/aptitude/src/pkg_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Moved over entirely to the new keybindings system.  I also cleaned up some
	hacks to be slightly less ugly -- all the ismychar stuff got removed.  Things
	seem to be working again (although I haven't tested the parser much yet)

1999-12-18  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/config/keybindings.cc:
	Remove the debugging output and get it to compile again..

	* /cvsroot/aptitude/aptitude/src/config/Makefile.am, /cvsroot/aptitude/aptitude/src/config/keybindings.cc, /cvsroot/aptitude/aptitude/src/config/keybindings.h, /cvsroot/aptitude/aptitude/config.h.in, /cvsroot/aptitude/aptitude/configure.in, /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy_hash.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/strhash.h:
	  Added preliminary support for configurable keybindings.  This needs to be
	expanded to cover everything in the program..

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/strhash.h:
	Split hash<string> into its own file

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	Be pedantic, move the error-discarding in download_screen.cc to a better spot

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Fix the weirdness with the status bar that I just introduced

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Rewrote the error-display code again.  I like the way it's handled now, I
	think I'll keep this :)
	  vs_tree now exports to its childrenthe ability to display an arbitrary string
	using any text attributes desired in the status bar.  This means that it's
	possible to display temporary messages (like errors) without having to fool
	around with set_status.
	  Actually, I just thought of an even better approach: make the status bar
	itself an object.  This will require a little more work, though, and isn't
	really necessary /just now/.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  If there's an error and the package list is empty, clear the status line
	when the error is cleared (instead of leaving the error sitting there..)

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Don't segfault if reading sources.list fails; fixed some vs_tree segfaults

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	Do something (slightly) more sensible when the source list can't be parsed

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h:
	Added what is (in my opinion) a much better way of handling apt errors

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Complete the fix by calling the selected item's highlighted() method

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h:
	  Fixed a minor annoyance -- after an error was displayed the status bar didn't
	return to its normal color (note that we still don't call selected->highlighted;
	that's needed to completely eliminate this bug)

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h:
	  Remove the "unhighlighted" method from pkg_ver_item -- it's redundant with
	the last change I made.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  The default vs_treeitem now blanks the status line on being highlighted; this
	should clean up a lot of minor visual irritations and remove the need for an
	unhighlighted method in most classes..

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Added preliminary support for displaying error messages in a Nice Way[tm].

1999-12-15  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Well, got rid of the segfaulting..not sure that all that trouble was worth it,
	though; I may revert to the system I had before, which was also somewhat safer
	and nicer :)

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	More attempts to squash potential bugs -- they don't seem to help the segvs, tho

	* /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h:
	Try to fix a segfault..it isn't working...

	* /cvsroot/aptitude/aptitude/src/download_item.cc:
	Fix dumb bug with displaying items which are downloading

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Fix a silly crashing bug in vs_tree::dispatch_char

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	Make it compile again

	* /cvsroot/aptitude/aptitude/src/vscreen.h:
	Protect some mysteriously unprotected function calls

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	Control the creation and deletion of download uis a little more tightly

	* /cvsroot/aptitude/aptitude/src/vscreen.cc:
	  Better handling of things like people displaying screens before Curses is
	initialized, or between calls to vscreen_suspend() and vscreen_resume().  This
	should make things a lot more robust, and allow ever so slightly nicer
	transitions while installing packages (you won't see the previous screen flicker
	on for a moment; screens will be switched before re-entering the vscreen system)

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	Fix a bunch of visual quirks in the progress-bar code.  It seems to work now..

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	An explicit call to build_tree is redundant; set_grouping does it already.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Fix a dumb bug in pkg_tree::show_status() -- the curses ordering of y and x
	is unnatural, unnatural I say!!

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	Changes to the startup procedure to get it to stop segfaulting and do something

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr.cc:
	Use public inheritence for pkg_tree

	* /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h:
	  It should now be possible to use pkg_trees as progress indicators for Apt
	operations (in particular, loading the package cache)  This has the side-effect
	of making build_tree() public -- because I need to access it from outside the
	class. (?)  I'm not sure whether that's a good idea and may revert it.

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	Eliminated some leftover cruft in download_screen::show_status()

1999-12-14  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Moved the progress bar display routine to curses++.{cc,h}, where it belongs.

	* /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h:
	  More fixes for screen-resize issues: resizing the screen while
	"Press any key to continue..." is displayed now works correctly.

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Added the beginnings of a structure to merge new packages into the main tree;
	unfortunately it's totally borked and doesn't work right now.
	  Also, eliminated a bunch of useless calls to APT methods that I inherited from
	console-apt's broken code.  It seems that pkgCacheFile::Open handles lots of
	stuff.

1999-12-13  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	  Packages not previously known to the system are now collected in their own
	toplevel group if you're using status grouping.

	* /cvsroot/aptitude/aptitude/src/download_screen.cc:
	  Fix the totally broken SIGWINCH handling during downloads (finally, I think);
	the (nasty..) solution was to unblock SIGWINCH before beginning a download and
	/temporarily/ block it during each of the download_screen methods.  The
	CRITICAL_ENTER and CRITICAL_EXIT macros do this.
	  There's one lingering problem: the "Press any key to continue..." message can
	be lost/look funny if you resize the window while it's displayed.  This'll take
	more work to fix :)

1999-12-07  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h:
	  Versions now also display their short description in the status line when
	highlighted.

	* /cvsroot/aptitude/aptitude/src/vscreen.cc:
	  Fixed a silly bug which caused curses screen udpates to become extremely
	suboptimal (start flickering) after the user resized the window.

	* /cvsroot/aptitude/aptitude/src/testscr:
	  Uhhh, what was I thinking when I imported a binary (and an ancient one at
	that) into the tree?  Kill it! KILL KILL -- (nevermind)

	* /cvsroot/aptitude/aptitude/Makefile.am, /cvsroot/aptitude/aptitude/NEWS, /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/configure.in, /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/download_item.cc, /cvsroot/aptitude/aptitude/src/download_item.h, /cvsroot/aptitude/aptitude/src/download_screen.cc, /cvsroot/aptitude/aptitude/src/download_screen.h, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Apologies for the mass commit.  Sourceforge took a few days to copy my
	source tree to their CVS server and I made the mistake of continuing to hack
	on it while they were doing that, so all my progress is going in in one fell
	swoop.  Not that I'm complaining, having the source on their servers at all
	is pretty cool ;-)
	  Anyway, this commit mostly contains the various changes I made to enable
	downloads for version 0.0.2, and of course the documentation and NEWS updates.
	The only thing I've done since releasing 0.0.2 is to fix a bug involving
	SIGWINCH during downloads, albiet maybe not in the best possible way (look at
	the call to sigpending in download_screen.cc..)

1999-11-28  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/testscr.cc:
	  Got rid of the horrible hack previously used to flag upgraded packages as
	to-be-installed; aptitude now obeys dselect hints on a package.

1999-11-22  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Fix assorted bugs, weirdness, etc.

	* /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.h:
	  Activate the unselectable feature for descriptions.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Gobs of changes to the tree-item/selection code; basically, it should now
	(theoretically!) be possible to have unselectable/static elements in a tree.
	This is untested, but I appear to not have broken the normal element types :)

	* /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/NEWS:
	  Update NEWS and README for release on Sourceforge.

1999-11-18  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.h, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_item_with_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_node.cc, /cvsroot/aptitude/aptitude/src/pkg_node.h, /cvsroot/aptitude/aptitude/src/pkg_subtree.cc, /cvsroot/aptitude/aptitude/src/pkg_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/dep_item.h, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.cc, /cvsroot/aptitude/aptitude/src/pkg_description_treeitem.h, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy_hash.h, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/apt.cc:
	  Added GPL boilerplate to an ungodly number of files.

1999-11-09  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h, /cvsroot/aptitude/aptitude/src/pkg_item_with_subtree.h, /cvsroot/aptitude/aptitude/src/vs_subtree.h:
	  Added copyright notes and tags marking the source as c++ to several headers.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/dep_item.h, /cvsroot/aptitude/aptitude/src/pkg_item_with_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h:
	  Added a more general (read: templated) way to create classes which are
	package nodes with some type of subtree.

1999-11-07  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	  The test code no longer defaults to showing dependency trees in the main
	package listing.

	* /cvsroot/aptitude/aptitude/src/dep_item.h, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h, /cvsroot/aptitude/aptitude/src/dep_item.cc:
	  Lots and lots of changes/hacks/fixups.  It's now possible to pop up a
	dedicated screen to list dependencies of a package.

	* /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.cc:
	  Fix silly off-by-one error in display routines which caused funny output if
	a line ran off the right-hand edge of the screen.

	* /cvsroot/aptitude/aptitude/src/dep_item.cc, /cvsroot/aptitude/aptitude/src/dep_item.h, /cvsroot/aptitude/aptitude/src/pkg_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/Makefile.am:
	  Moved the pkg_ver_item back into pkg_ver_item.h (yes, I can't make my mind
	up :-P )
	  Added preliminary support for dependency displays.  This may change a lot in
	the near future.

1999-11-06  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	  Fixed memory leaks..

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	  Added a new toplevel status, "Virtual Packages", used for..um..virtual
	packages.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy_hash.h:
	  Split off the definition of a hash map for grouping policies into another
	header -- it's too useful :)

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/testscr.cc:
	  Added a generic filter mechanism for generating package trees; the default
	setup now uses it to eliminate non-existant packages which are left in the
	cache for whatever reason.

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h:
	  Moved the pkg_ver_item class out of the header file.
	  Provides for a package are now listed as available versions of it.

	* /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	Get tree views containing only a visible root to stop segfaulting

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	Fix a silly thinko in the tree code which caused slightly incorrect scrolling.

1999-10-23  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  It's no longer possible to crash the program by `falling off the edge of the
	world' in version trees.

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	Hopefully eliminated the "infinite repeating color stripes" bug.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc: Fixed up some formatting

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	  The pkg_ver_screen now uses the code just added to show its root node.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Added code to hopefully allow a vs_tree's root node to be visible in the tree
	hierarchy.

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	  Cleaned up the pkg_ver_screen code (to eliminate a kludgy and problematic
	tree node)

	* /cvsroot/aptitude/aptitude/src/Makefile.am:
	  Errors are no longer generated when you try to compile.. (*blush*)

	* /cvsroot/aptitude/aptitude/src/vscreen.cc:
	  Clear out the list of stuff-to-delete after deleting it.  This keeps us from,
	eg, deleting a pointer twice.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/test.cc:
	  Now that I figured the problem out I don't need the code to test for it any
	more..

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Some minor changes to (try to) avoid segfaulting when root_iterators with
	NULL targets are floating around..

	  However, the big change is this: I HAVE FOUND AND ELIMINATED THE EVIL
	SEGFAULT-ON-DELETE BUG!  It turns out that vs_treeitem needed an empty virtual
	destructor.  In unison now: "I hate C++, I hate C++, I hate C++..."

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	  Versions appear to now be colored sanely.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  Small tweaks to the colorization of broken packages.

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	  The items visible in the main package display are now version trees.  (this
	won't be the case in the future but it's useful for now..)

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.h:
	  Added an implementation of pkg_grouppolicy_ver_factory::instantiate
	and added beginning support for colorization of version items.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  More cleanup operations.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  Cleaned up the routine pkg_item::get_normal_attr by fetching
	and caching (*apt_cache_file)[package] at the front of the routine.

	* /cvsroot/aptitude/aptitude/src/pkg_ver_item.h, /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_ver_item.cc:
	  Added a way to display the available versions of a package.  See
	pkg_ver_item.{cc,h}

	* /cvsroot/aptitude/aptitude/src/pkg_node.cc:
	  Uh, pkg_node isn't a type; pkg_tree_node is.

	* /cvsroot/aptitude/aptitude/src/test.cc:
	  Fixed a tyop in a comment, slightly altered the test.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.h:   Minor indentation tweak

	* /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Fixed a silly typo (forgot to specify a type for vscreen_preparedelete)

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Make sure that a vs_tree's root is set to NULL if none is provided to the
	constructor.

	* /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Added a way for screen objects to delete themselves from within the main loop.

	* /cvsroot/aptitude/aptitude/src/pkg_node.cc, /cvsroot/aptitude/aptitude/src/pkg_node.h:
	  Moved pkg_node::is_my_char() into pkg_node.cc

	* /cvsroot/aptitude/aptitude/src/vs_tree.h:
	  Deleted set_bounds() -- it's not being used any more.

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_node.cc, /cvsroot/aptitude/aptitude/src/pkg_node.h, /cvsroot/aptitude/aptitude/src/pkg_subtree.h, /cvsroot/aptitude/aptitude/src/Makefile.am:
	  Bunches of restructuring..added pkg_node.cc and moved dispatch_char for
	the pkg_node class into it..unfortunately this causes some other weirdness since
	some classes inherit two copies of dispatch_char; there's a hack there for now
	to see who `owns' dispatch char..I need to come up with a better solution,
	perhaps.

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc:
	  Virtual packages now appear in their own hierarchy..I'll add a filter to
	get rid of them in the future.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Caret ('^') is now used to move up in the hierarchy rather than 'u'.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Moving up in trees works again.  (fixed a dumb thinko :) )

	* /cvsroot/aptitude/aptitude/src/pkg_item.cc:
	  Better colorizing of packages-to-be-upgraded.

	* /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/testscr.cc:
	  'Group-by-status' is now available.

1999-10-22  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.cc, /cvsroot/aptitude/aptitude/src/pkg_grouppolicy.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr.cc:
	  More splittage; the grouping policy stuff was moved to pkg_grouppolicy.{cc,h}.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  It's now .. sort of .. possible to set a vs_tree's root to NULL -- at least,
	it won't cause an immediate segfault.  (I don't guarantee anything though :) )

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_item.cc, /cvsroot/aptitude/aptitude/src/pkg_item.h, /cvsroot/aptitude/aptitude/src/pkg_node.h, /cvsroot/aptitude/aptitude/src/pkg_subtree.cc, /cvsroot/aptitude/aptitude/src/pkg_subtree.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Lots of classes split into their own files.  Hopefully compilation times for
	single-line changes will be .. um .. less astronomical now :)

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Yes Virginia, there is a difference between packages to be upgraded and
	packages to be installed..

	  Oh, and I decided to remove the `upgradable' highlighting..

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Fixed an oversight which was causing package trees to not be colorized.

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	  Show the package list on startup again, also reinstituted the random tree.

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Deleted some dead code, and modified pkg_subtree::pkg_subtree and
	pkg_tree::pkg_tree so that the root of a pkg_tree is expanded to start with
	(otherwise weird stuff happens :) )

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  I spoke too soon..but now navigation REALLY works!  I mean really! :)

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc:
	  Navigating the package list appears to work properly now; I also cleaned up
	some constructions like (*selected).highlighted(...) since my iterators now
	define operator-> ..

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Hopefully advancing into subtrees actually works now.

	* /cvsroot/aptitude/aptitude/src/testscr.cc:
	 Commented out the random tree, it's confusing the matter.

	* /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  DIE SEGFAULTS DIE!

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Removed some test code, it's done better in test.cc

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/test.cc:
	  Added a test case for some of the pathological stuff I'm seeing..

1999-10-21  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Hopefully squished some more embarassing segfaults.

	* /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h:
	  Fixed (hopefully!) a silly segfault bug and a sillier stack-overflow bug.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_subtree.h, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vs_treeitem.cc, /cvsroot/aptitude/aptitude/src/vs_treeitem.h, /cvsroot/aptitude/aptitude/config.h.in:
	  Entirely reworked the way that the vs_treeiterator class works, hopefully
	this will be somewhat cleaner (albeit less efficient and way too general :( )
	  It compiles again, now I get to watch the pretty fireworks as it panics
	over and over and over..

1999-10-20  Daniel Burrows  <daniel@palantir>

	* /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Improved highlighting and selection code.

	* /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc:
	  Fixed a silly bug in get_color() which made it never add colors to the cache.

	  You can now select new packages for installation and deselect them.  You
	cannot, of course, see upgraded packages or actually do the installation, but
	it's a start :)

	* /cvsroot/aptitude/aptitude/src/Makefile.in, /cvsroot/aptitude/aptitude/Makefile.in, /cvsroot/aptitude/aptitude/aclocal.m4, /cvsroot/aptitude/aptitude/autogen.sh, /cvsroot/aptitude/aptitude/configure, /cvsroot/aptitude/aptitude/.cvsignore:
	  Removed autogenerated files, added a .cvsignore to keep them from being
	seen, and added autogen.sh to regenerate them.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/Makefile.in, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	  Initial import.

	* /cvsroot/aptitude/aptitude/src/Makefile.am, /cvsroot/aptitude/aptitude/src/Makefile.in, /cvsroot/aptitude/aptitude/src/apt.cc, /cvsroot/aptitude/aptitude/src/apt.h, /cvsroot/aptitude/aptitude/src/curses++.cc, /cvsroot/aptitude/aptitude/src/curses++.h, /cvsroot/aptitude/aptitude/src/pkg_tree.cc, /cvsroot/aptitude/aptitude/src/pkg_tree.h, /cvsroot/aptitude/aptitude/src/testscr, /cvsroot/aptitude/aptitude/src/testscr.cc, /cvsroot/aptitude/aptitude/src/vs_tree.cc, /cvsroot/aptitude/aptitude/src/vs_tree.h, /cvsroot/aptitude/aptitude/src/vscreen.cc, /cvsroot/aptitude/aptitude/src/vscreen.h:
	New file.

	* /cvsroot/aptitude/aptitude/AUTHORS, /cvsroot/aptitude/aptitude/ChangeLog, /cvsroot/aptitude/aptitude/Makefile.am, /cvsroot/aptitude/aptitude/Makefile.in, /cvsroot/aptitude/aptitude/NEWS, /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/aclocal.m4, /cvsroot/aptitude/aptitude/config.h.in, /cvsroot/aptitude/aptitude/configure, /cvsroot/aptitude/aptitude/configure.in:
	  Initial import.

	* /cvsroot/aptitude/aptitude/AUTHORS, /cvsroot/aptitude/aptitude/ChangeLog, /cvsroot/aptitude/aptitude/Makefile.am, /cvsroot/aptitude/aptitude/Makefile.in, /cvsroot/aptitude/aptitude/NEWS, /cvsroot/aptitude/aptitude/README, /cvsroot/aptitude/aptitude/aclocal.m4, /cvsroot/aptitude/aptitude/config.h.in, /cvsroot/aptitude/aptitude/configure, /cvsroot/aptitude/aptitude/configure.in:
	New file.

