@@ -4,7 +4,50 @@ This file is a manually maintained list of changes for each release. Feel free
44to add your changes here when sending pull requests. Also send corrections if
55you spot any mistakes.
66
7- ## 0.7.0 (2013-xx-xx)
7+ ## 0.8.0 (2013-xx-xx)
8+
9+ * BC break: Rename ` Algorithm\Directed::isDirected() ` to remove its ambiguity
10+ in regards to mixed and/or empty graphs
11+ ([ #80 ] ( https://github.com/clue/graph/issues/80 ) )
12+
13+ | Old name | New name |
14+ | ---| ---|
15+ | ` Algorithm\Directed::isDirected() ` | ` Algorithm\Directed::hasDirected() ` |
16+
17+ * Feature:: Add new ` Algorithm\Directed::hasUndirected() ` and
18+ ` Algorithm\Directed::isMixed() ` in order to complement the renamed
19+ ` Algorithm\Directed::hasDirected() `
20+ ([ #80 ] ( https://github.com/clue/graph/issues/80 ) )
21+
22+ * BC break: ` Walk::factoryCycleFromVertices() ` no longer tries to auto-complete
23+ a cycle if the first vertex does not match the last one, but now throws an
24+ ` InvalidArgumentException ` instead ([ #87 ] ( https://github.com/clue/graph/issues/87 )
25+
26+ * Feature: Support loop ` Walk ` s, i.e. a walk with only a single edge from
27+ vertex A back to A ([ #87 ] ( https://github.com/clue/graph/issues/87 )
28+
29+ * Fix: Stricter checks for invalid cycles, such as one with an invalid
30+ predecessor-map or no edges at all ([ #87 ] ( https://github.com/clue/graph/issues/87 )
31+
32+ * Fix: The ` Algorithm\ShortestPath\MooreBellmanFord ` now also works for unweighted
33+ edges. This also fixes an issue where ` Algorithm\DetectNegativeCycle ` didn't work
34+ for unweighted edges. ([ #81 ] ( https://github.com/clue/graph/issues/81 )
35+
36+ * Fix: Throwing an ` UnexpectedValueException ` if writing GraphViz Dot script
37+ to a temporary file fails and remove its debugging output
38+ ([ #77 ] ( https://github.com/clue/graph/issues/77 ) and [ #78 ] ( https://github.com/clue/graph/issues/78 ) @Metabor )
39+
40+ * BC break: Remove unneeded alias definitions of ` getVertexFirst() ` ,
41+ ` getVertexSource() ` and ` getVertexTarget() `
42+ [ #76 ] https://github.com/clue/graph/issues/76 )):
43+
44+ | Old name | New name |
45+ | ---| ---|
46+ | ` Graph::getVertexFirst() ` | ` Graph::getVertices()->getVertexFirst() ` |
47+ | ` Walk::getVertexSource() ` | ` Walk::getVertices()->getVertexFirst() ` |
48+ | ` Walk::getVertexTarget() ` | ` Walk::getVertices()->getVertexLast() ` |
49+
50+ ## 0.7.0 (2013-09-11)
851
952* Feature: Add new ` Set\Vertices ` and ` Set\Edges ` classes that handle common
1053 operations on a Set of multiple ` Vertex ` and ` Edge ` instances respectively.
@@ -75,6 +118,20 @@ you spot any mistakes.
75118 accordingly.
76119 ([ #72 ] ( https://github.com/clue/graph/issues/72 ) )
77120
121+ * BC break: Remove all occurances of ` getNumberOfVertices() ` and
122+ ` getNumberOfEdges() ` ([ #75 ] ( https://github.com/clue/graph/issues/75 ) and
123+ [ #48 ] ( https://github.com/clue/graph/issues/48 ) ):
124+
125+ | Old name | New name |
126+ | ---| ---|
127+ | ` $set->getNumberOfVertices() ` | ` count($set->getVertices()) ` |
128+ | ` $set->getNumberOfEdges() ` | ` count($set->getEdges()) ` |
129+
130+ * BC break: Replace base ` Set ` class with ` Set\DualAggregate ` interface. This
131+ is unlikely to affect you, but might potentially break your custom
132+ inheritance or polymorphism for algorithms.
133+ ([ #75 ] ( https://github.com/clue/graph/issues/75 ) )
134+
78135* Feature: Add ` Algorithm\ShortestPath\Base::hasVertex(Vertex $vertex) ` to check whether
79136 a path to the given Vertex exists ([ #62 ] ( https://github.com/clue/graph/issues/62 ) ).
80137
0 commit comments