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
{{ message }}
Repository navigation
Filled Area Plot accepts a Split-Plot configuration it then refuses to run #8283
Split Plot by Line Group is a boolean, and turning it on makes Line Group required, because code generation asserts it:
if (facetColumn) {
assert(lineGroup.nonEmpty, "Line Group cannot be empty")
}
But Line Group is declared @JsonProperty(required = false) and carries no conditional constraint, so the property panel accepts the configuration. The error arrives only when the user hits run and the operator generates its code, and Line Group being optional is exactly why it is easy to leave behind.
I expected the panel to refuse the configuration while it is being written, the way the Sklearn operators' Text Attribute is refused when Count Vectorizer is on (#7643). That one states the rule as a conditional required in the schema:
The same shape applies here: required: ["lineGroup"] when facetColumn is true. Conditional rather than a plain required, so a freshly dropped operator, whose switch is off, is not flagged for a field it has no use for.
How to reproduce?
Drop a Filled Area Plot and give it an X and a Y attribute.
Turn on Split Plot by Line Group.
Leave Line Group empty.
Run.
The run ends with the assertion below. The panel shows nothing wrong before that.
Version/Branch
1.3.0-incubating-SNAPSHOT (main)
Relevant log output
java.lang.AssertionError: assertion failed: Line Group cannot be empty
Activity
feat(visualization): export the charts drawn over a field or a sequen…