The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.
2003-03-16   Darren Duncan <>

	* Release 1.071.

	* This is a small maintenance release that is mainly for improving
	documentation.  Similar maintenance releases are being done with all of my
	distributions simultaneously.  A lot of it was formatting issues that were
	easy to miss before; the other bullet points below list the non-formatting
	issues.  These files had formatting fixes:, ChangeLog.

	* The distribution file layouts have also been standardized, with modules
	going in a "lib" folder and tests going in a "t" folder.  "" was
	changed to "t/HTML-EasyTags.t" and "" was changed
	to "lib/HTML/".

	* Updated NAME in to match the official registered module list.

	* Updated all Copyright statements to a better (and longer) version, which
	is dated 1999-2003.  Your rights to use these modules haven't changed, but
	they may now be easier to understand.  These statements appear once in the
	ReadMe file at the bottom (under "AUTHOR"), and twice in each module (.pm
	file), a full version at the bottom (under "AUTHOR") and a shorter version
	at the top (in code comments).

	* Added the "use warnings" pragma at the top of all files beside "use
	strict"; every occurance of "use strict" gained a "use warnings" whether it
	was in the module proper or in its test script or in its SYNOPSIS.  This
	should save users from having to put -w on the command line for them.

	* Incremented the module $VERSION number by 0.001, and all test scripts to
	require the new version.  Also, where any of my modules use others of my
	modules, they now require the latest version as of this writing, for
	simplicity of maintenance.

	* Updated all test scripts to read $verbose from @ARGV (command line
	arguments), and other test script improvements.

	* Updated these sections of the ReadMe file: INSTALLATION.

2002-12-03   Darren Duncan <>

	* Release 1.07.

	* Minor bug fix release to remove any 'uninitialized value' warnings that 
	appear when running the test suite with the -w option (but the module had 
	correct output before).

	* Updated to check for output produced when some input arguments are 
	'0'; this string value is false, but should not be treated the same as if 
	the input was '' or undef; a '0' should not be replaced with a ''.  The 
	updated test suite was run against both release 1.06 and 1.07, and the new 
	tests are to ensure the new module produces identical output (the simplest 
	solutions to eliminate the 'uninitialized value' warnings wouldn't have).  
	There are now 79 tests up from 73.

	* Minor documentation update in the README file so that someone can get an 
	idea what this module does after looking only at the README.  Also an update 
	to say how to install to a different directory than the default.  Also an 
	update in the "TO DO" section.

2001-09-02   Darren Duncan <>

	* Release 1.06.

	* This release adds support for the stricter requirements of W3C's XHTML 
	standard where possible.  See "" for details on 
	how this standard compares to HTML 4.  As a result, the default output from 
	this class is now slightly different from before.  However, the changes 
	should be backwards-compatible with older user agents (web browsers).

	* HTML tag and attribute names are now made lowercased instead of uppercased.  
	While HTML 4 is not case sensitive, XHTML requires lowercased names.

	* XHTML requires "minimized" tags, which are tags that do not come as a pair 
	of "start/end" tags, to have a different format than "start" tags.  Such 
	tags include ["br", "img", "input"].  This class now creates such tags like 
	"<br />" instead of "<br>".  Tags as pairs remain the same, "<p></p>".

	* There is a new autoloaded method suffix for forcing construction of tag 
	parts that are different than the usual, called "mini".  (The others were 
	["pair", "start", "end"].)  The new "mini" suffix will force minimized 
	format, such as "<p />", which is different from "start", which continues to 
	force "<p>".  From now on, "mini" is meant for tags you are using as singles, 
	where "start" is meant where you will also use an "end" later to pair it up.

	* For so-called "no value" tag attributes, where positive assertion was 
	provided by the presence of the attribute name alone (eg: checked, selected), 
	these now show values in "key=value" format rather than "key" when they are 
	true.  They are still completely absent as before if they are false, for 
	backward compatability.

	* The value that prologue_tag() returns is now customizable.  A new object 
	property was added to store the prologue tag (doctype/dtd), for which 
	prologue_tag() is now a get/set accessor.  For backwards compatability with 
	earlier releases, '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">' is 
	the default value.

	* Updated the for the new stricter behaviour like lowercased tags.  
	There are now 73 tests up from 69; two more for prologue, two for "mini".

	* Updated documentation, particularly the NAME and DESCRIPTION and SYNTAX, 
	plus some method descriptions and the ReadMe file.

2001-05-08   Darren Duncan <>

	* Release 1.05.

	* This release adds explicit frames support to the start_html() and 
	end_html() methods, so that they can be used in the construction of an 
	HTML 4 frameset document.  It is assumed in that case that any HTML going 
	between the output of these two methods would be for browsers that don't 
	understand frames, that is, the "noframes" section.  Each method has an 
	additional argument now for frame support.  The new 4th argument to 
	start_html() is usually a hash of attributes for the <FRAMESET> tag, and 
	the various <FRAME> tags would be provided via the hash key 'text'.  The 
	new 1st argument to end_html() causes it to make the closing noframes tag.

	* No other changes except for 5 additional tests in and minor POD 
	updates.  This release is backwards compatible with previous ones.

2001-04-17   Darren Duncan <>

	* Release 1.04.

	* HTML::EasyTags now does not require any other modules and will work on its 
	own.  The small portion of Class::ParamParser that this class did use has 
	been copied over into a private method, which adds less than 1K.  The change 
	should make HTML::EasyTags easier to use since fundamentally it is a 
	base-level module and now it acts like it.

	* Minor changes were made to the module's POD and other documentation files.

	* Modified so that it automatically trims long outputs at 50 
	characters, ensuring that each "ok NN" line does not wrap to multiple lines.
	This behaviour can be toggled with the $verbose variable.

2001-03-14   Darren Duncan <>

	* Release 1.0301.

	* This release fixes a couple of documentation bugs.  There were no 
	changes made to the code itself as that was fine.

	* The SYNOPSIS section used to show one calling start_html() using named 
	parameters, a feature which was dropped after v1.01.  The method actually 
	takes positional parameters only, and SYNOPSIS has been updated to show 
	proper calling style.

	* Also fixed a bug in the ReadMe file where the file heading said 
	"class method parameter parser" instead of "easy html tag maker".
	The wrong heading referred to a different distribution.

2001-02-15   Darren Duncan <>

	* Release 1.03.

	* This release is the first one that includes the CPAN standard files 
	"Makefile.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.

	* Added programmer documentation to the various blocks of code, so it is 
	easier to see how they work; useful because a lot is done with little code.

	* Removed the method positional_by_default() and associated class property 
	as this property wasn't used anywhere, so to simplify things.  This change 
	would break any code that depends on the method to be there.

	* Added convenience methods start_html() and end_html() which make a canned 
	html header and footer respectively.  They are much simpler than the ones 
	removed for the previous release, and not proprietary.

2001-01-03   Darren Duncan <>

	* Release 1.02.

	* This release is the first one following official registrations with 
	"The Perl 5 Module List".  The updated entry would look like this:

::EasyTags        bdpO Make proper HTML 4 tags/lists/parts          DUNCAND

	* This release contains my "HTML::EasyTags" module, which was previously a 
	part of the following distributions under the temporary name of 
		- "libdwg": v1.0 r2000-07-23, v1.11 r2000-08-23
		- "CGI-FormGenerator": v0.9 r2000-09-04, v0.9201 r2000-12-26

	* This module requires Perl version 5.004.
	It also requires Class::ParamParser 1.01.

	* Code changes since HTML::TagMaker consist mainly in the removal of the 
	start_html() and end_html() methods; these were superfluous to the purpose 
	of the module, had unstable feature sets, and I deemed them proprietary.
	The POD also received significant updates.

2000-12-26   Darren Duncan <>

	* CGI-FormGenerator 0.9201, the last version of any distribution to include
HTML::TagMaker, was released.

2000-07-23   Darren Duncan <>

	* libdwg 1.0, the first version of any distribution to include
HTML::TagMaker, was released on CPAN.

2000-04-21   Darren Duncan <>

	* Completed primary development on this module.

2000-01-30   Darren Duncan <>

	* Began development on the final version of this module.

	* Module based on a template created by h2xs 1.18.

1999-07-29 thru 1999-11-13

	* Worked on prototype of code that ended up in this module.