Overview of changes from 0.5.4 to 0.5.5

* Configuration changes:  $ENV{PSP_CONF} is now the primary configuration
  key instead of $ENV{PSP_TOP}.  All $g_* global variables renamed to
  $psp_* default libperl directory is now @prefix@/lib/perl5, and not
  @prefix/lib/perl
* Regression tests should now all work.
* Majorly re-worked FCGI-ProcManager; focused on various signal handling
  aspects.  Added a few fixes to FCGI to acquire proper signal behavior.
  CGI::Fast now accepts $ENV{FCGI_SOCKET_PATH} and $ENV{FCGI_LISTEN_QUEUE}
  to allow for TCP/IP remote FCGI invocation.
* imported latest MIC3.tex documentation.
* PSP::Loader reworked.  Better documentation.  Package subroutines 
  _load() and _unload() now assist load() and unload() methods.  Lots of
  logic cleanups -- see various diffs for more detail.  list_files() 
  method now available to deal with files in pile directory.
* PSP::parent now has top_parent() method to find uppermost recursive
  parent.
* Removed all dependencies on CPAN's HTML::Parser
* corrected -M makedepend piler(1) argument.  
* improved sample piles.
* Added URI cpan package because of overlooked dependence.

Overview of changes from 0.5.3 to 0.5.4

* PSP CVS Repository finally made public.
* began restructuring documentation.  The MIC3 module has been added
  verbatim, and the PSP documentation has started to be broken up into
  files with individual topics.
* now, all tag extensions are in PSP::Parser::* modules.
* added a fork of HTML-Parser: PSP-HTML-Parser in order to guarantee
  interesting features without having to rely on their speedy addition to
  HTML-Parser.
* removed unessential CPAN modules, and updated all other CPAN modules.
* cleaned up FCGI-ProcManager and tested the implicit object, exported
  subroutine mode.


Overview of changes from 0.5.2 to 0.5.3

* added more error checking to compiler.
* fixed bugs.
* added text_mode() vs. script_mode() to simplify text handling.  There
  are now two standard text handlers: push_text() and push_script().  Now,
  when elements need to do something special with contained text/code, they
  should define code handlers and choose script_mode() if the text within
  the tags is script, and text_mode() otherwise.
* sample piles now support auto-generated .depend
* libraries now support install-test to execute t/*.t
* added dump-directory feature, where all incoming requests and outgoing
  responses are dumped if $g_dump_dir is set to a directory name.
* began a sample contacts database demo application.
* generated page methods are now aware of the page names via $page_name
  lexical.


Overview of changes from 0.5.1 to 0.5.2

* added more MIC3 compatibility.
* added more documentation.
* added Getopt-Mixed, and are using it now in piler, specifically to support
  long options, and to support multiple -I include directories.
* cleaned up interpretation of vpath vs. includepath.  vpath now equals the
  current directory of the file getting compiled unshifted onto includepath.
* simplified parse_file(), created parse_uri(), removed
  find_and_parse_file() in PSP::Parser.
* cpan/FCGI-ProcManager is now hybrid:  it supports both OO-style syntax,
  and Exporter-style syntax.  (untested)
* PSP now supports <?psp ... ?> php-style syntax.  (untested)
* added use strict to generated pages, piles, FieldSpaces, and Groups.
* added changes to better support the compilation of single pages and single
  FieldSpaces.


Overview of changes from 0.5.0 to 0.5.1

* added more documentation, especially: more web server configuration
  instructions in README, ChangeLogs, this NEWS file.
* added psp/lib/bundle (Bundle-PSP on CPAN) to manage the download and
  installation of modules otherwise found in psp-x.y.z/cpan/*.
* created PSP::Page.  PSP::Pile is now a subclass of PSP::Page.  Meaning:
  PSP::Page is a class that can generate output for a page.  PSP::Pile is a
  class that can generate output for a pile (or set) of pages.
* The piler now uses a default output extension of ".pm" rather than
  ".pile" because the generated file is a valid perl module.
* The piler will generate a PSP::Page when given an input file, and a
  PSP::Pile when given an input directory.
* All sample pages now end in .psp and not .html
* Constructors now do little more than allocate/bless the references..
  It is now more common for these previous inputs to enter the objects
  through an init() or an initialization() method.  This may allow objects
  to be re-used between requests -- untested.
* Added an option to HTML-Parser to turn off its literal mode.  PSP-Parser
  can now manage its own notion of CDATA, and now properly avoids
  parsing/complaining about psp-supported tags within such CDATA sections,
  except of course the end tag which turns the CDATA section off.  This
  allows PSP tags to be located within <style>..</style> and/or
  <script>..</script> elements.
* Added and tested notion of Loader::unload().  There is still a small
  memory leak (perl's do?), but preliminary tests indicate that Loader and
  its associated classes may now be unloaded.
* Created a more complete list of AUTHORS.


Overview of changes in PSP 0.5.0 from MIC 3.01

* PSP is released to the public
* PSP is completely re-written from MIC3.
* PSP::Pile is a now an object that is subclassed by piles generated by
  the piler.  In fact, it is no longer necessary to use PSP::Parser to
  have a functional servlet-like pile class.
* MIC::MountManager was re-written as PSP::Loader.  It manages the
  the fully heirarchical relationships between piles and subpiles, and
  also manages the loading (and possibly future unloads) of individual piles.
  There is no longer an awkward require() in piledriver.
* PSP::ProcManager subclasses FCGI::ProcManager and provides overrideable
  methods to do the weird, tricky Kerberos stuff in piledriver in a 
  localized way without forcing the PSP project to support Kerberos or any
  other platform.
* PSP supports CGI, FastCGI, and Apache mod_perl.
* PSP::Parser has begun to implement a modular, extensible framework for
  implementing new tags.  PSP::Parser::Control, PSP::Parser::Error,
  PSP::Parser::Form, PSP::Parser::Message, PSP::Parser::Table
  PSP::Parser::FieldSpace, and PSP::Parser::Group implement such tags.
* PSP::Parser is now much more heavily stack-based, allowing for more
  proper nesting of tagged structures.
* The piler now only parses command-line arguments, and then invokes the
  proper class method of PSP::Compiler to generate a class or set of
  classes from input files and/or directories of files.  All the compiling
  functionality is defined in the library.  It is now possible and useful
  to e.g. compile each fieldspace configuration into its own .pm file,
  rather than in the monolithic pile form.
* PSP::FieldSpace::Propagation defines a functionless base class for
  PSP::FieldSpace::Ephemeral and PSP::FieldSpace::DbStorer (or whatever) to
  subclass.  These subclasses need only define 2 methods: to put
  key-to-list associations and to get key-to-list associations.
* PSP::Conf parses etc/psp.conf and exports global variables to other PSP
  modules.
* PSP::Log more cleanly provides the piledriver.log functionality
  previously implemented in MIC::Driver.
* AtomicData has been largely re-written.  The "Field" class now contains
  an independent AtomicData object and an independent HTMLIO object.  The
  AtomicData is unaware of HTMLIO, while most of the HTMLIO object methods
  expect an object which implements the AtomicData interface.
  The HTMLIO object can be reassigned to any object implementing the HTML
  interface.  (e.g. a field can be transformed on the fly from a select
  box to a checkbox group.)
* Many scoping issues have been resolved.  Fieldspaces now use the same
  variable sharing mechanism that subpiles use (i.e. PSP::share).  There
  is no longer a strange package hack to define methods in other packages.
  This allows fieldspaces to be reused by different piles.  i.e. a
  fieldspace library is now a possibility.
* HTML::Parser has been modified to support ASP/JSP-style <% ... %> tags,
  and if we were interested in emulating PHP, <? ... ?>.  I've worked with
  the author, and he is comfortable with incorporating this patch into his
  future releases.
* PSP::SideMenu provides the FXIM-style side-menu in a general way.
