CHANGES (FGL/HASKELL, Version: November 2008)
---------------------------------------------


November 2008
-------------
* Bugfix in Graphviz.sq


June 2008
---------
* bug fix in bcc by Reid Barton
* added new dynamic graph implementation: 
  Data.Graph.Inductive.PatriciaTree (thanks to Pho)
* added test/benchmark.hs: a benchmark to compare Tree and PatriciaTree
  implementations (thanks to Pho)


May 2008
--------
* added Setup.hs to tar file
* reimplementation of Data.Graph.Inductive.Query.Dominators
  by Bertram Felgenhauer:
  It was buggy and very slow for large graphs. See
      http://www.haskell.org/pipermail/haskell-cafe/2008-April/041739.html
  This patch also adds a new function, iDom, that returns the immediate
  dominators of the graph nodes.
* Exported xdf*With functions from DFS.hs
* many little cleanups thanks to many people 
  (use 'darcs changes' to see the details)


April 2007
----------
* changed the implementation for inspection functions (suc, pred, ...)
  to correct the behavior in the presence of loops 
  (thanks to Ralf Juengling for pointing out the inconsistency)


June 2006
---------
* fixed a bug in findP (thanks to lnagy@fit.edu)
* added function delLEdge in Graph.hs (thanks to Jose Labra)
* changed implementation of updFM and mkGraph (thanks to Don Stewart)


February 2005
-------------
* fixed an import error in Basic.hs 
* removed Eq instance of gr because it caused overlapping instance problems.
  Instead the function equal defined in Graph.hs can be used
* added some more functions to the export list of DFS.hs
* changed the definition of LPath into a newtype to avoid
  overlapping instances with lists
* fixed the Makefile (for GHC and GHCi)


January 2004
------------
* bug fix for nearestNode (src/Data/Graph/Inductive/Query/GVD.hs)
Update contributed by Aetion Technologies LLC (www.aetion.com)
* Refactor into hierarchical namespace
* Build changes:
  - build a standard haskell library (libHSfgl.a, HSfgl.o)
  - install as ghc package (fgl), uses Auto so no -package is needed
* Automatic Node generation for labels: Data.Graph.Inductive.NodeMap
* Graphviz output: Data.Graph.Inductive.Graphviz


September 2002
--------------
* Introduction of graph classes
* Monadic graphs and graph computation monad
* Graph implementation based on balanced (AVL) trees  
* Fast graph implementation based on IO arrays
* New algorithms:
  - Maximum flow
  - Articulation points
  - biconnected components
  - dominators
  - transitive closure
* minor changes in utility functions
  - changed signatures (swapped order of arguments) of 
    functions context and lab to be consistent with other graph functions
  - changed function first in RootPath: not existing path is now reported 
    as an empty list and will not produce an error
  - esp version that returns a list of labeled edges
    (to find minimum label in maxflow algorithm)
  - BFS uses amortized O(1) queue
  - Heap stores key and value separately
  - ...


March 2001
----------
* Changes to User Guide
* a couple of new functions
* some internal changes


April 2000
----------
* User Guide
* Systematic structure for all depth-first search functions
* Graph Voronoi diagram
* Several small changes and additions in utility functions


February 2000
-------------
* Representation for inward-directed trees
* Breadth-first search
* Dijkstra's algorithm
* Minimum-spanning-tree algorithm


August 1999
-----------
* First Haskell version

