You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+28-1Lines changed: 28 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
-
## Unreleased
8
+
## 5.1.0 - Unreleased
9
9
10
10
### Added
11
11
@@ -32,6 +32,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
32
32
- Both algorithms run in O(V + E) time complexity
33
33
- See module documentation for comparison with existing SCC algorithms
34
34
35
+
-**Enhanced DOT Rendering** (`yog/render/dot`): Major improvements to Graphviz export functionality:
36
+
-**Generic Data Types**: `DotOptions` is now generic over node data `n` and edge data `e`, allowing it to work with any graph types without manual conversion
37
+
- Use `default_dot_options()` for `String` edge data (backward compatible)
38
+
- Use `default_dot_options_with_edge_formatter(fn(e) -> String)` for custom edge types (e.g., `Int`, `Float`, custom records)
39
+
- Use `default_dot_options_with()` for full control over both node and edge labeling
40
+
-**Per-Element Styling**: New callback functions for fine-grained visual control:
41
+
-`node_attributes: fn(NodeId, n) -> List(#(String, String))` - Set custom DOT attributes per node (e.g., `[#("fillcolor", "green"), #("shape", "diamond")]`)
42
+
-`edge_attributes: fn(NodeId, NodeId, e) -> List(#(String, String))` - Set custom DOT attributes per edge (e.g., `[#("color", "red"), #("penwidth", "2")]`)
43
+
- Custom attributes override highlighting and default styles
44
+
-**Subgraphs and Clusters**: New `Subgraph` type for visual node grouping:
- **Consistent Parameter Labels**: Added descriptive labels to all semiring and algorithm parameters across pathfinding, centrality, health, and community detection modules for improved API consistency and self-documentation:
0 commit comments