Skip to content

Releases: dominikbraun/graph

v0.9.0

17 Aug 19:47
Compare
Choose a tag to compare

Added

  • Added the Graph.AddVertex method for adding a vertex. This replaces Graph.Vertex.
  • Added the Graph.AddEdge method for creating an edge. This replaces Graph.Edge.
  • Added the Graph.Vertex method for retrieving a vertex by its hash. This is not to be confused with the old Graph.Vertex function for adding vertices that got replaced with Graph.AddVertex.
  • Added the Graph.Edge method for retrieving an edge. This is not to be confused with the old Graph.Edge function for creating an edge that got replaced with Graph.AddEdge.
  • Added the Graph.Predecessors function for retrieving a vertex' predecessors.
  • Added the DFS function.
  • Added the BFS function.
  • Added the CreatesCycle function.
  • Added the StronglyConnectedComponents function.
  • Added the ShortestPath function.
  • Added the ErrEdgeNotFound error indicating that a desired edge could not be found.

Removed

  • Removed the Graph.EdgeByHashes method. Use Graph.AddEdge instead.
  • Removed the Graph.GetEdgeByHashes method. Use Graph.Edge instead.
  • Removed the Graph.DegreeByHash method. Use Graph.Degree instead.
  • Removed the Graph.Degree method.
  • Removed the Graph.DFS and Graph.DFSByHash methods. Use DFS instead.
  • Removed the Graph.BFS and Graph.BFSByHash methods. Use BFS instead.
  • Removed the Graph.CreatesCycle and Graph.CreatesCycleByHashes methods. Use CreatesCycle instead.
  • Removed the Graph.StronglyConnectedComponents method. Use StronglyConnectedComponents instead.
  • Removed the Graph.ShortestPath and Graph.ShortestPathByHash methods. Use ShortestPath instead.

v0.8.0

01 Aug 12:07
Compare
Choose a tag to compare

Added

  • Added the EdgeWeight and EdgeAttribute functional options.
  • Added the Properties field to Edge.

Changed

  • Changed Edge to accept a variadic options parameter.
  • Changed EdgeByHashes to accept a variadic options parameter.
  • Renamed draw.Graph to draw.DOT for more clarity regarding the rendering format.

Removed

  • Removed the WeightedEdge function. Use Edge with the EdgeWeight functional option instead.
  • Removed the WeightedEdgeByHashes function. Use EdgeByHashes with the EdgeWeight functional option instead.

Fixed

  • Fixed missing edge attributes when drawing a graph using draw.DOT.

v0.7.0

26 Jul 06:56
Compare
Choose a tag to compare

Added

  • Added draw package for graph visualization using DOT-compatible renderers.
  • Added Traits function for retrieving the graph's traits.

v0.6.0

22 Jul 09:46
Compare
Choose a tag to compare

[0.6.0] - 2020-07-22

Added

  • Added AdjacencyMap function for retrieving an adjancency map for all vertices.

Removed

  • Removed the AdjacencyList function.

v0.5.0

21 Jul 18:25
Compare
Choose a tag to compare

Added

  • Added AdjacencyList function for retrieving an adjacency list for all vertices.

Changed

  • Updated the examples in the documentation.

v0.4.0

01 Jul 09:01
Compare
Choose a tag to compare

Added

  • Added ShortestPath function for computing shortest paths.

Changed

  • Changed the term "properties" to "traits" in the code and documentation.
  • Don't traverse all vertices in disconnected graphs by design.

v0.3.0

27 Jun 21:46
Compare
Choose a tag to compare

Added

  • Added StronglyConnectedComponents function for detecting SCCs.
  • Added various images to usage examples.

v0.2.0

20 Jun 16:45
Compare
Choose a tag to compare

Added

  • Added Degree and DegreeByHash functions for determining vertex degrees.
  • Added cycle checks when adding an edge using the Edge functions.

v0.1.0

19 Jun 20:48
Compare
Choose a tag to compare

Added

  • Added CreatesCycle and CreatesCycleByHashes functions for predicting cycles.

v0.1.0-beta

17 Jun 14:11
Compare
Choose a tag to compare

Changed

  • Introduced dedicated types for directed and undirected graphs, making Graph[K, T] an interface.