This is mainly a bugfix release. See GitHub for the full list of resolved issues.

New Features and Enhancements

  • #713: The Stress and Force layout algorithms now properly place inline edge labels.


  • #701, #732: Space is now properly reserved around port labels with fixed position.
  • #682, #683: With non-standard layout directions (other than left-to-right), node label paddings were not applied correctly.
  • #707: ELK’s handling of the short form of layout options could get confused when registering additional layout algorithms, resulting in undefined behavior.
  • #700, #731, #735, #737: ELK Layered now properly interprets hierarchy mode INCLUDE_CHILDREN again.
  • #726: Under certain conditions, ELK Layered failed to route orthogonal edges properly, resulting in slanted edge segments and generally hideous layouts.
  • #587, #738: ELK Layered’s non-orthogonal edge routers sometimes threw a NullPointerException while trying to route edges that went against the flow direction.
  • #696, #705: ELK Layered’s interactive mode could cause a NoSuchElementException.
  • #734, #739: ELK Layered produced different edge-node spacings where they should have been equal.
  • #680, #681: With external ports and negative port offsets, ELK Layered did not place child nodes correctly.
  • #710: ELK Force sometimes imported edge labels several times, resulting in weird placements.