=== Before Alpha ===
[X] Spawn console based on current port.
[X] Search function.
[X] Ports list popup menu.
[X] Install dialog with details view.
[X] About dialog.
[X] Port view needs an installed/uninstalled/stale line.
[X] Ignore URL and signature in pkg-descr text.
[X] Module specific cleanup code.
[X] Port list sorting by name.
[X] Working hyperlinks in descr view.
[X] Print usage if extra or invalid command-line arguments are given.
[X] Use GtkCList instead of GtkTreeView until GTK+-2.2.4 comes out, since the
    former is unoptimized and gets extremely slow inserting > 10,000 rows.
[X] The action window should redo it's layout and sizing when the details view
    is hidden.
[X] Use a wrapper for fetch(1) to provide progress output even when there is
    no foreground controlling terminal.
[X] Catch and report errors that occur before or during an exec() after a
    vfork().

=== Before Beta ===
[ ] Avoid recompiling everything when interface.h changes by using extern
    GtkWidget *create_<window>.
[ ] Use libinstall/lib.h for default paths and the INDEX filename.
[X] Log window.
[ ] Preferences dialog:
    - Ports base.
    - INDEX filename.
    - Database path.
    - Web-browser command.
    - Console command.
[ ] Recursive deinstall action.
[X] File selection dialog for package output filename.
[X] Internationalize.

=== Before 2.0 ===
[ ] Move all non-GUI code into a ``libports'' and add a test suite.
[ ] Add ``Installed Checksum Verify'' feature.
[ ] Support for the MOVED file.
[ ] Create dialog boxes and child windows on demand instead of during
    initialization.

=== Bugs ===
[X] Port list selects all on first selection.
[X] Refresh dialog cancel doesn't cleanup.
[X] Console button has no effect on some machines.
[ ] Refresh dialog sometimes doesn't center over parent window the first time.
[X] Refresh dialog resizes when labels inside resize.
[X] Port view description font isn't wide enough on some displays.
[X] Port view arrows aren't the same color as text.
[X] pixmaps/term_32.png is the wrong size.
[ ] Clean action is sensitive even when build directory doesn't exist for a
    given port.
[X] Cast warnings in action widget initialization.
[X] Stale port list crash.
[X] Toolbar buttons must be an even size even after labels change.
[X] Some ports mark the descview insensitive when displayed, such as
    graphics/gd2.
[X] The portlist doesn't clean on refresh.
[X] Action button pixmap shows up gray sometimes when button is sensitive.
[ ] Stale port list displays some up to date ports.
[X] Port list popup menu doesn't work on some machines.
[ ] Combo button should show up dark grey when menu is popped up.
[ ] Memory leak in refresh routines.
[ ] Install window should actually be a dialog widget.
[ ] Install target will malfunction if an install cookie exists.
[X] Upgrade target should use portupgrade, not deinstall reinstall.
[ ] Clicking the action button too quickly causes a busy crash.
[ ] Descview trimming code doesn't handle certain cases where an email address
    is strangely-formed or missing, and should be rewritten to use an array of
    lines.
[X] Weird mouse button event interaction between the portlist and the
    descview.
[ ] Local variable names of type catlist_data should be named ``cld'', not
    ``cd''.
[ ] Flicker during xmk_tree_view_scroll_select_iter().
[ ] Initial focus for the main window should be the search entry.

