==============================================================================
 PURP (Pugo RPM) Version 0.3.0 - A ncurses-based RPM-handler
 Copyright (C) 1998 - Anders Karlsson <pugo@lysator.liu.se> 
==============================================================================

==================
 Changes for Purp
==================

8/6-98 (Released as version 0.3.0)
  Fixed problems with Purp under RedHat 5.1. 
  
  Added a new function "Follow", which navigates the panel not active
  to the same folder as the currently active panel.
  
  Finally added sorting-functions to the panels!


27/5-98 (released as version 0.2)
  Trimmed the internal liststructures, making Purp take less memory.
  Fixed a couple of bugs.


24/5-98
  Added the possibility to search for packages by entering their name.
  Made Purp possible to run in a limited mode for users without
  write-permission to the RPM-database. Added redraw-screen-command
  which redraws everything when the user press '^L'. Fixed a couple 
  of bugs.
  

19/3-98 (released as version 0.1)
  Purp is finally finished for a first release! The most important 
  functions are implemented. The most important thing now is to spread 
  it to users and fix the bugs they report.


29/12-97
  Made lots of work on the dependencies-checks, so conflicts will be
  listed to the user. I have plans for a conflict-solve-function, that
  search through the packages for the package that are needed to solve
  the conflicts. But this will probably not be included in the first
  beta-versions. Made some work on the user-interface. I also added a
  copyright-message, presented in the commandline-window during the
  startup of Purp.


19/12-97
  Added a function that gives the user the possibility to show dependencies 
  for a packade, i.e. what a package provides and requires. Killed a bug 
  that caused segmentation-faults when showing package-scripts. Yes, Purp 
  is actually very stable now! I also added "About" as an option at the main 
  menu. I think it's time for an official beta-version very soon now!


15/12-97                              
  Rebuilded much of the install, upgrade and uninstall-functions. They
  are now somewhat easier to understand and maintain. Added functions
  that check if an installation would cause a file-conflict, and if so
  warns the user. I have also made much of the work on the
  dependencies-checks. What a strange feeling! It's almost time for
  release!


10/12-97
  Made some work to make Purp compile under RedHat 5.0. Recoded the
  selection-functions, so Purp will work on the package marked by the
  cursor if no other packages are selected. Killed some very nasty bugs
  that caused segmentation faults when packages were repeatedly
  installed and removed. Made some visual changes to the info-panel.
  Added functions that locks the tty while rpmlib are working on
  packages, so that output from scripts and other background processes
  won't trash the tty.


5/11-97
  Finally some time for Purp! Well, I finally added support for upgrade!
  This means that Purp now can install, uninstall, and upgrade packages!
  What else do you need? Well, I still have to implement dependencies,
  but thats a rather small task. It's wonderful! Purp is almost in
  Beta-state!


5/10-97
  Changed the contents of the info-panel, so that it now shows only the
  interesting information. For example it isn't very interesting reading
  the buildhost for every package. If the user wants to know this there
  will be a dump-function that shows everything about a selected
  package.

  Added a path-window that shows the full path for the currently
  selected package or group.

  Added functions so you can navigate the hierarchy similliar to
  lynx-navigation, by the arrowkeys.

  Also added functions that places the cursor on the previously selected
  group when going up in hierarchy, instead of placing it at the top of
  the list all the time.

  As if this wasn't enough for a night I also made it impossible to
  change panels if one of the panels is empty, which is the case if the
  user haven't selected a path for uninstalled packages. Before it
  showed some information from my list-structure-dummy, which isn't very
  fun because most fields are empty or NULL.        


29/9-97
  Added scrolling for the textwindow-class, for example used when
  viewing files in a package. Made some initial work on the functions
  for selecting directorypath for available packages.


10/8-97
  Killed a bug that caused coredump when listing package-scripts. Added
  a counter that shows how many packages that are selected in each
  panel, and their size. Made some initial work on the update-functions.
  After last days bugfixes Purp seems to be very stable!


9/8-97
  Worked all night to find a very evil bug that made some packages not
  showing up in the panels.


8/8-97
  A lot of things have happened with Purp, even if it doesn't seem like
  that here. Purp are now able to both install and uninstall packages.
  The panels are updated dynamically, only showing packages that are
  installed, and packages that aren't. For debugging I added functions
  that write messages to a serial-device, so I can monitor Purp's
  actions. I can almost see a beta-version at the end of the long
  corridor!


28/7-97
  Started to work on Purp again, after a months vecation. Improved
  uninstallation so it checks whether an erased package exists in the
  available-list and if it does makes it show up in that panel.


25/6-97
  Wrote functions for uninstalling packages, it works fine! Also wrote
  functions for searching the RPM-database for the package that match a
  specified name-version-release string. The dependencies-functions for
  uninstallation is yet to be written. Also implemented the functions
  for listing files and scripts in packages.  


14/6-97
  Rewrote big parts of the user-interface as a C++-class-hierarchy. This
  makes the user-interface easier to extend with new functions, and it's 
  much better implemented than before.

 
12/6-97
  Ahh! Vacation for the summer, and lots of time for Purp! Made some
  major changes on Purp, so it now can be compiled with the
  C++-compilers. I really want to use C++ for the interface-programming,
  so the next work will be to recode the different parts of the
  interface as a class-hierarchy. This will really make the
  interface-development more easy and fast. I had to change some parts
  of the rpm-lib header-files, since they didn't work with 
  C++-compillers, since there's a difference between the way C and C++
  handles structs and typedefs. I will mail a patch to Peter Kroan,
  which is the developer of RPM, so he can fix this in coming versions
  of RPM-lib.


12/5-97
  Programming goes on. Made some nice work on the text-viewer, made some
  initial work on the uninstall-functions, and worked on the
  install-function. I haven't implemented the functions that really do
  uninstall and install packages yet, I want to be sure that nothing can
  go wrong when I implement them. I realise that it would be wonderful
  with an extra machine, just for testing the program, it isn't very
  nice to test RPM-functions on your main-system.


11/5-97
  Changed the liststructure for the package-hierarchy so the memory for
  the description-field now are allocated exactly to the needed size,
  instead of having a fixed size. This decreased the needed memory for
  Purp by the half.


8/5-97
  Added some interactivity to the commandline, for example
  user-confirmation for uninstalling packages.      
