OGDF » Release Notes » Elderberry
Released 2023-09-14.
This release marks the beginning of public OGDF development on GitHub! Hooray! Finally, bug fixes and new features will be directly available to the public. While certain research branches will still have to be kept in a private repository until the corresponding scientific results have been published, the bulk of the development now happens on GitHub. Most importantly, this means that members of the GitHub community can participate in the development of the OGDF in a more direct manner.
We also want to highlight ogdf-python: These python bindings for the OGDF have proved to work quite well, also in conjunction with Jupyter Notebook. Try them out! Further, we now have conan and vcpkg packages for the OGDF available.
The following new additions will facilitate OGDF development:
.clang-format
in the root directory):test_clang_format.sh
for easy code style enforcement, using a public docker image when the correct version is not installed locallyConcerning the main code base, this release includes many new features, bug fixes, tests and documentation improvements. Most noteworthy are:
MaximumDensitySubgraph
MinimumCutModule
MinimumCutNagamochiIbaraki
MinimumCutStoerWagner
, a rewritten MinCut
with performance in mindPlanarSeparatorModule
SeparatorDual
SeparatorDualFC
SeparatorHarPeled
SeparatorLiptonTarjan
SeparatorLiptonTarjanFC
SpannerModule
SpannerBasicGreedy
SpannerBaswanaSen
SpannerBerman
and SpannerBermanDisconnected
SpannerElkinNeiman
SpannerIteratedWrapper
SpannerKortsarzPeleg
findMaximumCardinalityMatching()
MaxAdjOrdering::calcForest()
and MaxAdjOrdering::visualize()
globeGraph()
generatorGraphIO
:drawTikz()
allowing to write out graphs as LaTeX/TikZGraphAttributes::isUniform()
to test attribute uniformitydrawSVG()
no longer dashes arrow heads of dashed arrowsdrawSVG()
now correctly uses its given settingsreadDL()
no longer fails when reading nodes with index nreadGML()
no longer crashes on malformed index datareadGraphML()
now accepts yFiles yEd filesRadialTreeLayout
now ensures planaritysetForcing2DLayout()
for PivotMDS
and StressMinimization
, ensuring a 2D-layout even when GraphAttributes::threeD
is setThis release contains (big and small) contributions by Dominik Potulski, Finn Stutzenstein, Hendrik Brückler, Ivo Hedtke, Jens Schmidt, Jöran Schierbaum, Kassian Köck, Marcel Radermacher, Mark Scheibner, Max Ilsen, Mirko H. Wagner, Sascha Alder, Simon Dominik "Niko" Fink, Stephan Beyer, Thomas Klein, and modmuss50 on GitHub.