[libgraphviz-perl] 17/31: Imported Upstream version 2.10
dom at earth.li
dom at earth.li
Sat Oct 4 21:05:04 UTC 2014
This is an automated email from the git hooks/post-receive script.
dom pushed a commit to branch master
in repository libgraphviz-perl.
commit 75d36c9a9911532b2eee126869c7b81ceb62d7e4
Author: Dominic Hargreaves <dom at earth.li>
Date: Mon Apr 2 22:28:41 2012 +0100
Imported Upstream version 2.10
---
Build.PL | 46 ++++++
CHANGES | 65 ++++++--
Changelog.ini | 325 +++++++++++++++++++++++++++++++++++++++
MANIFEST | 16 +-
META.json | 98 ++++++++++++
META.yml | 80 ++++++++--
Makefile.PL | 80 +++++-----
README | 8 +-
examples/clusters2.pl | 5 +-
examples/remote.pl | 21 ---
lib/Devel/GraphVizProf.pm | 4 +-
lib/GraphViz.pm | 79 ++++++++--
lib/GraphViz/Data/Grapher.pm | 3 +-
lib/GraphViz/No.pm | 5 +-
lib/GraphViz/Parse/RecDescent.pm | 3 +-
lib/GraphViz/Parse/Yacc.pm | 3 +-
lib/GraphViz/Parse/Yapp.pm | 3 +-
lib/GraphViz/Regex.pm | 5 +-
lib/GraphViz/Small.pm | 5 +-
lib/GraphViz/XML.pm | 3 +-
t/simple.t | 2 +-
21 files changed, 719 insertions(+), 140 deletions(-)
diff --git a/Build.PL b/Build.PL
new file mode 100644
index 0000000..4367d93
--- /dev/null
+++ b/Build.PL
@@ -0,0 +1,46 @@
+use Module::Build;
+
+if (open my $fh, '|dot', )
+{
+ close $fh;
+}
+else
+{
+ die "Please install Graphviz from http://www.graphviz.org/.\n";
+}
+
+Module::Build -> new
+(
+ module_name => 'GraphViz',
+ license => 'perl',
+ dist_abstract => "Interface to AT&T's GraphViz. Deprecated. See GraphViz2",
+ dist_author => 'Leon Brocard <acme at astray.com>',
+ build_requires =>
+ {
+ Test::More => 0.47,
+ Test::Pod => 1.44,
+ },
+ configure_requires =>
+ {
+ Module::Build => 0.3800,
+ },
+ requires =>
+ {
+ Carp => 1.01,
+ Config => 0,
+ File::Which => 1.09,
+ Getopt::Long => 2.34,
+ IO::Dir => 1.04,
+ IO::File => 1.10,
+ IPC::Run => 0.6,
+ LWP::Simple => 6.00,
+ Parse::RecDescent => 1.965001,
+ Pod::Usage => 1.16,
+ strict => 1.03,
+ Time::HiRes => 1.51,
+ vars => 1.01,
+ warnings => 1.03,
+ XML::Twig => 3.38,
+ XML::XPath => 1.13,
+ },
+) -> create_build_script();
diff --git a/CHANGES b/CHANGES
index 859a45c..8ea9d3b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,44 @@
Revision history for Perl module GraphViz.
+2.10 Mon Mar 26 10:11:00 2012
+ - Accept a patch kindly supplied by Alexander Kriegisch, to change handling of the rankdir attribute.
+ The valid values are BT, LR, RL or TB, or their lower-case equivalents.
+ Previously, only a true value was accepted, which meant LR. Now, any value not in that list defaults to LR.
+ Files changed: README, CHANGES, Changelog.ini, GraphViz.pm, GraphViz/Regex.pm and simple.t.
+ - Patch this file to replace BST with GMT, since both DateTime::Format::HTTP and DateTime::Format::Strptime
+ fail to recognize BST.
+ These modules are used by Module::Metadata::Changes to transform this file into Changelog.ini.
+
+2.09 Thu Dec 15 11:08:00 2011
+ - Adopt Flavio Poletti's suggestion of trying to pipe to dot, in Build.PL/Makefile.PL, rather than using File::Which,
+ to see if dot (Graphviz) is installed. This (hopefully) solves the problem of using File::Which on systems where it is
+ not installed, before Build.PL/Makefile.PL has a chance to tell the user that File::Which is required. See: RT#73077.
+
+2.08 Tue Nov 1 10:55:00 2011
+ - Wind back pre-reqs for various modules to match what was shipped with Perl V 5.8.1.
+ Many thanx to Brian Cassidy for the error report: https://rt.cpan.org/Ticket/Display.html?id=72068.
+
+2.07 Sun Oct 30 16:08:00 2011
+ - Rewrite Build.PL and Makefile.PL to try loading File::Which rather than assuming it is installed.
+ This avoids the chicken-and-egg problem whereby these 2 programs need File::Which::which to find 'dot'.
+ Many thanx to Richard Clamp for the error report: https://rt.cpan.org/Public/Bug/Display.html?id=71971.
+
+2.06 Tue Oct 25 08:09:00 2011
+ - Add File::Which to the pre-reqs in Build.PL and Makefile.PL.
+
+2.05 Thu Oct 20 10:52:00 2011
+ - Add 'Deprecated. See GraphViz2' to the docs.
+ - Add Build.PL.
+ - Add ability to set ORIENTATION. Thanx to Christian Lackas for the patch. See RT#71787.
+ - Add Changelog.ini.
+ - Add META.json, MYMETA.json and MYMETA.yml.
+ - Add MANIFEST.SKIP.
+ - Ensure all modules contain a version number.
+ - Update the docs regarding the list of modules shipped in this distro.
+ - Remove examples/remote.pl because GraphViz::Remote is no longer shipped.
+ - Clean up examples/clusters2.pl.
+ - Clean up Makefile.PL.
+
2.04 Fri Dec 12 21:31:24 GMT 2008
- perltidy everything
- add human- and machine-readable license
@@ -15,15 +54,15 @@ Revision history for Perl module GraphViz.
to the dot language (by Max Baker)
- new test which tests the POD
-2.01 Fri Sep 24 17:02:29 BST 2004
- - no longer *always* quote the label in add_node() in order to
+2.01 Fri Sep 24 17:02:29 GMT 2004
+ - no longer *always* quote the label in add_node() in order to
let GraphViz::Data::Structure work again (sorry)
-2.00 Wed Aug 25 16:30:53 BST 2004
+2.00 Wed Aug 25 16:30:53 GMT 2004
- thanks to Ron Savage, patched to work under systems
which have an executable extension, such as Windows
-1.9 Tue Aug 24 15:30:31 BST 2004
+1.9 Tue Aug 24 15:30:31 GMT 2004
- check for "dot" in the Makefile.PL instead of a test, as
suggested by Autrijus Tang
- renamed Changes to CHANGES
@@ -56,7 +95,7 @@ Revision history for Perl module GraphViz.
work under Win32!
- this is the Flight 63 edition
-1.4 Wed Oct 3 07:57:42 BST 2001
+1.4 Wed Oct 3 07:57:42 GMT 2001
- added new filehandle, scalar reference, and code reference
scheme to as_* to allow streaming of data, rather than
accumulating potentially very large output in memory (based
@@ -64,7 +103,7 @@ Revision history for Perl module GraphViz.
- new pagewidth and pageheight graph attributes for creating
PostScript mosaics of large graphs (idea by Nelson Loyola)
-1.3 Sun Aug 19 15:43:02 BST 2001
+1.3 Sun Aug 19 15:43:02 GMT 2001
- labels can now contain quotes
- fixed bug: labels can now start with a number
- fixed bug in Devel::GraphVizProf so that packages
@@ -77,12 +116,12 @@ Revision history for Perl module GraphViz.
- make empty cluster names do nothing (patch by Barrie
Slaymaker)
-1.2 Fri Aug 10 18:54:21 BST 2001
+1.2 Fri Aug 10 18:54:21 GMT 2001
- removed the images in the examples directory and added
a file (make_all.pl) to, errr, make all the images
- This is the HAL2001 edition
-1.1 Tue Jul 24 23:54:42 BST 2001
+1.1 Tue Jul 24 23:54:42 GMT 2001
- added extra parameter to as_* to allow easy saving of
images: $graph->as_png("pretty.png")
- added new GraphViz::Parse::Yapp module to visualise
@@ -91,7 +130,7 @@ Revision history for Perl module GraphViz.
Parse::Yacc grammars
- This is the TPC5 edition
-1.00 Thu Jun 14 15:10:28 BST 2001
+1.00 Thu Jun 14 15:10:28 GMT 2001
- finally released as version 1.00!
- added a reference to brian d foy's DDJ article on
Devel::GraphVizProf
@@ -101,7 +140,7 @@ Revision history for Perl module GraphViz.
which makes graphs just work better. Not documented, do
you want it to be?
-0.14 Thu May 3 17:57:57 BST 2001
+0.14 Thu May 3 17:57:57 GMT 2001
- added support for InterpLit node in RecDescent grammars
- added cumulative effect for node attributes (patch by Diego
Zamboni)
@@ -135,7 +174,7 @@ Revision history for Perl module GraphViz.
a regular expression
- now an award-winning module!
-0.12
+0.12 Tue Mar 6 17:37:21 GMT 2001
- fixed bug in redcarpet.pl example
- new rankdir graph attribute, which controls the direction
the nodes are linked together (patch by Mark Fowler)
@@ -163,7 +202,7 @@ Revision history for Perl module GraphViz.
tarball dependencies using ActiveState's package list (thanks
to Brian Ingerson too ;-)
- new, better, testsuite
- - better quoting (especially in ports) to allow a greater range
+ - better quoting (especially in ports) to allow a greater range
of characters
- new undocumented (it may change) as_graph method, which
returns a graph object with the coordinates of nodes and edges
@@ -185,7 +224,7 @@ Revision history for Perl module GraphViz.
including quite a few PNGs
0.06 Thu Aug 24 09:33:21 2000
- - better quoting of nodes and edges (they can now have
+ - better quoting of nodes and edges (they can now have
really wierd names)
- new examples directory with xref.pl: "graphing subroutine
cross-reference reports for Perl modules" and example graph to
diff --git a/Changelog.ini b/Changelog.ini
new file mode 100644
index 0000000..d3554c8
--- /dev/null
+++ b/Changelog.ini
@@ -0,0 +1,325 @@
+[Module]
+Name=GraphViz
+Changelog.Creator=Module::Metadata::Changes V 2.03
+Changelog.Parser=Config::IniFiles V 2.68
+
+[V 2.10]
+Date=2012-03-26T10:11:00
+Comments= <<EOT
+- Accept a patch kindly supplied by Alexander Kriegisch, to change handling of the rankdir attribute.
+The valid values are BT, LR, RL or TB, or their lower-case equivalents.
+Previously, only a true value was accepted, which meant LR. Now, any value not in that list defaults to LR.
+Files changed: README, CHANGES, Changelog.ini, GraphViz.pm, GraphViz/Regex.pm and simple.t.
+- Patch this file to replace BST with GMT, since both DateTime::Format::HTTP and DateTime::Format::Strptime
+fail to recognize BST.
+These modules are used by Module::Metadata::Changes to transform this file into Changelog.ini.
+EOT
+
+[V 2.09]
+Date=2011-12-15T11:08:00
+Comments= <<EOT
+- Adopt Flavio Poletti's suggestion of trying to pipe to dot, in Build.PL/Makefile.PL, rather than using File::Which,
+to see if dot (Graphviz) is installed. This (hopefully) solves the problem of using File::Which on systems where it is
+not installed, before Build.PL/Makefile.PL has a chance to tell the user that File::Which is required. See: RT#73077.
+EOT
+
+[V 2.08]
+Date=2011-11-01T10:55:00
+Comments= <<EOT
+- Wind back pre-reqs for various modules to match what was shipped with Perl V 5.8.1.
+Many thanx to Brian Cassidy for the error report: https://rt.cpan.org/Ticket/Display.html?id=72068.
+EOT
+
+[V 2.07]
+Date=2011-10-30T16:08:00
+Comments= <<EOT
+- Rewrite Build.PL and Makefile.PL to try loading File::Which rather than assuming it is installed.
+This avoids the chicken-and-egg problem whereby these 2 programs need File::Which::which to find 'dot'.
+Many thanx to Richard Clamp for the error report: https://rt.cpan.org/Public/Bug/Display.html?id=71971.
+EOT
+
+[V 2.06]
+Date=2011-10-25T08:09:00
+Comments=- Add File::Which to the pre-reqs in Build.PL and Makefile.PL.
+
+[V 2.05]
+Date=2011-10-20T10:52:00
+Comments= <<EOT
+- Add 'Deprecated. See GraphViz2' to the docs.
+- Add Build.PL.
+- Add ability to set ORIENTATION. Thanx to Christian Lackas for the patch. See RT#71787.
+- Add Changelog.ini.
+- Add META.json, MYMETA.json and MYMETA.yml.
+- Add MANIFEST.SKIP.
+- Ensure all modules contain a version number.
+- Update the docs regarding the list of modules shipped in this distro.
+- Remove examples/remote.pl because GraphViz::Remote is no longer shipped.
+- Clean up examples/clusters2.pl.
+- Clean up Makefile.PL.
+EOT
+
+[V 2.04]
+Date=2008-12-12T21:31:24
+Comments= <<EOT
+- perltidy everything
+- add human- and machine-readable license
+- add use warnings
+EOT
+
+[V 2.03]
+Date=2007-11-18T14:40:20
+Comments=- make the graph name configurable (patch by Ruslan Zakirov)
+
+[V 2.02]
+Date=2005-01-07T18:51:06
+Comments= <<EOT
+- remove dependencies on Graph and Math::Bezier
+- make GraphViz HTML-Like labels work (spotted by Patrice Dehais)
+- updated (including much documentation) to support newer additions
+to the dot language (by Max Baker)
+- new test which tests the POD
+EOT
+
+[V 2.01]
+Date=2004-09-24T17:02:29
+Comments= <<EOT
+- no longer *always* quote the label in add_node() in order to
+let GraphViz::Data::Structure work again (sorry)
+EOT
+
+[V 2.00]
+Date=2004-08-25T16:30:53
+Comments= <<EOT
+- thanks to Ron Savage, patched to work under systems
+which have an executable extension, such as Windows
+EOT
+
+[V 1.9]
+Date=2004-08-24T15:30:31
+Comments= <<EOT
+- check for "dot" in the Makefile.PL instead of a test, as
+suggested by Autrijus Tang
+- renamed Changes to CHANGES
+- clusters can now take attributes as a hashref, thanks to
+patch from Richard A.Wells (see clusters2.pl)
+- fix docbug in GraphViz::Parse::Yapp (spotted by Mark Fowler)
+- better quoting (patch by Barrie Slaymaker)
+- document as_debug (suggested by Richard Clamp)
+EOT
+
+[V 1.8]
+Date=2003-02-23T09:15:14
+Comments=- support for client-side image maps by Dan Boorstein
+
+[V 1.7]
+Date=2003-01-19T21:55:14
+Comments=- quote bgcolor so that HSV works
+
+[V 1.6]
+Date=2003-01-18T15:47:26
+Comments= <<EOT
+- moved tests to Test::More
+- new test which checks if graphviz is installed
+- new 'layout' graph attribute to support twopi - you
+may have to change your programs!
+- new bgcolor graph attribute (idea by Scott Murman)
+- labels named "graph" now work
+EOT
+
+[V 1.5]
+Date=2002-01-13T16:59:14
+Comments= <<EOT
+- updated code reference docs slightly
+- removed GraphViz::Remote as it was no longer working
+- new no_overlap graph attribute which tells the graph solver
+to not overlap the nodes (idea by Chris Ball)
+- added patches by Barrie Slaymaker to make GraphViz
+work under Win32!
+- this is the Flight 63 edition
+EOT
+
+[V 1.4]
+Date=2001-10-03T07:57:42
+Comments= <<EOT
+- added new filehandle, scalar reference, and code reference
+scheme to as_* to allow streaming of data, rather than
+accumulating potentially very large output in memory (based
+on patch by Dave Rolsky)
+- new pagewidth and pageheight graph attributes for creating
+PostScript mosaics of large graphs (idea by Nelson Loyola)
+EOT
+
+[V 1.3]
+Date=2001-08-19T15:43:02
+Comments= <<EOT
+- labels can now contain quotes
+- fixed bug: labels can now start with a number
+- fixed bug in Devel::GraphVizProf so that packages
+are now grouped seperately (lines with the same text used to
+be grouped together)
+- fixed undefined warning in GraphViz::Parse::RecDescent
+- increased coverage of tests
+- new 'rank' node attribute allows nodes to be ranked
+at the same level
+- make empty cluster names do nothing (patch by Barrie
+Slaymaker)
+EOT
+
+[V 1.2]
+Date=2001-08-10T18:54:21
+Comments= <<EOT
+- removed the images in the examples directory and added
+a file (make_all.pl) to, errr, make all the images
+- This is the HAL2001 edition
+EOT
+
+[V 1.1]
+Date=2001-07-24T23:54:42
+Comments= <<EOT
+- added extra parameter to as_* to allow easy saving of
+images: $graph->as_png("pretty.png")
+- added new GraphViz::Parse::Yapp module to visualise
+Parse::Yapp grammars
+- added new GraphViz::Parse::Yacc module to visualise
+Parse::Yacc grammars
+- This is the TPC5 edition
+EOT
+
+[V 1.00]
+Date=2001-06-14T15:10:28
+Comments= <<EOT
+- finally released as version 1.00!
+- added a reference to brian d foy's DDJ article on
+Devel::GraphVizProf
+- put the entire Perl regular expression test suite through
+GraphViz::Regex and fixed all the bugs
+- no longer sort nodes by default (idea by Stephen Riehm),
+which makes graphs just work better. Not documented, do
+you want it to be?
+EOT
+
+[V 0.14]
+Date=2001-05-03T17:57:57
+Comments= <<EOT
+- added support for InterpLit node in RecDescent grammars
+- added cumulative effect for node attributes (patch by Diego
+Zamboni)
+- changed the quoting rules again to make it easier to read
+the dot files (idea by Diego Zamboni)
+- make add_edge() automatically add any nodes specified for
+the edge that have not been previously added to stop the
+Graph module complaining (patch by Diego Zamboni)
+- new 'node', 'edge', and 'graph' graph attributes to specify
+global node, edge, and graph attributes (patch by Diego
+Zamboni)
+- removed t/regex.t and documented that GraphViz::Regex may
+not work on various perls
+- added GraphViz::Regex_YAPE module, another way to graph
+a regular expression
+EOT
+
+[V 0.13]
+Date=2001-03-19T19:31:18
+Comments= <<EOT
+- removed 'use warnings' as suggested by David Adler so we
+no longer require Perl 5.6
+- moved all modules into a new 'lib' directory (and updated
+examples) so that Devel::GraphVizProf gets installed
+- new 'concentrate' graph attribute to merge edges in
+cluttered directed graphs
+- new 'random_start' graph attribute, which requests an
+initial random placement for the graph
+- new 'epsilon' graph attribute, which decides how long the
+graph solver tries before finding a graph layout, requested
+by Pierre-Yves Genot
+- an empty cluster now means not clustered
+- added GraphViz::Regex and example regexp.pl which visualises
+a regular expression
+- now an award-winning module!
+EOT
+
+[V 0.12]
+Date=2001-03-06T17:37:21
+Comments= <<EOT
+- fixed bug in redcarpet.pl example
+- new rankdir graph attribute, which controls the direction
+the nodes are linked together (patch by Mark Fowler)
+- new 'width' and 'height' graph attributes control the size
+of the bounding box of the drawing in inches, requested by
+Pierre-Yves Genot
+EOT
+
+[V 0.11]
+Date=2001-03-06T17:37:20
+Comments= <<EOT
+- rearranged module naming: Data::GraphViz ->
+GraphViz::Data::Dumper, Parse::RecDescent::GraphViz ->
+GraphViz::Parse::RecDescent, XML::GraphViz -> GraphViz::XML,
+- added GraphViz::Remote so that you do not need to install
+the graphviz tools to use this module
+EOT
+
+[V 0.10]
+Date=2001-03-05T17:32:14
+Comments= <<EOT
+- now allow simple add_edge({$from => $to}) syntax
+(idea by DJ Adams and Brian Ingerson)
+- much better documentation (especially on attributes)
+- new module Parse::RecDescent::GraphViz (and example) for
+graphing Parse::RecDescent grammars (idea by Damian Conway)
+- new module XML::GraphViz (and example) for graphing XML
+- new module Data::GraphViz (and example) for graphing data
+structures
+- new example ppmgraph.pl by Marcel Grunauer which graphs CPAN
+tarball dependencies using ActiveState's package list (thanks
+to Brian Ingerson too ;-)
+- new, better, testsuite
+- better quoting (especially in ports) to allow a greater range
+of characters
+- new undocumented (it may change) as_graph method, which
+returns a graph object with the coordinates of nodes and edges
+EOT
+
+[V 0.09]
+Date=2001-01-12T15:50:17
+Comments= <<EOT
+- moved back to "dot" and "neato" from "dotneato"
+- now allow directed and undirected graphs
+- added GraphViz::No and GraphViz::Small subclasses
+which aid in visualising the structure of large
+graphs
+EOT
+
+[V 0.08]
+Date=2000-12-03T15:15:29
+Comments=- minor patch to cope with DESTROY
+
+[V 0.07]
+Date=2000-10-01T15:19:55
+Comments= <<EOT
+- new features: allows clusters and ports
+- includes the talk I gave on this at yapc::Europe 19100
+- many more examples (well, see the examples directory!),
+including quite a few PNGs
+EOT
+
+[V 0.06]
+Date=2000-08-24T09:33:21
+Comments= <<EOT
+- better quoting of nodes and edges (they can now have
+really wierd names)
+- new examples directory with xref.pl: "graphing subroutine
+cross-reference reports for Perl modules" and example graph to
+see what kind of things it can do
+EOT
+
+[V 0.05]
+Date=2000-08-18T13:12:25
+Comments= <<EOT
+- now use dotneato to layout the graphs and can now ouput in a
+variety of file formats
+EOT
+
+[V 0.04]
+Date=2000-08-09T16:14:35
+Comments=- first released version
diff --git a/MANIFEST b/MANIFEST
index fa6ec58..6fef435 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,9 +1,6 @@
+Build.PL
+Changelog.ini
CHANGES
-MANIFEST
-Makefile.PL
-README
-examples/README
-examples/Yapp.output
examples/clusters.pl
examples/clusters2.pl
examples/directories.pl
@@ -16,10 +13,10 @@ examples/ppmgraph.pl
examples/primes.pl
examples/primes_aux.pl
examples/rank.pl
+examples/README
examples/recdescent.pl
examples/redcarpet.pl
examples/regex.pl
-examples/remote.pl
examples/simple.pl
examples/text.pl
examples/tmon.out
@@ -28,6 +25,7 @@ examples/xml.pl
examples/xref.pl
examples/xref_aux.pl
examples/yacc.pl
+examples/Yapp.output
examples/yapp.pl
lib/Devel/GraphVizProf.pm
lib/GraphViz.pm
@@ -39,8 +37,12 @@ lib/GraphViz/Parse/Yapp.pm
lib/GraphViz/Regex.pm
lib/GraphViz/Small.pm
lib/GraphViz/XML.pm
+Makefile.PL
+MANIFEST This list of files
+META.json
+META.yml
+README
t/dumper.t
t/foo.t
t/pod.t
t/simple.t
-META.yml Module meta-data (added by MakeMaker)
diff --git a/META.json b/META.json
new file mode 100644
index 0000000..687cd94
--- /dev/null
+++ b/META.json
@@ -0,0 +1,98 @@
+{
+ "abstract" : "Interface to AT&T's GraphViz. Deprecated. See GraphViz2",
+ "author" : [
+ "Leon Brocard <acme at astray.com>"
+ ],
+ "dynamic_config" : 1,
+ "generated_by" : "Module::Build version 0.4, CPAN::Meta::Converter version 2.120630",
+ "license" : [
+ "perl_5"
+ ],
+ "meta-spec" : {
+ "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+ "version" : "2"
+ },
+ "name" : "GraphViz",
+ "prereqs" : {
+ "build" : {
+ "requires" : {
+ "Test::More" : "0.47",
+ "Test::Pod" : "1.44"
+ }
+ },
+ "configure" : {
+ "requires" : {
+ "Module::Build" : "0.38"
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "Carp" : "1.01",
+ "Config" : "0",
+ "File::Which" : "1.09",
+ "Getopt::Long" : "2.34",
+ "IO::Dir" : "1.04",
+ "IO::File" : "1.1",
+ "IPC::Run" : "0.6",
+ "LWP::Simple" : "6",
+ "Parse::RecDescent" : "1.965001",
+ "Pod::Usage" : "1.16",
+ "Time::HiRes" : "1.51",
+ "XML::Twig" : "3.38",
+ "XML::XPath" : "1.13",
+ "strict" : "1.03",
+ "vars" : "1.01",
+ "warnings" : "1.03"
+ }
+ }
+ },
+ "provides" : {
+ "Devel::GraphVizProf" : {
+ "file" : "lib/Devel/GraphVizProf.pm",
+ "version" : "2.10"
+ },
+ "GraphViz" : {
+ "file" : "lib/GraphViz.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Data::Grapher" : {
+ "file" : "lib/GraphViz/Data/Grapher.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::No" : {
+ "file" : "lib/GraphViz/No.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Parse::RecDescent" : {
+ "file" : "lib/GraphViz/Parse/RecDescent.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Parse::Yacc" : {
+ "file" : "lib/GraphViz/Parse/Yacc.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Parse::Yapp" : {
+ "file" : "lib/GraphViz/Parse/Yapp.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Regex" : {
+ "file" : "lib/GraphViz/Regex.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::Small" : {
+ "file" : "lib/GraphViz/Small.pm",
+ "version" : "2.10"
+ },
+ "GraphViz::XML" : {
+ "file" : "lib/GraphViz/XML.pm",
+ "version" : "2.10"
+ }
+ },
+ "release_status" : "stable",
+ "resources" : {
+ "license" : [
+ "http://dev.perl.org/licenses/"
+ ]
+ },
+ "version" : "2.10"
+}
diff --git a/META.yml b/META.yml
index 0e826fd..c833db5 100644
--- a/META.yml
+++ b/META.yml
@@ -1,15 +1,67 @@
---- #YAML:1.0
-name: GraphViz
-version: 2.04
-abstract: Interface to the GraphViz graphing tool
-license: perl
-author:
- - Leon Brocard <acme at astray.com>
-generated_by: ExtUtils::MakeMaker version 6.44
-distribution_type: module
-requires:
- IPC::Run: 0.6
- Test::More: 0
+---
+abstract: "Interface to AT&T's GraphViz. Deprecated. See GraphViz2"
+author:
+ - 'Leon Brocard <acme at astray.com>'
+build_requires:
+ Test::More: 0.47
+ Test::Pod: 1.44
+configure_requires:
+ Module::Build: 0.38
+dynamic_config: 1
+generated_by: 'Module::Build version 0.4, CPAN::Meta::Converter version 2.120630'
+license: perl
meta-spec:
- url: http://module-build.sourceforge.net/META-spec-v1.3.html
- version: 1.3
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: 1.4
+name: GraphViz
+provides:
+ Devel::GraphVizProf:
+ file: lib/Devel/GraphVizProf.pm
+ version: 2.10
+ GraphViz:
+ file: lib/GraphViz.pm
+ version: 2.10
+ GraphViz::Data::Grapher:
+ file: lib/GraphViz/Data/Grapher.pm
+ version: 2.10
+ GraphViz::No:
+ file: lib/GraphViz/No.pm
+ version: 2.10
+ GraphViz::Parse::RecDescent:
+ file: lib/GraphViz/Parse/RecDescent.pm
+ version: 2.10
+ GraphViz::Parse::Yacc:
+ file: lib/GraphViz/Parse/Yacc.pm
+ version: 2.10
+ GraphViz::Parse::Yapp:
+ file: lib/GraphViz/Parse/Yapp.pm
+ version: 2.10
+ GraphViz::Regex:
+ file: lib/GraphViz/Regex.pm
+ version: 2.10
+ GraphViz::Small:
+ file: lib/GraphViz/Small.pm
+ version: 2.10
+ GraphViz::XML:
+ file: lib/GraphViz/XML.pm
+ version: 2.10
+requires:
+ Carp: 1.01
+ Config: 0
+ File::Which: 1.09
+ Getopt::Long: 2.34
+ IO::Dir: 1.04
+ IO::File: 1.1
+ IPC::Run: 0.6
+ LWP::Simple: 6
+ Parse::RecDescent: 1.965001
+ Pod::Usage: 1.16
+ Time::HiRes: 1.51
+ XML::Twig: 3.38
+ XML::XPath: 1.13
+ strict: 1.03
+ vars: 1.01
+ warnings: 1.03
+resources:
+ license: http://dev.perl.org/licenses/
+version: 2.10
diff --git a/Makefile.PL b/Makefile.PL
index b4615cc..7b82446 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,45 +1,47 @@
-#!perl
-use strict;
-use warnings;
use Config;
-use ExtUtils::MakeMaker;
-use File::Spec::Functions;
-print "Looking for dot... ";
-my $found = find("dot");
+use ExtUtils::MakeMaker;
-if ($found) {
- print "found it at $found\n";
-} else {
- print "didn't find it\n";
- die "****************************************************************
-GraphViz.pm has not been able to find the graphviz program 'dot'
-GraphViz.pm needs graphviz to function
-Please install graphviz first: http://www.graphviz.org/
-****************************************************************\n";
+if (open my $fh, '|dot', )
+{
+ close $fh;
+}
+else
+{
+ die "Please install Graphviz from http://www.graphviz.org/.\n";
}
-WriteMakefile(
- 'NAME' => 'GraphViz',
- 'VERSION_FROM' => 'lib/GraphViz.pm',
- 'LICENSE' => 'perl',
- 'AUTHOR' => 'Leon Brocard <acme at astray.com>',
- 'ABSTRACT' => 'Interface to the GraphViz graphing tool',
- 'PREREQ_PM' => {
- 'IPC::Run' => 0.6,
- 'Test::More' => 0,
- },
- 'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
+WriteMakefile
+(
+ NAME => 'GraphViz',
+ VERSION_FROM => 'lib/GraphViz.pm',
+ LICENSE => 'perl',
+ AUTHOR => 'Leon Brocard <acme at astray.com>',
+ ABSTRACT => "Interface to AT&T's GraphViz. Deprecated. See GraphViz2",
+ PREREQ_PM =>
+ {
+ Carp => 1.01,
+ Config => 0,
+ File::Which => 1.09,
+ Getopt::Long => 2.34,
+ IO::Dir => 1.04,
+ IO::File => 1.10,
+ IPC::Run => 0.6,
+ LWP::Simple => 6.00,
+ Parse::RecDescent => 1.965001,
+ Pod::Usage => 1.16,
+ strict => 1.03,
+ Test::More => 0.47,
+ Test::Pod => 1.44,
+ Time::HiRes => 1.51,
+ vars => 1.01,
+ warnings => 1.03,
+ XML::Twig => 3.38,
+ XML::XPath => 1.13,
+ },
+ dist =>
+ {
+ COMPRESS => 'gzip -9f',
+ SUFFIX => 'gz',
+ },
);
-
-sub find {
- my $binary = shift;
- my $path = join ', ', @ENV{PATH};
- my $path_sep = $Config{path_sep};
- my $exe_ext = $Config{exe_ext};
- foreach my $dir ( split $path_sep, @ENV{PATH} ) {
- my $filename = catfile( $dir, $binary );
- return $filename if -x "$filename$exe_ext";
- }
- return 0;
-}
diff --git a/README b/README
index ba2314d..a04b479 100644
--- a/README
+++ b/README
@@ -95,7 +95,7 @@ METHODS
my $g = GraphViz->new();
my $g = GraphViz->new(directed => 0);
my $g = GraphViz->new(layout => 'neato', ratio => 'compress');
- my $g = GraphViz->new(rankdir => 1);
+ my $g = GraphViz->new(rankdir => 'BT');
my $g = GraphViz->new(width => 8.5, height => 11);
my $g = GraphViz->new(width => 30, height => 20,
pagewidth => 8.5, pageheight => 11);
@@ -125,9 +125,9 @@ METHODS
undirected graphs (edges do not have arrows).
rankdir
- Another attribute 'rankdir' controls the direction the nodes are
- linked together. If true it will do left->right linking rather than
- the default up-down linking.
+ Another attribute 'rankdir' controls the direction in which the nodes are linked
+ together. The default is 'TB' (arrows from top to bottom). Other legal values
+ are 'BT' (bottom->top), 'LR' (left->right) and 'RL' (right->left).
width, height
The 'width' and 'height' attributes control the size of the bounding
diff --git a/examples/clusters2.pl b/examples/clusters2.pl
index 7ca90e6..4a8af15 100644
--- a/examples/clusters2.pl
+++ b/examples/clusters2.pl
@@ -1,6 +1,7 @@
-# perl -w
+#!perl -w
-use strict; use lib '.';
+use strict;
+use lib '.';
use GraphViz;
my $g = GraphViz->new();
diff --git a/examples/remote.pl b/examples/remote.pl
deleted file mode 100755
index 2b21cb5..0000000
--- a/examples/remote.pl
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/perl -w
-#
-# A dead simple example
-
-use strict;
-use lib '../lib';
-use GraphViz::Remote;
-
-my $g = GraphViz::Remote->new();
-
-$g->add_node('London');
-$g->add_node('Paris', label => 'City of\nlurve');
-$g->add_node('New York');
-
-$g->add_edge('London' => 'Paris');
-$g->add_edge('London' => 'New York', label => 'Far');
-$g->add_edge('Paris' => 'London');
-
-$g->as_png("remote.png");
-
-print $g->as_png();
diff --git a/lib/Devel/GraphVizProf.pm b/lib/Devel/GraphVizProf.pm
index dd6e489..41b9a91 100644
--- a/lib/Devel/GraphVizProf.pm
+++ b/lib/Devel/GraphVizProf.pm
@@ -1,11 +1,9 @@
package Devel::GraphVizProf; # To help the CPAN indexer to identify us
-$Devel::GraphVizProf::VERSION = '0.8';
+our $VERSION = '2.10';
package DB;
-require 5.000;
-
use Time::HiRes 'time';
use strict;
diff --git a/lib/GraphViz.pm b/lib/GraphViz.pm
index 549c1fd..1d70d5c 100644
--- a/lib/GraphViz.pm
+++ b/lib/GraphViz.pm
@@ -8,12 +8,11 @@ use Carp;
use Config;
use IPC::Run qw(run binary);
-# This is incremented every time there is a change to the API
-$VERSION = '2.04';
+our $VERSION = '2.10';
=head1 NAME
-GraphViz - Interface to the GraphViz graphing tool
+GraphViz - Interface to AT&T's GraphViz. Deprecated. See GraphViz2
=head1 SYNOPSIS
@@ -39,6 +38,32 @@ and undirected graphs in a variety of formats (PostScript, PNG, etc.) using the
"dot", "neato", "twopi", "circo" and "fdp" programs from the GraphViz project
(http://www.graphviz.org/ or http://www.research.att.com/sw/tools/graphviz/).
+GraphViz is deprecated in favour of L<GraphViz2>.
+
+=head2 Modules in this distro
+
+=over 4
+
+=item o GraphViz
+
+=item o GraphViz::No
+
+=item o GraphViz::Small
+
+=item o GraphViz::Regex
+
+=item o GraphViz::XML
+
+=item o GraphViz::Data::Grapher
+
+=item o GraphViz::Parse::RecDescent
+
+=item o GraphViz::Parse::Yacc
+
+=item o GraphViz::Parse::Yapp
+
+=back
+
=head2 What is a graph?
A (undirected) graph is a collection of nodes linked together with
@@ -122,7 +147,7 @@ This is the constructor. It accepts several attributes.
my $g = GraphViz->new();
my $g = GraphViz->new(directed => 0);
my $g = GraphViz->new(layout => 'neato', ratio => 'compress');
- my $g = GraphViz->new(rankdir => 1);
+ my $g = GraphViz->new(rankdir => 'BT');
my $g = GraphViz->new(width => 8.5, height => 11);
my $g = GraphViz->new(width => 30, height => 20,
pagewidth => 8.5, pageheight => 11);
@@ -134,7 +159,7 @@ The most two important attributes are 'layout' and 'directed'.
=item layout
The 'layout' attribute determines which layout algorithm GraphViz.pm will
-use. Possible values are:
+use. Possible values are:
=over
@@ -168,9 +193,9 @@ undirected graphs (edges do not have arrows).
=item rankdir
-Another attribute 'rankdir' controls the direction the nodes are linked
-together. If true it will do left->right linking rather than the
-default up-down linking.
+Another attribute 'rankdir' controls the direction in which the nodes are linked
+together. The default is 'TB' (arrows from top to bottom). Other legal values
+are 'BT' (bottom->top), 'LR' (left->right) and 'RL' (right->left).
=item width, height
@@ -187,13 +212,16 @@ page then the resulting PostScript image is a sequence of pages that
can be tiled or assembled into a mosaic of the full image. (This only
works for PostScript output).
-
=item concentrate
The 'concentrate' attribute controls enables an edge merging technique
to reduce clutter in dense layouts of directed graphs. The default is
not to merge edges.
+=item orientation
+
+This option controls the angle, in degrees, used to rotate polygon node shapes.
+
=item random_start
For undirected graphs, the 'random_start' attribute requests an
@@ -220,13 +248,13 @@ Determines if and how node overlaps should be removed.
=item true
-(the default) overlaps are retained.
+(the default) overlaps are retained.
=item scale
-overlaps are removed by uniformly scaling in x and y.
+overlaps are removed by uniformly scaling in x and y.
-=item false
+=item false
If the value converts to "false", node overlaps are removed by a Voronoi-based technique.
@@ -241,7 +269,7 @@ constraint problems, one for the x axis and one for the y. The suffix indicates
which axis is processed first.
B<NOTE>: The methods related to "orthoxy" and "orthoyx" are still evolving. The
-semantics of these may change, or these methods may disappear altogether.
+semantics of these may change, or these methods may disappear altogether.
=item compress
@@ -303,7 +331,7 @@ If ratio = C<auto> the page attribute is set and the graph cannot be drawn on a
single page, then size is set to an ``ideal'' value. In particular, the size in
a given dimension will be the smallest integral multiple of the page size in
that dimension which is at least half the current size. The two dimensions are
-then scaled independently to the new size. This feature only works in dot.
+then scaled independently to the new size. This feature only works in dot.
=back
@@ -386,6 +414,9 @@ sub new {
$self->{CONCENTRATE} = $config->{concentrate}
if ( exists $config->{concentrate} );
+ $self->{ORIENTATION} = $config->{orientation}
+ if ( exists $config->{orientation} );
+
$self->{RANDOM_START} = $config->{random_start}
if ( exists $config->{random_start} );
@@ -1016,7 +1047,12 @@ sub _as_debug {
$dot .= $graph_type . " " . $self->{NAME} . " {\n";
# the direction of the graph
- $dot .= "\trankdir=LR;\n" if $self->{RANK_DIR};
+ if ($self->{RANK_DIR}) {
+ $self->{RANK_DIR} = uc $self->{RANK_DIR};
+ my(%valid) = (BT => 1, LR => 1, RL => 1, TB => 1);
+ $self->{RANK_DIR} = 'LR' if (! $valid{$self->{RANK_DIR} });
+ $dot .= "\trankdir=" . $self->{RANK_DIR} . ";\n";
+ }
# the size of the graph
$dot .= "\tsize=\"" . $self->{WIDTH} . "," . $self->{HEIGHT} . "\";\n"
@@ -1033,6 +1069,9 @@ sub _as_debug {
# edge merging
$dot .= "\tconcentrate=true;\n" if $self->{CONCENTRATE};
+ # Orientation
+ $dot .= "\torientation=$self->{ORIENTATION};\n" if $self->{ORIENTATION};
+
# epsilon
$dot .= "\tepsilon=" . $self->{EPSILON} . ";\n" if $self->{EPSILON};
@@ -1264,11 +1303,17 @@ syntax, please.
=head1 SEE ALSO
-GraphViz::XML, GraphViz::Regex
+GraphViz is deprecated in favour of L<GraphViz2>.
+
+=head1 Machine-Readable Change Log
+
+The file CHANGES was converted into Changelog.ini by L<Module::Metadata::Changes>.
=head1 AUTHOR
-Leon Brocard E<lt>F<acme at astray.com>E<gt>
+Leon Brocard: E<lt>F<acme at astray.com>E<gt>.
+
+Current maintainer: Ron Savage I<E<lt>ron at savage.net.auE<gt>>.
=head1 COPYRIGHT
diff --git a/lib/GraphViz/Data/Grapher.pm b/lib/GraphViz/Data/Grapher.pm
index 01724f6..1acf2bc 100755
--- a/lib/GraphViz/Data/Grapher.pm
+++ b/lib/GraphViz/Data/Grapher.pm
@@ -8,8 +8,7 @@ use lib '../..';
use lib '..';
use GraphViz;
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
+our $VERSION = '2.10';
=head1 NAME
diff --git a/lib/GraphViz/No.pm b/lib/GraphViz/No.pm
index a0f026c..26f57fe 100644
--- a/lib/GraphViz/No.pm
+++ b/lib/GraphViz/No.pm
@@ -5,11 +5,10 @@ use warnings;
use GraphViz;
use vars qw($VERSION @ISA);
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
-
@ISA = qw(GraphViz);
+our $VERSION = '2.10';
+
=head1 NAME
GraphViz::No - subclass of GraphViz with no nodes
diff --git a/lib/GraphViz/Parse/RecDescent.pm b/lib/GraphViz/Parse/RecDescent.pm
index b38119f..3a2d237 100755
--- a/lib/GraphViz/Parse/RecDescent.pm
+++ b/lib/GraphViz/Parse/RecDescent.pm
@@ -9,8 +9,7 @@ use lib '..';
use GraphViz;
use Parse::RecDescent;
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
+our $VERSION = '2.10';
=head1 NAME
diff --git a/lib/GraphViz/Parse/Yacc.pm b/lib/GraphViz/Parse/Yacc.pm
index 3917dd1..5485563 100755
--- a/lib/GraphViz/Parse/Yacc.pm
+++ b/lib/GraphViz/Parse/Yacc.pm
@@ -8,8 +8,7 @@ use lib '../..';
use lib '..';
use GraphViz;
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
+our $VERSION = '2.10';
=head1 NAME
diff --git a/lib/GraphViz/Parse/Yapp.pm b/lib/GraphViz/Parse/Yapp.pm
index ad626cf..465e853 100755
--- a/lib/GraphViz/Parse/Yapp.pm
+++ b/lib/GraphViz/Parse/Yapp.pm
@@ -8,8 +8,7 @@ use lib '../..';
use lib '..';
use GraphViz;
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
+our $VERSION = '2.10';
=head1 NAME
diff --git a/lib/GraphViz/Regex.pm b/lib/GraphViz/Regex.pm
index ed0fecf..3c26271 100644
--- a/lib/GraphViz/Regex.pm
+++ b/lib/GraphViz/Regex.pm
@@ -12,8 +12,7 @@ use IPC::Run qw(run);
# See perldebguts
-# This is incremented every time there is a change to the API
-$VERSION = '0.02';
+our $VERSION = '2.10';
my $DEBUG = 0; # whether debugging statements are shown
@@ -102,7 +101,7 @@ sub _init {
# die "Crap" unless $compiled;
- my $g = GraphViz->new( rankdir => 1 );
+ my $g = GraphViz->new( rankdir => 'LR' );
my %states;
my %following;
diff --git a/lib/GraphViz/Small.pm b/lib/GraphViz/Small.pm
index f09cd95..71fff51 100644
--- a/lib/GraphViz/Small.pm
+++ b/lib/GraphViz/Small.pm
@@ -5,11 +5,10 @@ use warnings;
use GraphViz;
use vars qw($VERSION @ISA);
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
-
@ISA = qw(GraphViz);
+our $VERSION = '2.10';
+
=head1 NAME
GraphViz::Small - subclass of GraphViz with small nodes
diff --git a/lib/GraphViz/XML.pm b/lib/GraphViz/XML.pm
index ad6feea..a190d6a 100644
--- a/lib/GraphViz/XML.pm
+++ b/lib/GraphViz/XML.pm
@@ -8,8 +8,7 @@ use lib '..';
use GraphViz;
use XML::Twig;
-# This is incremented every time there is a change to the API
-$VERSION = '0.01';
+our $VERSION = '2.10';
=head1 NAME
diff --git a/t/simple.t b/t/simple.t
index 302943e..d6ed7fd 100755
--- a/t/simple.t
+++ b/t/simple.t
@@ -51,7 +51,7 @@ graph test {
}
-- test --
-$g = GraphViz->new(rankdir => 1)
+$g = GraphViz->new(rankdir => 'LR')
-- expect --
digraph test {
rankdir=LR;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libgraphviz-perl.git
More information about the Pkg-perl-cvs-commits
mailing list