All Versions
18
Latest Version
Avg Release Cycle
104 days
Latest Release
1897 days ago

Changelog History
Page 1

  • v3.0.0 Changes

    April 12, 2019
    • 🔨 This is an API breaking refactor
    • This version requires Swift 5.0 (Xcode 10.2)
    • Graph no longer conforms to class so structs can be Graphs (@davecom)
    • Graph and Edge are now Codable meaning all implementations must be as well including all vertex types, leading to the removal of CodableUnweightedGraph and CodableWeightedGraph, which are now unnecessary (@davecom)
    • 🆕 New CONTRIBUTORS.md file containing some history (@davecom)
    • 🆕 New search traversal methods (@ferranpujolcamins)
    • 👌 Improvements to UniqueElementsGraph (@ferranpujolcamins)
    • ✅ Useful constructors for testing (@ferranpujolcamins)
    • 👌 Improvements to UniqueElementsGraph tests (@ferranpujolcamins)
    • 🔨 Refactor many aspects of UnweightedGraph and WeightedGraph into conditional conformance extensions to Graph and new protocols (@ferranpujolcamins)
    • ➕ Add new performance tests (@ferranpujolcamins)
    • ➕ Add direction back to Edge (@ferranpujolcamins)
  • v2.0.0 Changes

    September 19, 2018
    • 🔨 This is an API breaking refactor
    • This version requires Swift 4.2 (Xcode 10.1)
    • Graph is now a protocol instead of a class
    • 🆓 edgesToVertices() is now a method on Graph instead of a free function
    • The Edge protocol has been significantly simplifieid
    • UnweightedEdge and WeightedEdge are now Codable
    • 👍 Subclasses of Graph CodableUnweightedGraph and CodableWeightedGraph provide serialization support to JSON and anything else Codable supports (thanks for the help, @yoiang)
    • Experimental subclass of UnweightedGraph, UniqueElementsGraph provides a union operation and guarantees no duplicate vertices & edges in a graph (thanks @ferranpujolcamins)
    • Cycle detector method that returns edges (thanks @ZevEisenberg)
  • v1.5.1 Changes

    October 12, 2017
    • 🐧 Project reorganized to support testing on Linux, just run swift test
    • 💅 Package.swift updated for Swift 4 package management style
    • ➕ Added detectCyles() which uses the Liu/Wang algorithm for detecting cycles up to any length in a graph
    • ➕ Added a couple unit tests for testing detectCycles()
  • v1.5.0 Changes

    September 13, 2017
    • ⬆️ Upgraded to Swift 4
    • Project now built with Xcode 9
    • SwiftPriorityQueue replaced with newer version
  • v1.4.1 Changes

    July 09, 2017
    • 🛠 Fixed a bug in removeAllEdges() and added a test for it
  • v1.4.0 Changes

    May 31, 2017
    • ➕ Added a Minimum Spanning Tree Fuction mst() based on Jarnik's Algorithm (aka Prim's Algorithm)
    • Simplified Dijkstra's Algorithm implementation
  • v1.3.1 Changes

    May 10, 2017
    • 🛠 Fixes a bug that could result in the wrong edges being removed when a vertex is removed (thanks @brandonroth)
    • ⚠ Silences some warnings about printing optionals introduced in Swift 3.1
  • v1.3.0 Changes

    February 21, 2017
    • 👍 Carthage Support (via re-organizing into framework) - thanks @klundberg
    • 🆕 New search methods added - versions of bfs() and dfs() that support custom goal functions
    • findAll() added as a version of bfs() with multiple potential outcomes
    • 👍 watchOS support added to Podfile
  • v1.2.0 Changes

    October 06, 2016
    • 🚚 Moved search functions from free functions to extensions of Graph and WeightedGraph
    • Switched license to Apache 2.0 from MIT
    • ➕ Added topologicalSort() and isDAG
    • 🔄 Changed access level for most types to open
    • ➕ Added unit tests for topologicalSort and isDAG
  • v1.1.1 Changes

    September 19, 2016
    • 🛠 Fixes for the final version of Swift 3
    • ⚡️ Updated version of SwiftPriorityQueue
    • ➕ Added .swift-version file