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:
|---:default
| |---::=
| |---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.
Update DEPENDS
Upstream changes:
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.
Upstream changes:
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 churn.
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:
http://www.dagolden.com/index.php/2293/why-installing-distzilla-is-slow-and-what-you-can-do-about-it/.
Update DEPENDS
Upstream changes:
1.18 Thu Sep 19 14:24:00 2013
- No changes, code or otherwise, except for the version # in the *.pm, this file, and Changelog.ini.
- Somehow a corrupted version got uploaded to search.cpan.org, 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 available.
Upstream changes:
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.
Changes from previous:
----------------------
[V 1.11]
2013-02-04T09:50:00
- 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.
Upstream changes:
1.10 Fri Feb 1 08:53:00 2012
- 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.
- No code changes.
- Oops. The changes in V 1.08 we made in the other 10 distros, but not in this one. My apologies.
Changes 1.08:
- No code changes.
- For pre-reqs such as strict, warnings, etc, which ship with Perl, set the version # to 0.
Upstream changes:
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 desired.
- 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/cut.and.paste.subtrees.pl. 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).
David Price.
Tree::DAG_Node is a (super)class for representing nodes in a tree.
This class encapsulates/makes/manipulates objects that represent nodes
in a tree structure. The tree structure is not an object itself, but
is emergent from the linkages you create between nodes. This class
provides the methods for making linkages that can be used to build up
a tree, while preventing you from ever making any kinds of linkages
which are not allowed in a tree (such as having a node be its own
mother or ancestor, or having a node have two mothers).