fgl – new releases on Hackagehttps://hackage.haskell.org/package/fglNew releases of package 'fgl' on Hackage.http://www.rssboard.org/rss-specificationenadmin@hackage.haskell.orgadmin@hackage.haskell.orgMon, 3 Aug 2020 09:59:15 UTCMon, 3 Aug 2020 09:59:15 UTCrss-feedfgl-5.7.0.3 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.7.0.3https://hackage.haskell.org/package/fgl-5.7.0.3Mon, 3 Aug 2020 09:59:15 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2020-08-03T09:59:15Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.7.0.3
-------
* Bump QuickCheck dependency
5.7.0.2
-------
* Bump dependencies.
5.7.0.1
-------
* Accidentally released the wrong version.
5.7.0.0
-------
* Updating the GraphM class to be compatible with the MonadFail proposal and GHC's
MonadFailDesugaring language extension which is enabled by default by GHC-8.6.1.
5.6.0.0
-------
* The previous version should have been a major version bump due to
the API change.
5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.7.0.2 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.7.0.2https://hackage.haskell.org/package/fgl-5.7.0.2Tue, 28 Jan 2020 13:33:31 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2020-01-28T13:33:31Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.7.0.2
-------
* Bump dependencies.
5.7.0.1
-------
* Accidentally released the wrong version.
5.7.0.0
-------
* Updating the GraphM class to be compatible with the MonadFail proposal and GHC's
MonadFailDesugaring language extension which is enabled by default by GHC-8.6.1.
5.6.0.0
-------
* The previous version should have been a major version bump due to
the API change.
5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.7.0.1 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.7.0.1https://hackage.haskell.org/package/fgl-5.7.0.1Mon, 26 Nov 2018 14:11:23 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2018-11-26T14:11:23Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.7.0.1
-------
* Accidentally released the wrong version.
5.7.0.0
-------
* Updating the GraphM class to be compatible with the MonadFail proposal and GHC's
MonadFailDesugaring language extension which is enabled by default by GHC-8.6.1.
5.6.0.0
-------
* The previous version should have been a major version bump due to
the API change.
5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.7.0.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.7.0.0https://hackage.haskell.org/package/fgl-5.7.0.0Mon, 26 Nov 2018 14:07:10 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2018-11-26T14:07:10Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.7.0.0
-------
* Updating the GraphM class to be compatible with the MonadFail proposal and GHC's
MonadFailDesugaring language extension which is enabled by default by GHC-8.6.1.
5.6.0.0
-------
* The previous version should have been a major version bump due to
the API change.
5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.6.0.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.6.0.0https://hackage.haskell.org/package/fgl-5.6.0.0Wed, 9 Aug 2017 13:06:50 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2017-08-09T13:06:50Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.6.0.0
-------
* The previous version should have been a major version bump due to
the API change.
5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.4.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.4.0https://hackage.haskell.org/package/fgl-5.5.4.0Wed, 9 Aug 2017 10:09:56 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2017-08-09T10:09:56Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.4.0
-------
* Improved type safety of shortest-path functions (in
`Data.Graph.Inductive.Query.SP`) thanks to Nathan Collins.
- `getDistance`, `spLength` and `sp` now return `Maybe` values.
* Fixed building on GHC < 7.4; previously uncaught due to
cabal-install doing the wrong thing on Travis-CI.
5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.3.1 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.3.1https://hackage.haskell.org/package/fgl-5.5.3.1Fri, 3 Mar 2017 06:01:32 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2017-03-03T06:01:32Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.3.1
-------
* Hopefully clearer documentation for `&`, `Context` and the
`ufold`-based functions.
* Thanks to David Feuer, the existing benchmark suite is now runnable
with `cabal bench`.
* Some performance improvements for `PatriciaTree`, thanks to David
Feuer.
5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.3.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.3.0https://hackage.haskell.org/package/fgl-5.5.3.0Fri, 15 Jul 2016 06:40:33 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2016-07-15T06:40:33Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.3.0
-------
* Additional closure functions by Matthew Danish.
* `Bifunctor` instances for base >= 4.8.0.0.
* An `ST`-based `GraphM` instance.
* Addition of `order` and `size` functions for finding the number of
nodes and edges respectively in a graph (the former is an alias for
the existing `noNodes` function).
* The rules for faster implementations of `insNode` and `insEdge` for
`PatriciaTree` should fire more often now.
5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.2.3 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.2.3https://hackage.haskell.org/package/fgl-5.5.2.3Tue, 8 Sep 2015 13:50:37 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2015-09-08T13:50:37Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.2.3
-------
* Earlier fix for `NFData` wasn't quite complete/correct.
5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.2.2 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.2.2https://hackage.haskell.org/package/fgl-5.5.2.2Tue, 8 Sep 2015 13:26:59 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2015-09-08T13:26:59Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.2.2
-------
* Ensure firing of specialised rules for `PatriciaTree`.
* Better way of only creating `NFData` instances when possible.
5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.2.1 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.2.1https://hackage.haskell.org/package/fgl-5.5.2.1Sat, 25 Jul 2015 14:24:50 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2015-07-25T14:24:50Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.2.1
-------
* Only create `NFData` instances for GHC >= 7.4.1.
5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.2.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.2.0https://hackage.haskell.org/package/fgl-5.5.2.0Wed, 22 Jul 2015 13:02:57 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2015-07-22T13:02:57Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.2.0
-------
* Documentation, clean-up and refactoring of various parts of the
library.
- As part of this, various types now have instances for classes
like `Show`, `Eq`, `Ord`, `NFData`, etc. where applicable.
- In particular, the various options for use with depth-first
search and shortest path queries was documented by David
Luposchainsky.
* Addition of a proper test-suite. So far it covers the
`Data.Graph.Inductive.Graph` module and all
`Data.Graph.Inductive.Query.*` modules except for `Monad`.
- The tests are also automatically run for every (set of) commits
thanks to Travis-CI.
* Arbitrary instances for the two graph types are now available in the
new `fgl-arbitrary` sub-package.
* Now depends solely on the `transformers` library rather than `mtl`.
* Potentially breaking changes:
These changes are those where the behaviour was un-specified or
didn't match the documentation.
- `nodeRange` and `nodeRangeM` for the various graph data
structures erroneously returned `(0,0)` for empty graphs (making
them indistinguishable from graphs containing the single node
`0`). They now match the default implementation of throwing an
error.
- The behaviour of `delLEdge` when dealing with multiple edges was
unspecified; it now deletes only a single edge and the new
function `delAllLEdge` deletes all edges matching the one
provided.
* Additional functions thanks to Sergiu Ivanov:
- Creating sub-graphs by `Node`- and `Context`-filtering as well
as induced by a set of `Node`s.
- Graph condensation (i.e. graph of
strongly-connected-components).
- Various edge- and neighbor-based helper functions.
* The graph types now have `Generic` instances thanks to Piotr
Mlodawski.
* The `OrdGr` wrapper by Trevor Cook allows performing `Ord`-based
comparisons on graphs.
5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
5.4.2.2 (November 2008)
-----------------------
* Bugfix in Graphviz.sq
5.4.2.1 (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)
5.4.2 (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)
5.4 (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)
5.3 (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
</pre>IvanMiljenovicfgl-5.5.1.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.1.0https://hackage.haskell.org/package/fgl-5.5.1.0Mon, 9 Mar 2015 04:38:09 UTC<dl><dt>Homepage</dt><dd><a href=""></a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2015-03-09T04:38:09Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.1.0
-------
* Support added for GHC 7.10 by Herbert Valerio Riedel.
* Additional DFS query functions added by Conrad Parker.
* Repository location changed to GitHub.
* Code cleanup:
- Replaced usage of internal FiniteMap copy with Data.Map and
Data.Set from the containers library.
- Remove usage of data type contexts.
- Use newtypes where applicable.
5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
</pre>IvanMiljenovicfgl-5.5.0.1 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.0.1https://hackage.haskell.org/package/fgl-5.5.0.1Mon, 28 Apr 2014 04:32:59 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2014-04-28T04:32:59Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.0.1
-------
* Fix up Eq instances for Tree and PatriciaTree so that they work with
multiple edges.
5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
</pre>IvanMiljenovicfgl-5.5.0.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.5.0.0https://hackage.haskell.org/package/fgl-5.5.0.0Sun, 27 Apr 2014 14:13:47 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2014-04-27T14:13:47Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com</dd></dl><hr /><pre>5.5.0.0
-------
* Add proper Show, Read and Eq instances to Data.Graph.Inductive.Tree
and Data.Graph.Inductive.PatriciaTree.
* Add pretty-printing functions to Data.Graph.Inductive.Graph. These
are based upon the old Show implementation for
Data.Graph.Inductive.Tree.
* Now use PatriciaTree by default rather than Tree (and recommend as
such). IntMap has been receiving a lot of optimisation work on it,
whereas the internal FiniteMap implementation hasn't received any
attention.
* The `version :: IO ()` action now uses the actual Cabal version.
* Remove Data.Graph.Inductive.Graphviz; use the graphviz package
instead.
5.4.2.4
-------
* Update to work with GHC-7.2 and Cabal-1.6.
5.4.2.3
-------
* Maintainership taken over by Ivan Miljenovic.
* Allow Data.Graph.Inductive.PatriciaTree to deal with multiple edges
between nodes.
</pre>IvanMiljenovicfgl-5.4.2.4 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.4.2.4https://hackage.haskell.org/package/fgl-5.4.2.4Mon, 15 Aug 2011 04:41:14 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2011-08-15T04:41:14Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com, tomberek@gmail.com</dd></dl><hr />(No changelog found.)IvanMiljenovicfgl-5.4.2.3 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.4.2.3https://hackage.haskell.org/package/fgl-5.4.2.3Mon, 12 Jul 2010 06:29:59 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig, Ivan Lazar Miljenovic</dd><dt>Uploaded</dt><dd>by IvanMiljenovic at 2010-07-12T06:29:59Z</dd><dt>Maintainer</dt><dd>Ivan.Miljenovic@gmail.com, tomberek@gmail.com</dd></dl><hr />(No changelog found.)IvanMiljenovicfgl-5.4.2.2 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.4.2.2https://hackage.haskell.org/package/fgl-5.4.2.2Mon, 3 Nov 2008 17:38:44 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig</dd><dt>Uploaded</dt><dd>by MartinErwig at 2008-11-03T17:38:44Z</dd><dt>Maintainer</dt><dd>Martin Erwig</dd></dl><hr />(No changelog found.)MartinErwigfgl-5.4.2.0 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.4.2.0https://hackage.haskell.org/package/fgl-5.4.2.0Thu, 23 Oct 2008 11:29:46 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig</dd><dt>Uploaded</dt><dd>by RossPaterson at 2008-10-23T11:29:46Z</dd><dt>Maintainer</dt><dd>Martin Erwig</dd></dl><hr />(No changelog found.)RossPatersonfgl-5.4.1.1 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.4.1.1https://hackage.haskell.org/package/fgl-5.4.1.1Sat, 3 Nov 2007 15:32:33 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd>Martin Erwig</dd><dt>Uploaded</dt><dd>by RossPaterson at 2007-11-03T15:32:33Z</dd><dt>Maintainer</dt><dd>Martin Erwig</dd></dl><hr />(No changelog found.)RossPatersonfgl-5.3 (Martin Erwig's Functional Graph Library)https://hackage.haskell.org/package/fgl-5.3https://hackage.haskell.org/package/fgl-5.3Thu, 2 Nov 2006 14:22:27 UTC<dl><dt>Homepage</dt><dd><a href="http://web.engr.oregonstate.edu/~erwig/fgl/haskell">http://web.engr.oregonstate.edu/~erwig/fgl/haskell</a></dd><dt>Author</dt><dd></dd><dt>Uploaded</dt><dd>by RossPaterson at 2006-11-02T14:22:27Z</dd><dt>Maintainer</dt><dd>Martin Erwig</dd></dl><hr />(No changelog found.)RossPaterson