2001-04-23 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.4.
* Everything has been overhauled. This distribution now features 10 Perl 5
modules that are intended to be used with HTML::Application. Eight of them are
demo "application components", one performs user input and output, and one
encapsulates a file format for counting events.
* CGI::WPM::Globals no longer exists. All of the other modules are now
written to use HTML::Application directly. The small bit of code from
Globals that did user input and output has been spun off into a new module
named CGI::WPM::SimpleUserIO; that module is fully documented.
* All modules are now more or less fully documented in some way or other.
* All modules can no longer be called the way they were, except for
CGI::WPM::CountFile. However, all of their "preferences" continue to work
the same as they did before.
* All modules are at version 0.4
2001-04-20 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.38.
* The module CGI::WPM::FileVirtualPath has been renamed to File::VirtualPath
and spun off into its own distribution, File-VirtualPath-1.0.
* CGI::WPM::Globals has been split up into two modules, both of which are at
version 0.38. The new module is HTML::Application, which has also been spun
off into its own distribution, HTML-Application-0.38. This module handles
all of the core functionality of the old Globals and adds new functionality.
* Since the new module has a very different interface, CGI::WPM::Globals
continues to exist as a subclassed shim that allows older modules written to
use the old Globals to use Application now without being changed. This
means that all of the other CGI::WPM::* modules are unchanged from before.
The Globals shim also handles any actual user input or output that it did
before since HTML::Application intentionally stays away from such.
* Note that any future releases of this distribution will be set to use
HTML::Application directly and will not be backwards compatible like this
release 0.38 is.
* Following the above changes, Globals is 5K smaller.
2001-04-12 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.37.
* This distribution has been renamed to "duncand-prerelease" from
"CGI-WebsiteGenerator" because the old name really isn't that appropriate.
Largely this is because the modules are not properly documented and it is
very difficult for new people to use them because of it. The new name
reflects that fact that what people see here is in-development product, and
while this product does function, it is subject to change a lot and is
poorly documented.
* None of the modules themselves have changed since 0.36.
2001-04-10 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.36.
* The superclasses of CGI::WPM::Globals have been merged with it, and so
the PageMaker and WebUserIO modules no longer exist as separate files.
The merge was very clean and you can use Globals exactly has you had before.
You can also use Globals as if it were PageMaker or WebUserIO, with the
exception that their various new() and initialize() methods took different
arguments; you now call the way Globals was called.
* The method today_date_utc() was removed from Globals and three copies of it
were moved into MailForm, GuestBook, and Usage.
* The module CGI::WPM::EventCountFile has been renamed to
CGI::WPM::CountFile, and the new version number is 0.36. No other changes
of significance were made to it. CGI::WPM::Usage was updated to look for
this module under its new name also.
* Some small POD improvements were made to FileVirtualPath.
* In this release, all of the modules have versions no higher than 0.36,
which more accurately reflects their "not done yet" status.
2001-04-06 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.35.
* CGI::WPM::Globals has been split up into two modules, both of which are at
version 0.35. The new module is CGI::WPM::FileVirtualPath, which handles
details of managing the virtual paths for file-system files, user input
request path, and path for new urls. CGI::WPM::Globals still has the same
public interface, though, and is backwards compatible. The exception to
this is that the publicly documented private methods [site_path_str_to_ra(),
site_path_ra_to_str(), join_two_path_ra(), simplify_path_ra()] have been
removed.
* CGI::WPM::Globals has also lost its send_email_message() method, and
three copies of it were moved into MailForm, GuestBook, and Usage.
Appropriately, those 3 modules now require Net::SMTP and Globals does not.
* CGI::WPM::SequentialFile has now been dropped from the distribution, and
any functionality that wasn't previously lost to CGI::MultiValuedHash has
been transferred to CGI::WPM::MailForm and CGI::WPM::GuestBook.
* Following the above changes, Globals is 5K smaller, GuestBook and MailForm
are each 4K larger, Usage is 2K larger, the new FileVirtualPath module adds
27K (with docs), and the lost SequentialFile drops 24K (with docs).
So, while the count of modules is the same at 13, they have a net file size
increase of 8K (+37, -29) including docs.
2001-03-18 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.34.
* This release is the first one that includes the CPAN standard files
"Makefile.PL", "test.pl", and "MANIFEST", which were all created following
the previous release. The content of "Manifest" was previously inside the
"ReadMe" file. Improved the install instructions in my ReadMe file.
* Note that "test.pl" is incomplete; it only tests that these modules will
compile but not that the methods work; it is included so that people can use
the Makefile in the standard way during installation. As this distribution
splits up in the future, each piece will have a fleshed-out "test.pl".
* This release takes into account any of the changes that happened to other
modules that this distribution requires. See the details below.
* Updated the persistant_user_input_string() method of WebUserIO to account
for public interface changes in CGI::MultiValuedHash that broke it.
* Updated the content_as_string() method of PageMaker to make use of new
functionality in HTML::EasyTags; content_as_string() is now implemented with
fewer lines of code as a result.
* Updated CGI::WPM::SequentialFile to make use of new functionality that was
added to CGI::MultiValuedHash. Specifically, the read_records() and
write_records() methods were dropped, since CMVH's new batch_from_file() and
batch_to_file() can do all of the same work. Similarly, other parts of
SequentialFile that used those methods were updated.
* I resynced versions for all of the other modules that needed it.
2001-01-05 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.33.
* As of this release, the separate CGI-FormGenerator distribution ceased to
exist. Its more generic modules were separated into their own distributions,
and its more proprietary modules have been brought on board this distribution.
This essentially reversed the trend started when libdwg broke up.
CGI-WebsiteGenerator now contains 13 modules, but is considered a temporary
distribution, as more parts will be split off into general distributions
later.
* As of this release, the following 5 modules have been registered with
"The Perl 5 Module List" (5th one pending results) as generic modules:
- Class::ParamParser 1.01 (was same name, v1.0)
- Data::MultiValuedHash 1.03,
CGI::MultiValuedHash 1.03 (were CGI::HashOfArrays 1.02)
- HTML::EasyTags 1.02 (was HTML::TagMaker 1.01)
- HTML::FormTemplate 1.02 (was HTML::FormMaker 1.01)
* As of this release, the following 4 modules have joined this distribution,
and also renamed into the CGI::WPM::* namespace (we now have 13 total):
- CGI::WPM::WebUserIO 0.93 (was CGI::WebUserIO 0.92)
- CGI::WPM::PageMaker 1.01 (was HTML::PageMaker 1.0)
- CGI::WPM::SequentialFile 1.03 (was CGI::SequentialFile 1.02)
- CGI::WPM::EventCountFile 1.04 (was CGI::EventCountFile 1.03)
* As of this release, all 9 of the preexisting modules had their version
numbers increased by 0.01 to 0.33 to reflect small changes made to them to
stay compatible with the renaming of above modules that they used.
These modules' own public interface is unchanged.
* The file structure in this distribution has changed, with all files in
the root level and with the ToDo/Manifest rolled into the ReadMe.
* No other changes were made.
2000-12-26 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.3201.
* Removed the ".txt" extensions from my ReadMe files, since they aren't
pulled out by the CPAN documentation system otherwise.
2000-12-26 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.32.
* Added complete Synopsis POD to all the modules, as well as a few notes in
the Description, and also added modules to See Also. All modules have been
increased in version to 0.32. For most modules there were no code changes.
But there should now be enough help that you can actually start *using*
these things. I deeply regret not having this documentation earlier. The
ReadMe file also has a copy of the Synopsis from CGI::WPM::Globals.
* The other main purpose of this release is to ensure compatability with
the mod_perl environment in addition to the CGI environment. This means
that I have tested all of the modules in a production mod_perl environment
(my web sites) and found that they function properly within the demands that
I place on them. Previously my only test environment was CGI.
* Updated CGI::WPM::Globals to stay compatible with changes to the
CGI::FormMaker 0.92 distribution. It's own public interface is unchanged.
* Added many new features to CGI::WPM::Usage, mostly in the areas of
customizability, and therefore the public interface is completely different.
Among the changes:
- A poor design feature that allowed Usage to take the preferences for other
WPM modules and call them in turn, such as how MultiPage does, no longer
exists. Your main program should instead call the other WPM modules and
then Usage afterwards, with the same Globals object.
- You can now choose which subset of transaction details should be tracked,
rather than being forced to use all-or-none as before.
- You can now choose which subset of transaction details that are logged
should be e-mailed to you on a max-daily basis. In addition, the
information can be divided into multiple e-mails instead of all-in-one.
This also means that you can keep count logs without any e-mails at all.
Log files in each mail group can optionally be cleared each day or not.
- Other, smaller customizations, particularly with referrer categorizing.
* I removed the demo website, which was horribly out of date. One such as
it will return later.
* The "Manifest" was reformatted to be more machine friendly.
2000-11-14 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.31.
* This release is mostly a compatability update to ensure that it works with
the public interface changes in the CGI-FormMaker 0.91 distribution. The
most significant updates in this regard are to the CGI::WPM::Globals class,
which is now functionally synchrononized with the CGI-FormMaker classes in
respect to the methods new(), initialize(), and clone().
* Updated CGI::WPM::Globals to change the way it deals with instances where
you want to make several CGI::WPM::Globals objects rather than the usual of
one. If you want more than one Globals object, you need to use the clone()
method of the first one to make others, as more than one new() could hang
(block on read) your program. See the ChangeLog in the CGI-FormMaker
distribution for more details, as the relevant behaviour and constraints
come from CGI::WPM::Globals being a subclass of CGI::WebUserInput. This
class is now at version 0.31 up from 0.3.
* Updated CGI::WPM::Base to rename the function finalize_page_content() to
finalize() and to add a new function execute(). A depreciated shim method
with the older name of finalize() is provided so that programs which use it
won't break with this distribution upgrade. For your convenience, the new
method execute( $globals ) has the same effect as calling the 3 methods
[new( $globals ), dispatch_by_user(), finalize()] in that order. In fact,
using this is recommended considering that subclasses of CGI::WPM::Base are
conceptually applications anyway (but embeddable in other programs). This
class is now at version 0.31 up from 0.3.
* Minor updates to CGI::WPM::Multipage and CGI::WPM::Usage whereby they use
the renamed finalize() method of Base when calling subordinate classes.
Also, CGI::WPM::Usage recognizes a few more urls as being search engines.
Both classes are now at version 0.3001 up from 0.3.
* CGI::EventCountFile ceased being its own distribution, and it joined with
the CGI-FormGenerator distribution.
2000-09-04 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.3.
* This release contains the following modules, which were previously the
high-level components of my "libdwg" distribution, but I have set the
lower-level components off on their own for those of you who only want to use
them and not these modules:
CGI::WPM::Globals 0.3
CGI::WPM::Base 0.3
CGI::WPM::MultiPage 0.3
CGI::WPM::Static 0.3
CGI::WPM::MailForm 0.3
CGI::WPM::GuestBook 0.3
CGI::WPM::SegTextDoc 0.3
CGI::WPM::Redirect 0.3
CGI::WPM::Usage 0.3
* These modules contain incomplete POD within them. They do have Name,
Requirements, Syntax, and lists of methods and "preferences". They are
lacking Synopsis, Description, and descriptions for the methods and prefs.
* These modules requires Perl version 5.004.
* The following distributions are needed by this one. Some in all
circumstances and some optionally depending on how your web site is
configured. Only directly-referenced modules are considered. Other
distributions that these call in turn are not listed:
- CGI-FormGenerator-0.9.tar.gz
- libnet-1.0703.tar.gz
- EventCountFile-1.0.tar.gz
* The "CGI-FormGenerator" distribution was also split off from libdwg, and
these were the modules in it:
HTML::TagMaker 1.0
HTML::FormMaker 1.0
CGI::HashOfArrays 1.01
CGI::SequentialFile 1.0
CGI::WebUserInput 0.9
CGI::WebUserOutput 0.9
* The "EventCountFile" distribution was also split off from libdwg, and
this module was in it:
CGI::EventCountFile 1.01
* The "Class-ParamParser" distribution was also split off from libdwg, and
this module was in it:
Class::ParamParser 1.0
2000-08-23 Darren Duncan <perl@DarrenDuncan.net>
* libdwg 1.11, the last version of the distribution to include the above
modules, was released.
2000-07-23 Darren Duncan <perl@DarrenDuncan.net>
* libdwg 1.0, the first version of any distribution to include the above
modules, was released on CPAN.
2000-05-15 Darren Duncan <perl@DarrenDuncan.net>
* Completed primary development on these modules' code, but the POD is mostly
non-existant.
2000-03-07 Darren Duncan <perl@DarrenDuncan.net>
* Began development on the final versions of these modules.
* All modules based on a template created by h2xs 1.18.
1999-07 thru 1999-12
* Worked on second prototype of code that ended up in these modules. The
effects of this development, as far as CGI-WebsiteGenerator's own modules are
concerned, were mostly confined to Globals.
* As a separate but parallel project, I also implemented a complete and
generic Threaded Discussion Board object using some of my low level modules *and*
CGI.pm. This board is possibly still in use today in a corporate Intranet site.
1999-02 thru 1999-05
* Created first prototypes of code that ended up in these modules and used
them to generate my web sites for a year. Many present-day features were
present at that time, including static pages, segmented text pages, e-mail
forms and guest books with unlimited questions (but were text only),
redirection, and usage tracking. The implementation was
just a hell of a lot uglier. These modules also used CGI.pm to do the
things that I now use my HTML-FormTemplate distribution to do instead.