What's New
Latest Version
SequenceDiagram Core 4.0.3
- Support Rust, Go, C/C++
- Export huge image as multi-tiles files.
Compatible
- SequenceDiagram Java 4.0.3
- SequenceDiagram JS 4.0.3
- SequenceDiagram Rust 4.0.3
- SequenceDiagram Go 4.0.3
- SequenceDiagram C/C++ 4.0.3
Incompatible
- SequenceDiagram Java 4.0.2, 4.0.2.1
- SequenceDiagram JS 4.0.2
SequenceDiagram C/C++ 4.0.3
The C/C++ language plugin. (CLion is supported, but CLion Nova is not supported)
SequenceDiagram Go 4.0.3
The Go language plugin.
SequenceDiagram Rust 4.0.3
The Rust language plugin.
SequenceDiagram JS 4.0.3
The JavaScript language plugin, support JavaScript, TypeScript.
SequenceDiagram Java 4.0.3
The JVM language plugin, support Java, kotlin, scala.
SequenceDiagram 3.0.9
Java Record support
Java Record fields are treated as getters,so `Skip getters/setters` will skip the fields as well.
public record School(String name, int size) {} public class Test { public void close () { School peking = new School("Peking", 300); String name = peking.name(); } }
the `peking.name()` will not draw if you choose to `Skip getters/setters` setting.
Optimized recursive calls
the recursive calls will generate one more deep.
class GFG { static void factors(int n, int i) { // Checking if the number is less than N if (i <= n) { if (n % i == 0) { System.out.print(i + " "); } // Calling the function recursively // for the next number factors(n, i + 1); } } // Driver code public static void main(String args[]) { int N = 16; factors(N, 1); } }
Optimized alt/loop display
fix if/loop fragment color in dark theme.
optimize graphic gaps, now it display more beautiful.
SequenceDiagram 3.0.8
Preferred Method list
In case of `Display only project classes`, you can add method to `Preferred method list`, so the method will show in diagram.
It shows in filter manager windows.
Note: this only works in current diagram.
SequenceDiagram 3.0.7
Hotfix
Fix NoClassDefFoundError: org/w3c/dom/svg/SVGDocument.
SequenceDiagram 3.0.6
Alt/Loop fragment support(Beta)
Add alt/loop fragment to support generate if-else, switch, for, while fragment box.
You need opt-in the checkbox in the settings before use it. e.g.
public void test0 () { if (true) { new Apple("Green"); System.out.println(); } }
will generate sequence as the image.
Regular expression support in exclude settings
When add exclude setting entry, you can use regex expression. e.g.
`.*Builder` to filter `my.package.MyBuilder`, `java.lang.StringBuilder`
Be more careful when using it, sometimes regular expressions can cause some trouble, and the result is not what you expected. When you encounter problems, please delete the settings in time and try again.
Method reference support
Java method reference is supported. e.g.
public void testA() { Arrays.asList("Hello", "World") .stream() .map(ClassA::getData); }
the `ClassA::getData` method reference will generate in sequence like the image.
Draw Lambda expression as sub-sequence
Lambda expression support changed, in previous version, lambda draw right after method, while as in this version lambda draw as sub-sequence. e.g.
public void testLambda() { Stream.iterate(0, n -> n + 1); }
Before(gray) vs after in the image.