1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263
|
.. -*- coding: utf-8 -*-
News
====
pygraphviz-1.12
---------------
Release date: TBD
- Drop Python 3.8 (SPEC 0)
pygraphviz-1.11
---------------
Release date: 1 June 2023
- Update to SWIG 4.1.1
- Require Graphviz 2.46+
- Fix passthrough of graph attributes when copying
- Update install instructions
pygraphviz-1.10
---------------
Release date: 19 August 2022
- Add Python 3.11 support
- Fix gvRenderData bytes output
- Fix FILE* resource leak in agread() wrapper
- Close all references to fname before calling unlink(fname)
pygraphviz-1.9
--------------
Release date: 9 February 2022
- Drop Python 3.7 support
- Add Python 3.10 support
- Add osage and patchwork to progs list
- Add IPython rich display hook to AGraph class
- Add contributor guide
- Fixed directed nature of AGraph.copy()
- Minor documentation and code fixes
pygraphviz-1.8
--------------
Release date: 20 January 2022
This release was pulled because the install was broken with pip 22 and python 3.7.
pygraphviz-1.7
--------------
Release date: 1 February 2021
- Drop Python 3.6 support
- Add Python 3.9 support
- Require Graphviz 2.42+, (Graphviz 2.46+ recommended)
- Improve installation process and documentation
- Switch from nose to pytest
- Remove old Python 2 code
- AGraph.eq includes attribute comparison (PR #246)
pygraphviz-1.6
--------------
Release date: 05 September 2020
- Add Python 3.8 support
- Drop Python 2.7 support
- Update to SWIG 4.0.1
pygraphviz-1.5
--------------
Release date: 10 September 2018
- Python 3.7 support
pygraphviz-1.3.1
----------------
Release date: 6 September 2015
- Update manifest to include missing files
pygraphviz-1.3
--------------
Release date: 5 September 2015
- Python 3 support
- Encoding bugfixes
https://github.com/pygraphviz/pygraphviz/issues?q=milestone%3Apygraphivz-1.3+is%3Aclosed
pygraphviz-1.2
-----------------
Release date: 3 August 2013
- Quote Graphviz program names to work with space (Windows fix)
- Keep name in reverse()
pygraphviz-1.1
-----------------
Release date: 9 February 2011
- Added unicode support for handling non-ASCII characters
- Better handling of user data on initialization of AGraph() object
to guess input type (AGraph object, file, dict-of-dicts, file)
- Add sfdp to layout options
Pygraphviz-1.1 adds unicode (graphviz charset) support.
The default Node type is now unicode.
See examples/utf8.py for an example of how to use non-ASCII characters.
The __str__ and __repr__ methods have been rewritten and a __unicode__
method added.
If G is a pygraphviz.AGraph object then
- str(G) produces a dot-format string representation
(some characters might not be represented correctly)
- unicode(G) produces a dot-format unicode representation
- repr(G) produces a string of the unicode representation.
- print G produces a formatted dot language output
pygraphviz-1.0.0
-----------------
Release date: 30 July 2010
- Added to_string() and from_string methods
- Interface to graphviz "acyclic" and "tred"
- Better handling of user data on initialization of AGraph() object
to guess input type (AGraph object, file, dict-of-dicts, file)
- Add handling of default attributes for subgraphs
- Improved error handling when using non-string data
- Fix bug in default attribute handling
- Make sure file handles are closed correctly
pygraphviz-0.99.1
-----------------
Release date: 7 December 2008
- Use Graphviz libcgraph instead of deprecated libagraph
- More closely match API to NetworkX
- edges() now produces two-tuples or three tuples if edges(keys=True)
- Edge and Node objects now have .name and .handle properties
- Warn without throwing exceptions for Graphviz errors
- Graph now has .strict and .directed properties
- Cleared up fontsize warnings in examples
pygraphviz-0.99
---------------
Release date: 18 November 2008
pygraphviz-0.37
---------------
Release date: 17 August 2008
- Handle default attributes for subgraphs
- Buggy attribute assignment fixed by Graphviz team (use Graphviz>2.17.20080127)
- Encode all stings as UTF-8 as default
- Fix AGraph.clear() memory leak and attempt to address slow deletion
of nodes and edges
- Allow pdf output and support all available output types on a given platform
- Fix number_of_edges() to use gv.agnedges to correctly report edges for
graphs with self loops
pygraphviz-0.36
---------------
Release date: 13 January 2008
- Automatic handling of types on init of AGraph(data): data can be
a filename, string in dot format, dictionary-of-dictionaries,
or a SWIG AGraph pointer.
- Add interface to Graphviz programs acyclic and tred
- Refactor process handling to allow easier access to Graphviz layout
and graph processing programs
- to_string() and from_string() methods
- Handle multiple anonymous edges correctly
- Attribute handling on add_node, add_edge and init of AGraph.
So you can e.g. A=AGraph(ranksep='0.1'); A.add_node('a',color='red')
A.add_edge('a','b',color='blue')
pygraphviz-0.35
---------------
Release date: 22 July 2007
- Rebuilt SWIG wrappers - works correctly now on 64 bit machines/python2.5
- Implement Graphviz subgraph functionality
- Better error reporting when attempting to set attributes, avoid
segfault when using None
- pkg-config handling now works in more configurations (hopefully all)
pygraphviz-0.34
---------------
Release date: 11 April 2007
- run "python setup_egg.py test" for tests if you have setuptools
- added tests for layout code
- use pkg-config for finding graphviz (dotneato-config still works
for older graphviz versions)
- use threads and temporary files for multiplatform nonblocking IO
- django example
pygraphviz-0.33
---------------
- Workaround for "nop" bug in graphviz-2.8, improved packaging,
updated swig wrapper, better error handling.
pygraphviz-0.32
---------------
The release pygraphviz-0.32 is the second rewrite of the original project.
It has improved attribute handling and drawing capabilities.
It is not backward compatible with earlier versions.
This version now inter-operates with many of the NetworkX
algorithms and graph generators.
pygraphviz-0.32 is a rewrite of pygraphviz-0.2x with some significant
changes in the API and Graphviz wrapper. It is not compatible with
with earlier versions.
The goal of pygraphviz is to provide a (mostly) Pythonic interface
to the Graphviz Agraph data-structure, layout, and drawing algorithms.
The API is now similar to the NetworkX API. Studying the
documentation and Tutorial for NetworkX will teach you most of what
you need to know for pygraphviz. For a short introduction on pygraphviz
see the pygraphviz Tutorial.
There are some important differences between the PyGraphviz
and NetworkX API. With PyGraphviz
- All nodes must be of string or unicode type.
An attempt will be made to convert other types to a string.
- Nodes and edges are custom Python objects. Nodes are like
unicode/string objects and edges are like tuple objects. (In NetworkX
nodes can be anything and edges are two- or three-tuples.)
- Graphs, edges, and nodes may have attributes such as color,
size, shape, attached to them. If the attributes are known
Graphviz attributes they will be used for drawing and layout.
- The layout() and draw() methods allow positioning of nodes
and rendering in all of the supported Graphviz output formats.
- The string() method produces a string with the graph represented
in Graphviz dot format. See also from_string().
- The subgraph() method is the Graphviz representation of
subgraphs: a tree of graphs under the original
(root) graph. The are primarily used for clustering of nodes when
drawing with dot.
Pygraphviz supports most of the Graphviz API.
|