It does not support expression for elements with efferent/afferent couplings
kyoh86 opened this issue · 2 comments
kyoh86 commented
There's some advanced expressions like below
https://github.com/structurizr/dsl/blob/master/docs/language-reference.md#expressions
-><identifier|expression>
: the specified element(s) plus afferent couplings<identifier|expression>->
: the specified element(s) plus efferent couplings-><identifier|expression>->
: the specified element(s) plus afferent and efferent couplings
But this CLI does NOT support them.
Trying exporting views, we get the error like below.
$ docker run -it --rm -v ${PWD}c4:/usr/local/structurizr structurizr/cli export --workspace workspace.dsl --format mermaid --animation true --output output
Exporting workspace from workspace.dsl
- loading workspace from DSL
java.lang.NullPointerException
at com.structurizr.dsl.AbstractExpressionParser.findAfferentCouplings(AbstractExpressionParser.java:154)
at com.structurizr.dsl.StaticViewExpressionParser.findAfferentCouplings(StaticViewExpressionParser.java:43)
at com.structurizr.dsl.AbstractExpressionParser.parseIdentifierExpression(AbstractExpressionParser.java:222)
at com.structurizr.dsl.AbstractExpressionParser.evaluateExpression(AbstractExpressionParser.java:130)
at com.structurizr.dsl.AbstractExpressionParser.parseExpression(AbstractExpressionParser.java:37)
at com.structurizr.dsl.StaticViewContentParser.parseInclude(StaticViewContentParser.java:28)
at com.structurizr.dsl.StructurizrDslParser.parse(StructurizrDslParser.java:567)
at com.structurizr.dsl.StructurizrDslParser.parse(StructurizrDslParser.java:122)
at com.structurizr.cli.ExportCommand.run(ExportCommand.java:112)
at com.structurizr.cli.StructurizrCliApplication.run(StructurizrCliApplication.java:36)
at com.structurizr.cli.StructurizrCliApplication.main(StructurizrCliApplication.java:81)
com.structurizr.dsl.StructurizrDslParserException: NullPointerException at line 1037: include ->element.tag==board->
at com.structurizr.dsl.StructurizrDslParser.parse(StructurizrDslParser.java:737)
at com.structurizr.dsl.StructurizrDslParser.parse(StructurizrDslParser.java:122)
at com.structurizr.cli.ExportCommand.run(ExportCommand.java:112)
at com.structurizr.cli.StructurizrCliApplication.run(StructurizrCliApplication.java:36)
at com.structurizr.cli.StructurizrCliApplication.main(StructurizrCliApplication.java:81)
simonbrowndotje commented
That particular feature is new to the DSL and hasn't yet been released onto Maven Central or the CLI yet ... I'll hopefully do a release later this week or next.
simonbrowndotje commented
This is now available in v1.18.0.