Revision history for Perl module Tree::DAG_Node.

1.24  Sun Jan 25 14:17:00 2014
	- Clean up discussion in docs of original author's reluctance to allow parameters to new().
	- Rewrite bareword filehandles (INX) to use a variable (my $fh).
	- Rename github repo from Tree--DAG_Node to Tree-DAG_Node - My new standard.
		Update Build.PL and Makefile.PL to match.
	- Reformat the docs, and this file, slighty, to be <= 100 chars per line - My new standard.
	- Change horizontal indentation used by node2string() to add 1 space, so '|' lines up underneath
		the first char of the previous node's name. Use scripts/
		to see the difference.

1.23  Mon Oct 20 18:12:00 2014
	- Change output format when using node2string(), which is called by tree2string().
		Indentation which used to be '|---' is now '|--- '. So, a tree which used to be printed as:
		|   |---::=
		|   |---action
		|   |---=>
		|   |---[values]
		Is now printed as:
		|--- :default
		|   |--- ::=
		|   |--- action
		|   |--- =>
		|   |--- [values]
		This makes the difference between node names ''/'-', '1'/'-1', etc, much clearer.
		Apologies to anyone who runs tests which compare the output with pre-existing files.

1.22  Thu Feb 13 13:14:00 2014
	- t/read.tree.t was still using File::Slurp :-(.

1.21  Thu Feb 13 11:14:00 2014
	- Switch from File::Slurp to File::Slurp::Tiny, on the advice of Karen Etheridge. See RT#92976.

1.20  Fri Jan 31 09:46:00 2014
	- After a private email from Paul Howarth (yea!) I see I need File::Temp V 0.19 because that's
		the version which introduced the newdir() method, as used in the test suite. Sorry for the

1.19  Thu Jan 30 09:24:00 2014
	- Set pre-req File::Temp version # to 0 (back from 0.2301). See D A Golden's blog entry:

1.18  Thu Sep 19 14:24:00 2013
	- No changes, code or otherwise, except for the version # in the *.pm, this file, and
	- Somehow a corrupted version got uploaded to, so I've just changed the
		version #. The file on MetaCPAN was fine.
	- Thanx to Rob (Sisyphus) for reporting this.

1.17  Mon Sep 16 15:24:00 2013
	- Write test temp files in :raw mode as well as utf-8, for MS Windows users.
	- Take the opportunity to change all utf8 to utf-8, as per the docs for Encode,
		except for 'use warnings  qw(FATAL utf8);', which doesn't accept utf-8 :-(.

1.16  Mon Sep  9 09;26:00 2013
	- Accept a patch (slightly modified by me) from Tom Molesworth (see RT#88501):
		Remove 'use open qw(:std :utf8);' because of its global effect.
		Replace Perl6::Slurp with File::Slurp, using the latter's binmode option for the encoding.
		Fix docs where I'd erroneously said File::Slurp didn't support utf8.

1.15  Fri Sep  6 11:10:00 2013
	- Replace Path::Tiny with File::Spec, because the former's list of dependencies is soooo long.
		Changed files: t/read.tree.t, Build.PL and Makefile.PL.
		See: RT#88435 for an explanation.
	- Move t/pod.t to xt/author/pod.t.

1.14  Wed Sep  4 13:44:00 2013
	- Document the copy() method.
	- Patch the copy() method so it respects the {no_attribute_copy => 1} option.
	- Add method read_tree(), for text files. It uses Perl6::Slurp (which supports utf8).
	- Add methods read_attributes() and string2hashref($s) for use by read_tree().
	- Add t/read.tree.t to test read_tree().
	- Add t/tree.utf8.attrbiutes.txt, in utf8, for use by t/read.tree.t.
	- Add t/tree.with.attributes.txt and t/tree.without.attributes.txt for use by t/read.tree.t.
	- Make Perl V 5.8.1 a pre-req so we have access to the utf8 pragma.

1.13  Mon Aug 12 17:16:00 2013
	- Change the values accepted for the no_attributes option from undef and 1 to 0 and 1.
		If undef is used, it becomes 0, so pre-existing code will not change behaviour.
		This makes it easier to pass 0 or 1 from the command line, since there is no default value

1.12  Wed Jul  3 16:38:00 2013
	- Change text in README referring to licence to match text in body of source, since it was in
		conflict with the Artistic Licence V 2.0.
		This was requested by Petr Pisar who packages stuff for Red Hat.
	- Rename CHANGES to Changes as per CPAN::Changes::SPEC.
	- Various spelling fixes in the docs, as kindly reported by dsteinbrunner.

1.11  Mon Feb  4 09:50:00 2013
	- Correct the date (2012 -> 2013) in this file used for V 1.10.
	- Correct the text at L<Tree::DAG_Node/AUTHOR> so it refers to Artistic License 2.0,
		which now matches what it says in Build.PL and Makefile.PL. Resolves RT#83088.

1.10  Fri Feb  1 08:53:00 2013
	- Change t/pod.t to look for Test::Pod 1.45, but comment out Test::Pod in Build.PL and
		Makefile.PL. This means Test::Pod is not used at all if it is not installed.
		As per RT#83077.

1.09  Thu Nov  8 12:38:00 2012
	- No code changes.
	- Oops. The changes in V 1.08 we made in the other 10 distros, but not in this one.
		My apologies.

1.08  Thu Nov  8 12:38:00 2012
	- No code changes.
	- For pre-reqs such as strict, warnings, etc, which ship with Perl, set the version # to 0.
		Reported as RT#80663 by Father Chrysostomos for Tree::DAG_Node.

1.07  Thu Nov  1 12:47:00 2012
	- New maintainer: Ron Savage
	- Pre-emptive apologies for any changes which are not back-compat. No such problems are
		expected, but the introduction of new methods may disconcert some viewers.
	- Fix RT#78858, reported by Gene Boggs. Audit code for similar problems.
	- Fix RT#79506. reported by Ron Savage.
	- Rename ChangeLog to CHANGES, and add Changelog.ini.
	- Replace all uses of cyclicity_fault() and Carp::croak with die.
	- Remove unused methods: decommission_root(), cyclicity_allowed(), cyclicity_fault(),
		inaugurate_root(), no_cyclicity() and _update_links(). OK - cyclicity_fault() was called
		once. It just died.
	- Add methods: format_node(), hashref2string(), is_root(), node2string(), tree2string().
		tree2string($opts, $node) - unlike draw_ascii_tree() - can optionally print the tree
		starting at any node. Override format_node(), hashref2string(), and node2string() if
	- Reformat the POD big-time.
	- Add Build.PL.
	- Re-write Makefile.PL.
	- Remove use vars(@ISA $Debug $VERSION). Replace latter 2 with 'our ...'.
	- Rename t/00_about_verbose.t to t/about.perl.t.
	- Add scripts/ Warning: Some trees get into an infinite loop.
	- Add t/cut.and.paste.subtrees.t.        Warning: Some trees get into an infinite loop.
	- Document the options (discouraged by Sean) supported in the call to new($hashref).

1.06  Sun Dec  2 12:00:00 1998
	- New maintainer: David Hand.
	- No code changes.

1.05  Wed Dec 29 12:00:00 1998
	- Just repackaging.
	- No code changes.

1.04  Fri Feb 23 12:00:00 1998
	- Bugfix: notes a bug in
		depth_under that apparently always makes it return 0.

1.03  Sat May 13 12:00:00 1998
	- Superficial changes:
		Minor doc spiffing-up.
		Noting my new email address.
	- In order to keep its symbol table clean, DAG_Node no longer
		imports routines from Carp and UNIVERSAL.  Should have no effect on existing code.
	- I went and commented out all the places where I have asserts for
		non-cyclicity.  I once had the idea that DAG_Node could be a base
		class for graphs that /could/ allow cyclicity, or something like
		that, so those assertions would apply for methods that work only
		for acyclic networks.  But, in time, I realized that almost
		everything in DAG_Node would have to have such assertions.  Moral
		of the story: DAG_Node has nearly no code that it could share with
		a class for anything but DAGs.  And since DAG_Node does everything it
		can to /keep/ you from making cyclicities, there's no point in
		constantly having assertions of noncyclicity (especially when
		these assertions are rather expensive to check).

1.02  Sun Mar  05 12:00:00 1998
	- Minor bugfixes:
		Fixed a typo in the docs: corrected one "right_sisters" to "right_sister"
		Initialized a variable to '' to avoid warnings under -w. Thanks to Gilles Lamiral.

1.01  Fri May 14 12:00:00 1998
	- Major additions:
		Scads of new methods.  Still (as far as I know) backward
		compatible with all previous versions.  Some minor changes in
		coding, not affecting the interface.
	- Hopefully more friendly to users that use -w (warnings).
	- Cautionary tale: I started making big changes to this right around
		mid-November 1998.  But I kept thinking "oh, ONE MORE change and
		then I'll release it."  Famous last words!  Other things came up,
		I forgot what was new and what was different in this module
		(which is why you don't see a detailed list of differences here),
		altho apparently somehow I managed to document all the new methods.

0.75  Tue Nov  3 12:00:00 1998
	- Minor changes:
		New methods new_daughter, new_daughter_left.
		$obj->new constructor syntax now documented.
		Internal accesses to "daughter" and "mother" attribs are now direct, for efficiency's sake.
	- Minor improvements to the docs.

0.74  Wed Oct 28 12:00:00 1998
	- Whoops, forgot to bundle the README.
	- No change in the code.

0.73  Tue Oct 27 12:00:00 1998
	- First release.