- Fix the serialization implementation of UndirectedGraph, ArrayUndirectedGraph and UndirectedBidirectionalGraph.
- Fix A* implementation to also compute cost on tree edge.
- Remove some serializable attributes from algorithms and predicates classes (homognization).
- Remove serializable attributes from delegate graphs implementations.
- All QuikGraph exceptions can be constructed with a custom message and an eventual inner exception.
- CompressedSparseRowGraph also implements IEdgeListGraph interface.
- EquateGraphs.Equate helpers now supports a wider range of graph comparisons.
- Add the IDistancesCollection to interface the distance information retrieval from shortest path algorithms. Legacy accesses to distances are marked as obsolete.
- Remove the dependency to System.Collections.NonGeneric for .NET Standard 1.3 target.
- Update package dependencies.
- Update package dependencies.
- Make all Dot structures serializable.
- Update package dependencies.
- Update reference to AutomaticGraphLayout packages in order to fix assembly strong naming issues.
- Update package dependencies.
- Update package dependencies.
- Add the possibility to use a custom binder during binary serialization to control deserialized types.
- Undirected graphs are now serializable to XML.
- Rely on embedded GraphML xsd to validate GraphML graphs during serialization (avoid issues when GraphML website is down).
This package is the same as 2.2.0 but with the right tags and description.
- Use signing key to strong name library assemby.
- Use signing key to strong name library assemby.
- Use signing key to strong name library assemby.
- Clean the library code.
- Fully document library.
- Use JetBrains annotations all over the library as much as possible.
Migrate the library from GLEE to MSAGL (MSAGL is the successor of GLEE).
- Fix typo in populator algorithm.
- Fix a bug when converting undirected graph to MSAGL graph.
- Some public API breaks (but should remain simple to do a migration).
- Clean the library code.
- Fully document library.
- Use JetBrains annotations all over the library as much as possible.
- Fix PetriNetSimulator with possible collection modified while enumerating.
- Really make IPetriNet immutable to enforce the difference with IMutablePetriNet.
- Some public API breaks (but should remain simple to do a migration).
- Clean the library code.
- Fully document library.
- Use JetBrains annotations all over the library as much as possible.
- Add support of PenWidth property for vertex, edge and graph.
- Add support of Splines property for graph.
- Use EqualityComparer<T> instead of non-generic object.Equals.
- Cancellation of algorithm internally use exception to abort algorithm run.
- Fix a security vulnerability regarding XML serialization on target .NET Framework 3.5.
Rework the original QuickGraph.Graphviz module into QuikGraph.Graphviz. This make possible to use the QuikGraph to Dot bridge.
- Fix the floating points formatting when converted to Dot (Invariant culture).
- Fix some implementation issues accross the library.
- Fix labels, comments, tooltips, records and ports escaping.
- Fix a lot of graph to Dot conversions issues (wrong properties, invalid formatting, typo, etc).
- Add all color representations equivalent to System.Drawing.Color or System.Windows.Media.Color to GraphvizColor.
- Add conversion extensions from System.Drawing.Font to GraphvizFont (and vice versa).
- Dot escape method has been replaced by DotEscapers helpers that handle various escaping scenarios and are static.
- Some public API breaks (but should remain simple to do a migration).
- Clean the library code.
- Fully document library including convenient links to official Graphviz documentation.
- Use JetBrains annotations all over the library as much as possible.
Split QuikGraph package into 2 packages to extract serialization features:
- QuikGraph
- QuikGraph.Serialization
- Add struct based edge implementations that were in original QuickGraph (STaggedEdge, STaggedUndirectedEdge and SEquatableTaggedEdge).
- Package no more reference JetBrains.Annotations package, it rather uses some as internal implementation (same development experience for package consumer).
Serialization features extracted from core package.
- Properly deal with isolated vertices for transitive reduction algorithm.
- Properly deal with isolated vertices for transitive closure algorithm.
This release is based on YC.QuikGraph 3.7.5-deta with a lot of updates.
- Fully clean the library code.
- Extend support of the library to .NET Framework 3.5+.
- Extend support of the library to .NET Core 1.0+.
- Various fixes for graphs and algorithms implementations.
- Uniformize APIs and behaviors of graphs and algorithms implementations.
Note: Only keep the Core of QuikGraph for this package (feature split).
- Some public API breaks (but should remain simple to do a migration).
- Some edges structures are removed, the classes implementations are preferred due to C# limitations.
- Some algorithms are not usable for now (wrong implementations) and are removed from public API.
- Generate a documentation for the library via DocFX.
- Use JetBrains annotations all over the library as much as possible.