Releases: jamisonjiang/graph-support
Releases · jamisonjiang/graph-support
Release 1.5.2
Release 1.5.2
�� New Features
DOTQ Layout Engine
- New optimized layout algorithm specifically designed for large graphs
- Improved performance and layout quality for hierarchical graph structures
- More straighter long edges in large graph
⚡ Performance Improvements
Min-Crossing Algorithm Enhancements
- Median heuristic implementation for crossing calculations
- Crossing calculation caching for iterative improvements
- ~10× faster iterations with significantly fewer final edge crossings
- Optimized memory usage during layout computation
��️ Stability & Bug Fixes
Node-Cluster Overlap Resolution
- Resolved boundary interaction issues between nodes and clusters
- Enhanced overlap detection and resolution mechanisms
🏗️ Architecture & Refactoring
Core Graph Data Layer Rebuild
- Complete reconstruction of the foundational graph data structure
- General-purpose design for broader component reuse
- Improved memory efficiency and data access patterns
�� Breaking Changes
⚠️ Note: This release maintains compatibility with 1.5.1. No breaking changes were introduced.
�� Migration from 1.5.1
Dependencies
Your existing Maven dependencies will continue to work:
<dependency>
<groupId>org.graphper</groupId>
<artifactId>graph-support-core</artifactId>
<version>1.5.2</version>
</dependency>API Compatibility
- All public APIs remain unchanged
- Existing code will work without modifications
- Performance improvements are automatic
🧪 Testing & Validation
- Comprehensive test suite covering new DOTQ layout engine
- Performance benchmarks validating 10× speed improvement at mincross process
- Edge case testing for node-cluster interactions
- Regression testing ensuring 1.5.2 compatibility
�� Download
- Maven Central: Available immediately
- Source Code: GitHub Release
- Documentation: Updated Documentation
We recommend upgrading to 1.5.2 for the best performance and stability experience. 🎉
1.5.0
Release 1.5.0
New Features
- DOT Script Parsing
- Added support for parsing DOT scripts directly.
- Command-Line Interface (CLI) Support
- Introduced CLI support for executing Graphviz commands via the terminal.
- Enhanced HTML Tag Support
- Added support for additional HTML tags
Breaking Changes
-
Graphviz Scaling Adjustment
GraphvizBuilder#scalerate has been updated to align with Graphviz’ssizeattribute.- Impact: After upgrading to version ≥ 1.5.0, all scale values should be multiplied by 10 to maintain the same rendering size.
-
Module Replacement for Version ≥ 1.5.0
- The original module
org.graphpergraph-supportno longer exists in version 1.5.0. - It has been replaced with
org.graphpergraph-support-core. - Action required: Update your Maven dependency as follows:
<dependency> <groupId>org.graphper</groupId> <artifactId>graph-support-core</artifactId> <version>1.5.0</version> </dependency>
- The original module
Notes
- Ensure that any scaling values are adjusted accordingly to avoid unexpected graph size changes.
- If you encounter issues with CLI execution, check the updated help documentation for supported commands.
- Remember to update your Maven dependency to use
graph-support-coreinstead ofgraph-supportif upgrading to version ≥ 1.5.0.
Acknowledgments
Special thanks to @j0hannesz #7 or their invaluable contribution in developing the initial version of the DOT parser. Your efforts were crucial in getting this feature up and running!
Release 1.4.0
Release 1.4.0:
- Add Fdp series layout engine;
- Fix cluster overflow nodes issues;
- Fix label render issue in image output;
- Add invtriangle and invtrapezium node shapes;
- Add tooltip feature;
- Optimize CustomizeShapeRender usage and javadoc.
Release 1.3.0
- Add multi Cluster Shape;
- Add multi Styles for node/line/cluster;
- Optimize Cluster minimum cross algorithm and fix node overflow cluster issue.
Release 1.2.2
- Fixed the drawing problem where the endpoints of parallel edges are in different ports;
- Unify the global default font to avoid size problems caused by different fonts;
- Support file output in multiple formats and multiple platforms;
graph-support-1.0.2
Fix bug:
- Float label will show wrong rank
- Let the split segment number constantly in curve fix box logic
graph-support-1.0.1
Update README.md