Releases: terrastruct/TALA
Releases · terrastruct/TALA
v0.3.7
Features 🚀
- Nodes are expanded to aesthetically fit all connections if not enough room with default dimensions
- Arrowhead labels are considered in autolayout and avoid overlaps as much as possible
Improvements 🧹
- Pairs of nodes prefer horizontal arrangements given multiple connections with labels
Bugfixes ⛑️
- Fixes a rare bug using
near
to a node in a tree structure - Fixes a rare bug positioning nested node clusters
- Fixes a rare panic involving edge labels
v0.3.6
v0.3.5
Way, way faster!
Improvements 🧹
- Edge routing is up to 31% faster
- Improves layout of clusters
- Node placement is up to 2x faster
- Up to 41% less memory usage
- Avoids clustering nodes when their sizes are disproportionately different
- Prevent image labels from being placed over the image in some cases
Bugfixes ⛑️
- Fixes a rare bug where container children place outside of container
- Fixes self-loop sizing on containers
- Fixes node drift in certain cases
- Fixes an issue where unlabeled connections could completely overlap each other
- Fixes a bug with node alignments
v0.3.4
This release brings massive improvements in performance. Screenshot from our internal benchmarks on a batch of tests, comparing this release vs the last:
As a result of this, TALA by default now executes 3 runs in parallel with different seeds, and picking the best one for you. This should produce better results at a much higher rate!
This release requires D2 0.2.6
Features 🚀
- You can now pass in multiple seeds, and TALA will race multiple layout runs with
different seeds, choosing the best outcome. See the TALA Manual for more.
Improvements 🧹
- Improves subgraph compaction giving space for better edges
- Improved edge routing for clustered nodes
- Significantly speeds up edge routing with many edges
- Significant performance improvements
- Uses up to 56% less memory for layouts with
sql_table
s
Bugfixes ⛑️
- Fixes a rare condition that allowed nodes with self loops to escape their containers
- Fixes edge from container going through descendants
- Fixes a bug that could cause some asymmetrical edge routing
- Fixes container shapes sometimes not having enough padding to fit icons
- Fixes the alignment of nodes connected to sequence steps
- Fixes the placement of clustered nodes connected to sequences
Breaking Changes
tala-seed
changed totala-seeds
. You can still continue to pass in a single number,
same as before. But the name change is reflective that it can now take in multiple
seeds.
v0.3.3
Improvements 🧹
- Clusters are sized such that labels always have enough room.
- Improves shape-specific label position preferences (for example, parallelograms now prefer placing labels within the shape).
Bugfixes ⛑️
- Nested node labels no longer overlap container boundaries occasionally
v0.3.2
v0.3.1
v0.3.0
TALA 0.3.0 implements position-locking to give control over parts of the diagram where you need it. This is an advanced feature that opens up a world of possibilities to create small bubbles of customized layouts and combine it with autolayout. For example, here's a legend:
Legend: {
top: 0
left: 0
blue: "" {
width: 20
height: 20
left: 0
top: 0
style.stroke: black
}
blue-explanation: Actions {
shape: text
left: 50
top: 0
}
green: "" {
width: 20
height: 20
left: 0
top: 50
style.fill: honeydew
style.stroke: black
}
green-explanation: Intermediate artifacts {
shape: text
left: 50
top: 50
}
}
We're excited to see all the creative diagrams this enables!
Features 🚀
top
andleft
positions implemented.
Improvements 🧹
- ~30% faster for large, connected diagrams
- Much faster gap normalization for all diagrams
- Bin-packing algorithm improved to reduce whitespace between non-connected subgraphs
Bugfixes ⛑️
- Fixes label placements avoiding connections that weren't actually obstructing
- Fixes a rare panic that could with cluster nodes
- Edges could sometimes route through nodes that were not part of its subgraph
- Edges between containers that were perfectly aligned was sometimes unable to find a route.
v0.2.15
Improvements 🧹
- Padding reduced on containers to align with more compact look and feel of D2 0.2.
sql_table
routing switched from using hierarchical layout engine to orthogonal.- Diagrams with multiple subgraphs are more compact.
- Much improved hierarchical alignments for diagrams where connections skip hierarchy levels (e.g. a node in the first row connected to another 2 rows down).
Bugfixes ⛑️
- Fixes an issue with hierarchy leveling where connections between two nodes of the same level could occur.
sql_table
connections where column is not specified no longer always points to first column.
v0.2.14
Improvements 🧹
- Improves cluster arrangements and edge routing
- Positions shapes closer to neighbors outside its own container
- Reduce edge routing runtime by ~10%
- Improves hierarchy algorithm to place objects at different levels when appropriate
Bugfixes ⛑️
- Fixes a rare
panic
while reducing gap between nodes - Fixes a rare
panic
with sequences (connectedstep
shapes) - Fixes a rare panic with clusters
- Fixes a rare panic when children of a container are connected to different childrens of different containers
- Fixes an error where a connection route sometimes couldn't be found from a center step of a sequence