Changes to JGraphT in each version:
-
version 0.9.2 (under development):
- Add
HawickJamesSimpleCycles
, contributed by Luiz Kill - Add
DOTImporter
, contributed by Wil Selwood - Optimize
FloydWarshallShortestPaths
, contributed by Mihhail Verhovtsov - Add VF2 isomorphism and subgraph isomorphism detection, contributed by Fabian Späh
- Remove old experimental isomorphism implementation
- Fix for empty graph input to
KuhnMunkresMinimalWeightBipartitePerfectMatching
, contributed by Szabolcs Besenyei - Fix for
EdmondsBlossomShrinking
, contributed by Alexey Kudinkin - Add
TransitiveReduction
, contributed by Christophe Thiebaud - Add
AStarShortestPath
, contributed by Joris Kinable, Jon Robinson, and Thomas Breitbart - More
FloydWarshallShortestPaths
optimizations, contributed by Joris Kinable - Add
MixedGraphUnion
andAsWeightedDirectedGraph
; fix UndirectedGraphUnion constructors; contributed by Joris Kinable - Add
GabowStrongConnectivityInspector
andKosarajuStrongConnectivityInspector
, contributed by Joris Kinable and Sarah Komla-Ebri - Add
PushRelabelMaximumFlow
; boostEdmondsKarpMaximumFlow
; addMaximumFlowAlgorithm
interface; addPair
andExtension
utility classes; optional seed parameter toRandomGraphGenerator
- Add
MaximumWeightBipartiteMatching
, contributed by Graeme Ahokas - Osgify jgrapht-ext, contributed by Christoph Zauner
- Add
AllDirectedPaths
, contributed by Andrew Gainer-Dewar
- Add
-
version 0.9.1 (5-Apr-2015):
- Auto-generation of bundle manifest, contributed by Nicolas Fortin
- Travis CI configuration, contributed by Peter Goldstein
- TarjanLCA bugfix, contributed by Leo Crawford
- Add
SimpleGraphPath
, contributed by Rodrigo Lopez Dato - Add
NaiveLcaFinder
, contributed by Leo Crawford - Make getEdgeWeight throw NPE on null edge, suggested by Joris Kinable
- Clarify that shortest path length is weighted, per gjafachini
- Add DAG constructor that takes an edge factory, and make TarjanLCA constructor public, contributed by Anders Wallgren
- Fixed rounding error in graph generation, contributed by Siarhei
- Fixed Javadoc for
DirectedWeightedMultigraph
, noticed by Martin Lowinski - Use annotations to simplify test suites, contributed by Jan Altenbernd
- Add missing Override/Deprecated annotations, contributed by Jan Altenbernd
- Update maven-compiler-plugin version, contributed by Andrew Chen
- Add builder package, contributed by Andrew Chen
- Add CliqueMinimalSeparatorDecomposition, contributed by Florian Buenzli, Thomas Tschager, Tomas Hruz, and Philipp Hoppen
- Include vertex #toString value in excn message, contributed by Chris Wensel
- Open up Specifics to allow for custom backing containers, contributed by Chris Wensel
- Make abstract graph constructors protected, contributed by John Sichi
- Moved to JDK 1.7
-
version 0.9.0 (06-Dec-2013):
- Move to github for source control, and Apache Maven for build, contributed by Andreas Schnaiter, Owen Jacobson, and Isaac Kleinman.
- Add source/target vertices to edge events to fix sf.net bug 3486775, spotted by Frank Mori Hess.
- Add
EdmondsBlossomShrinking
algorithm, contributed by Alejandro R. Lopez del Huerto. - Fix empty diameter calculation in
FloydWarshallShortestPaths
, contributed by Ernst de Ridder (bug spotted by Jens Lehmann) - Add
HopcroftKarpBipartiteMatching
andMinSourceSinkCut
, contributed by Joris Kinable - Fix multiple bugs in
StoerWagnerMinimumCut
, contributed by Ernst de Ridder - Fix path weight bug in
FloydWarshallShortestPaths
, contributed by Michal Pasieka - Add
PrimMinimumSpanningTree
, contributed by Alexey Kudinkin - Add
DirectedWeightedPseudograph
, and fix 'DirectedMultigraph' contributed by Adam Gouge - More KSP bugfixes (spotted by Sebastian Mueller, fixed by Guillaume Boulmier)
- Add
KuhnMunkresMinimalWeightBipartitePerfectMatching
and associated generators+interfaces (contributed by Alexey Kudinkin) - Add cycle enumeration (contributed by Nikolay Ognyanov, originally from http://code.google.com/p/niographs/ )
- Update
removeAllEdges
to match specification (contributed by Graham Hill) - Add
TarjanLowestCommonAncestor
, contributed by Leo Crawford - Add
JGraphXAdapter
, contributed by Sebastian Hubenschmid and JeanYves Tinevez - Add LGPL/EPL dual licensing, coordinated by Oliver Kopp
- Refactoring for
DirectedAcyclicGraph
, contributed by Javier Gutierrez
-
version 0.8.3 (20-Jan-2012):
- fix regression in
DOTExporter
inadvertently introduced by0.8.2
changes. - Add
GridGraphGenerator
, contributed by Assaf Mizrachi. - Return coloring from ChromaticNumber, contributed by Harshal Vora.
- Fix bugs in KSP, contributed by Guillaume Boulmier; note that these bugfixes worsen the running time.
- Fix an object identity bug in CycleDetector, contributed by Matt Sarjent. -Add StoerWagnerMinimumCut, contributed by Robby McKilliam.
- Fix
MANIFEST.MF
, spotted by Olly. - Make
FloydWarshallShortestPaths.getShortestPaths
unidirectional, contributed by Yuriy Nakonechnyy.
- fix regression in
-
version 0.8.2 (27-Nov-2010):
- Clean up
FibonacciHeapNode
constructor, as suggested by Johan Henriksson. - Optimize and enhance
FloydWarshallShortestPaths
, contributed by Soren Davidsen. - Optimize
ChromaticNumber
,pointed out by [email protected]. - Add unit test for
FloydWarshallShortestPaths
for bug noticed by Andrea Pagani. - Add vertex factory validation to
RandomGraphGenerator
to prevent a confusing problem encountered by Andrea Pagani. - Add
KruskalMinimumSpanningTree
andUnionFind
, contributed by Tom Conerly. - Add attributes to
DOTExporter
, based on suggestion from Chris Lott. - Fix inefficient assertion in
TopologicalOrderIterator
, spotted by Peter Lawrey. - Fix induced subgraph bug with addition of edge to underlying graph, contributed by Michele Mancioppi.
- Make
getEdgeWeight
delegate toDefaultWeightedEdge.getWeight
, spotted by Michael Lindig. - Add maven support, contributed by Adrian Marte.
- Clean up
-
version 0.8.1 (3-Jul-2009):
- Enhanced
GmlExporter
with customized labels and ID's, contributed by Trevor Harmon. - Added new algorithms
HamiltonianCycle
,ChromaticNumber
andEulerianCircuit
, plus new generatorsHyperCubeGraphGenerator
,StarGraphGenerator
, andCompleteBipartiteGraphGenerator
, all contributed by Andrew Newell. - Fix bug with vertices which are equals but not identity-same in graphs allowing loops, spotted by Michael Michaud.
- Fix bug in
EquivalenceIsomorphismInspector
, reported by Tim Engler. - AddtoString
for shortest paths wrapper, spotted by Achim Beutel. - Add
FloydWarshallShortestPaths
, contributed by Tom Larkworthy. - Enhance
DijskstraShortestPath
to supportGraphPath
interface. - Add
GraphUnion
(with directed and undirected variants), contributed by Ilya Razenshteyn.
- Enhanced
-
version 0.8.0 (Sept-2008):
- Moved to JDK 1.6.
- Fixed problem with
RandomGraphGenerator
reported by Mario Rossi. - Added
CompleteGraphGenerator
, contributed by Tim Shearouse. - Fixed
FibonacciHeap
performance problem reported by Jason Lenderman. - Made
DotExporter
reject illegal vertex ID's, contributed by Holger Brandl. - Fixed bogus assertion for topological sort over empty graph, spotted by Harris Lin.
- Added scale-free graph generator and
EdmondsKarpMaximumFlow
, contributed by Ilya Razenshteyn. - Added
DirectedAcyclicGraph
, contributed by Peter Giles. - Added protected
getWeight
accessor toDefaultWeightedEdge
, likewisegetSource
andgetTarget
onDefaultEdge
. - Optimized iterators to skip calling event firing routines when there are no listeners, and used
ArrayDeque
in a number of places, per suggestion from Ross Judson. - Improvements to
StrongConnectivityInspector
and OSGi bundle support contributed by Christian Soltenborn.
-
version 0.7.3 (Jan-2008):
- Patch to
JGraphModelAdapter.removeVertex
provided by Hookahey. - Added
ParanoidGraph
. - Removed obsolete
ArrayUtil
(spotted by Boente). - Added
GraphPath
, and used it to fix mistake in0.7.2
(k-shortest-paths was returning a private data structure, as discovered by numerous users). - Fixed
EdgeReversedGraph.getAllEdges
(spotted by [email protected]). - Fixed incorrect assertion in
TopologicalOrderIterator
constructor. - Enabled assertions in JUnit tests.
- Fixed NPE in
BellmanFordShortestPath.getCost
. - Fixed a few problems spotted by findbugs.
- Patch to
-
version 0.7.2 (Sept-2007):
- Added
TransitiveClosure
, contributed by Vinayak Borkar. - Added biconnectivity/cutpoint inspection, k-shortest-paths, and masked subgraphs, all contributed by Guillaume Boulmier.
- Made some Graphs helper methods even more generic, as suggested by JongSoo.
- Test and fixes for (Directed)NeighborIndex submitted by Andrew Berman.
- Added
AsUnweighted(Directed)Graph
andAsWeightedGraph
, contributed by Lucas Scharenbroich. - Dropped support for retroweaver.
- Added
-
version 0.7.1 (March-2007):
- Fixed some bugs in
CycleDetector
reported by Khanh Vu, and added more testcases for it. - Fixed bugs in
DepthFirstIterator
reported by Welson Sun, and added WHITE/GRAY/BLACK states andvertexFinished
listener event. - Exposed
Subgraph.getBase()
, and parameterizedSubgraph
on graph type (per suggestion from Aaron Harnly). - Added
EdgeReversedView
. - Added
GmlExporter
(contributed by Dimitrios Michail), plusDOTExporter
andGraphMLExporter
(both contributed by Trevor Harmon). - Enhanced
TopologicalOrderIterator
to take an optional Queue parameter for tie-breaking (per suggestion from JongSoo Park). - Fixed some documentation errors reported by Guillaume Boulmier.
- Fixed some bugs in
-
version 0.7.0 (July-2006) :
- Upgraded to JDK 1.5 (generics support added by Christian Hammer with help from Hartmut Benz and John Sichi).
- Added
(Directed)NeighborIndex
andMatrixExporter
, contributed by Charles Fry. - Added BellmanFord, contributed by Guillaume Boulmier of France Telecom.
- Removed never-used
LabeledElement
. - Renamed package from
org._3pq.jgrapht
toorg.jgrapht
. - Made various breaking change to interfaces; edge collections are now Sets, not Lists.
- Added Touchgraph converter, contributed by Carl Anderson
-
version 0.6.0 (July-2005) :
- Upgraded to JDK 1.4, taking advantage of its new linked hash set/map containers to make edge/vertex set order-deterministic
- Added support for custom edge lists.
- Fixed various serialization and Subgraph issues.
- Added to
JGraphModelAdapter
support for JGraph's "dangling" edges; its constructors have slightly changed and now forbidnull
values. - Improved interface to
DijskstraShortestPath
, and added radius support toClosestFirstIterator
. - Added new
StrongConnectivityInspector
algorithm (contributed by Christian Soltenborn) andTopologicalOrderIterator
(contributed by Marden Neubert). - Deleted deprecated
TraverseUtils
. - Upgraded to JGraph
5.6.1.1
.
-
version 0.5.3 (June-2004) :
- Removed Subgraph verification of element's identity to base graph, upgraded to JGraph 4.0
- Added the
VisioExporter
which was contributed by Avner Linder - minor bug fixes and improvements.
-
version 0.5.2 (March-2004) :
- Serialization improvements, fixes to subgraphs and listenable graphs
- added support for JGraph > JGraphT change propagation for JGraph adapter (contributed by Erik Postma)
- upgraded to JGraph 3.1, various bug fixes and improvements.
-
version 0.5.1 (November-2003) :
- Semantics of
Graph.clone()
has changed, please check the documentation if you're using it. - Added Dijkstra's shortest path, vertex cover approximations, new graph generation framework
- upgraded to JGraph 3.0
- various bug fixes and API improvements.
- Semantics of
-
version 0.5.0 (14-Aug-2003) :
- a new connectivity inspector added
- edge API refactored to be simpler
- improved ant build
- improved event model
- all known bugs were fixed, documentation clarifications, other small improvements.
- API of 0.5.0 is not 100% backward compatible with 0.4.1 but upgrade is simple and straightforward.
-
version 0.4.1 (05-Aug-2003) :
- A new adapter to JGraph that provides graph visualizations, new depth-first and breadth-first iteration algorithms
- various bug fixes and refactoring
- moved unit-tests to a separate folder hierarchy and added more unit-tests.
-
version 0.4.0 (July-2003) : Initial public release.