44 Commits

Author SHA1 Message Date
Sebastian Kalinowski
c6fa1de4bb Back to development: 1.0.1 2015-02-28 09:38:19 +01:00
Sebastian Kalinowski
9692b5394a Preparing release 1.0.0 1.0.0 2015-02-26 11:26:38 +01:00
Sebastian Kalinowski
7f00068c5f Back to development: 1.0.0 2015-02-26 11:26:24 +01:00
Sebastian Kalinowski
9deb271384 Added MANIFEST.in 2015-02-26 11:19:48 +01:00
Sebastian Kalinowski
b15ede7861 prepare for first release 2015-02-26 11:09:07 +01:00
Sebastian Kalinowski
30a17f88e2 Skip tests that fail because of checksum fail 2015-02-26 10:23:39 +01:00
Sebastian Kalinowski
e6c8c519ce Set test files path dynamically 2015-02-26 10:22:59 +01:00
Sebastian Kalinowski
336739f29d Renamed test file to enble autodiscover 2015-02-26 10:05:03 +01:00
Sebastian Kalinowski
03efd551c5 Added tox conf and disabled pep8 2015-02-26 10:00:53 +01:00
Sebastian Kalinowski
cbe9d2a992 Add build status image 2015-02-25 21:58:37 +01:00
Sebastian Kalinowski
22174b2204 Renamaed README -> README.rst 2015-02-25 21:54:42 +01:00
Sebastian Kalinowski
a37cf8779d Added Travis conf & empty tox.ini 2015-02-25 21:21:45 +01:00
Sebastian Kalinowski
681c3939ec Renamed pydot to pydot-ng 2015-02-25 19:58:39 +01:00
Lance Hepler
adf18a858a Merge pull request #8 from gustavla/master
Fixes syntax error in older versions of graphviz.
2014-07-30 21:07:55 -07:00
Gustav Larsson
13686776b9 Fixes syntax error in older versions of graphviz.
Older versions of graphviz (tested on version 2.26.3 (20100126.1600))
complains when an attribute is empty without quotes. [label=] fails but
[label=""] works, so the quote_if_necessary function has been updated to
accommodate this.
2014-07-30 18:25:42 -05:00
Lance Hepler
875bbfd89c Merge pull request #7 from graingert/patch-1
add pyparsing dep
2014-06-20 20:16:50 -07:00
Thomas Grainger
ba5d32bcc2 fix install_requires format 2014-06-02 11:43:15 +01:00
Thomas Grainger
83cabc4ce2 add pyparsing dep 2014-06-02 11:42:01 +01:00
Lance Hepler
e4311a3590 Merge pull request #4 from chebee7i/syntaxerror
Fix syntax error in Python 3: u'' -> ''. Also add .gitignore.
2013-09-09 12:06:14 -07:00
Lance Hepler
8d9ed45a15 Merge pull request #5 from chebee7i/pydotwrite
Allow Dot.write() to work with file-like objects as well.
2013-09-09 12:05:25 -07:00
chebee7i
e53dc722fb Allow Dot.write() to work with file-like objects as well. 2013-09-09 12:58:06 -05:00
chebee7i
2a03630c0a Fix syntax error in Python 3: u'' -> ''. Also add .gitignore. 2013-09-09 12:55:54 -05:00
Lance Hepler
9be233d50f modularize into a directory, hide dot_parser, and flake8 everything 2013-07-29 04:05:52 -07:00
Lance Hepler
687eb7e18c py2/3 compatibility 2013-07-26 03:06:12 -07:00
Lance Hepler
4504fce247 remove unnecessary whitespace 2013-07-26 00:15:57 -07:00
Ero Carrera
9875c08935 -Fixed issue 52. Improved handling of BOM-less UTF-8 encoded files.
git-svn-id: http://pydot.googlecode.com/svn/trunk@28 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2012-01-02 23:24:38 +00:00
Ero Carrera
9999c00c26 -Fixed issue 52. Improved handling of BOM-less UTF-8 encoded files.
-Fixed issue 55 regarding unicode handling.
-Fixed issue 50 where an ending colon in a node name was understood as a port separator. Colons as the last character of node names will be left as-is.
-Issue 59 (and duplicate issue 62): Program arguments are mishandled in Dot.create - Patch merged.
-Fixed issue 49, handling of quotes in unicode html-labels.
-Fixed issue 60. Added an additional check in __get_attribute__ to not assume the parent graph is always retrievable.
-Fixed issue 61. Graph names will be adequately quoted when necessary.

git-svn-id: http://pydot.googlecode.com/svn/trunk@27 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2012-01-02 23:21:31 +00:00
Ero Carrera
ef97949461 -Improved the message raised by TypeErrors
-Added information in create()'s docstring about optional command-line arguments and how to provide them

git-svn-id: http://pydot.googlecode.com/svn/trunk@25 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2011-04-10 15:39:01 +00:00
Ero Carrera
e4e03aeadd -Improved parsing of DOT files where a subgraph was given inline as the source or destination of an edge. Still, it won't be listed in the list of subgraphs because doing so implies a different treatment that won't represent the file correctly. When an element is added to one of the lists it starts existing explicitly and the layout might be different. Elements defined inline, without a previous declaration, behave differently and to mirror the behavior of GraphViz it's simpler to not add them to the list of elements in the graph.
-If arguments need to be specified for 'dot', 'neato' and rest of graph layout engines they can now be passed to the create() and create_*() family of functions. If a string is passed it's expected to be simply the name of the program. If a list is passed it's assumed to contain strings, the name of the layout engine as the first element, followed by any optional arguments that will be later appended to the command line.

git-svn-id: http://pydot.googlecode.com/svn/trunk@24 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2011-04-10 15:10:45 +00:00
Ero Carrera
4f5ec786a9 Adding revision number to the version string. There'll be a bit of a jump in the minor version number but now it'll be automatically kept up-to-date by Subversion
git-svn-id: http://pydot.googlecode.com/svn/trunk@23 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2011-03-03 15:47:24 +00:00
Ero Carrera
ec92de3a5a Fixed Issue 46
git-svn-id: http://pydot.googlecode.com/svn/trunk@22 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2011-03-03 11:55:20 +00:00
Ero Carrera
9c0c48c434 Changed the order of loading the package setup utilities
git-svn-id: http://pydot.googlecode.com/svn/trunk@21 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-12-31 16:18:32 +00:00
Ero Carrera
839fae8491 Updated version to 1.0.4
git-svn-id: http://pydot.googlecode.com/svn/trunk@19 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-12-31 15:55:39 +00:00
Ero Carrera
b59b4d0169 Merged fixes by Nelson Elhage
- The "id_re_with_port" regex was too lax, and let through many illegal strings just because they contained colons. Fix it to require that both the ID and port component be independently safe.
- Even when the code detected that a string needed quoting, ", \n, and \r were left alone inside the double quotes, which is illegal. Replace them with appropriately escaped versions.

We also add a test that pydot is correctly able to quote Python's "string.printable" string, which exercises both of the above cases.

git-svn-id: http://pydot.googlecode.com/svn/trunk@18 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-12-31 15:51:12 +00:00
Ero Carrera
8f6e324d32 Added testing script and test data
git-svn-id: http://pydot.googlecode.com/svn/trunk@14 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-11-06 21:06:28 +00:00
Ero Carrera
b26ac91bca Fixed issue 42. Graphviz's executable "sfdp" has been included in the list of executables to search for and will now be found if available.
git-svn-id: http://pydot.googlecode.com/svn/trunk@13 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-11-06 20:45:35 +00:00
Ero Carrera
af70b334cf -Updated main docstring
git-svn-id: http://pydot.googlecode.com/svn/trunk@12 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-11-01 23:30:34 +00:00
Ero Carrera
ac2adfe1d4 -Fixed setup.py script to not include the dot-underscore files in OSX (the resource fork) when building the tar.gz for distribution
git-svn-id: http://pydot.googlecode.com/svn/trunk@11 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-11-01 23:24:32 +00:00
Ero Carrera
0afd5e81b9 dot_parser.py:
-Improved the parsing of attributes with no explicit value but implicit defaults
-Improved handling of subgraphs
-Improved handling of whitespace within HTML node names/labels

pydot.py:
-Updated Graph, Cluster, Subgraph, Node and Edge attributes to reflect the latest GraphViz version (2.26.3)
-Improved the parsing of attributes with no explicit value but implicit defaults
-Improved handling of boolean attributes
-Fixed issue 17, 12
-Fixed issues 19, 29, 35, 37 finding the Graphviz binary in Windows 
-Added method del_node() to delete Nodes from the graph
-Added method del_edges() to delete Edges from the graph
-get_node() will now always return a list of nodes
-get_edge() will now always return a list of edges
-get_subgraph() will now always return a list of edges
-Other minor improvements

git-svn-id: http://pydot.googlecode.com/svn/trunk@10 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2010-11-01 23:15:16 +00:00
Ero Carrera
73906aa58f Commiting pydot 1.0.2
-The parser has been improved a lot. It passes all of GraphViz's regression tests (which I consider quite an accomplishment seeing the kind of crazy constructs on those )
-Different charsets should now be dealt with properly.
-The search of GraphViz's executables has been improved for all platforms. On Windows, paths and registry keys are searched. On Unix now it should exhibit the same behavior as the traditional shell path search. (Thanks Andy Gimblett and many others)
-Double-quoted paths in Windows are nor properly handled. The os.path.exists() check fails if a valid path is enclosed within quotes.
-'type' keyword has been changed everywhere to 'graph_type'
-Better handling of Node/Edge/Graph defaults. Added methods: set_graph_defaults, set_node_defaults, set_edge_defaults, get_graph_defaults, get_node_defaults, get_edge_defaults
-Now it's possible to use rank to lay out nodes at the same level

    graph = pydot.Dot('graphname', graph_type='digraph')
    subg = pydot.Subgraph('', rank='same')
    subg.add_node(pydot.Node('a'))
    graph.add_subgraph(subg)
    subg.add_node(pydot.Node('b'))
    subg.add_node(pydot.Node('c'))

-Multiple main graphs in a file are now supported, will be returned as a list of graph instances
-Handling of shapefiles Dot().set_shape_files()
-Added method "add_style()" to the Node class to easily append styles to a node
-Attribute lists updated to reflect the available ones in graphviz 2.16
-Added error reporting when rendering graphs with GraphViz executables. There was an often reported problem where the output graphs would have 0 size. In most cases this was due to Graphviz missing a library for a format that pydot assumed to be there. Now the error given by the executable will be reported instead of being silently ignored (Thanks Jarno)
-Improved parsing of identifiers
-Added non-GraphViz attributes needed by dot2tex
-Jose Fonseca contributed a fix dealing with quoted strings the the dot parsing module
-setup.py updated so that it's possible to install pydot through Setuptools' easy_install
-Edge()'s can be created passing two Node objects as well as, the previously supported, two strings with node names. Warning: when passing two Node instances, the attributes won't be taken into account. The edge will only read the Nodes' names to create an edge, the Nodes must be separately added to the graph so all their attributes are "remembered".
-Substituted all str()'s for unicode()'s
-It's possible now to manually specify the path to GraphViz's executables in the case they can't be found automatically. The method 'set_graphviz_executables(paths)' will take a dictionary specifying the location of the executables. Please refer to the documentation for usage detailed information.
-And too many bugfixes to list...




git-svn-id: http://pydot.googlecode.com/svn/trunk@8 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2008-02-14 22:31:48 +00:00
Ero Carrera
6764361cd9 Added the license and changelog files
git-svn-id: http://pydot.googlecode.com/svn/trunk@4 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2007-07-11 21:38:58 +00:00
Ero Carrera
8de371e941 Updated copyright date
git-svn-id: http://pydot.googlecode.com/svn/trunk@3 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2007-07-09 23:17:27 +00:00
Ero Carrera
ab4cd5ddf0 Initial Import
git-svn-id: http://pydot.googlecode.com/svn/trunk@2 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2007-07-09 22:27:24 +00:00
Ero Carrera
00b0eac19c Initial directory structure.
git-svn-id: http://pydot.googlecode.com/svn/trunk@1 06aa9b79-7134-0410-ae7e-c1cd3e483e87
2007-07-04 15:11:23 +00:00