kz930 opened a new pull request, #7259:
URL: https://github.com/apache/texera/pull/7259

   ### What changes were proposed in this pull request?
   
   `marginal` — the **Distribution Type** field — was a plain string whose 
legal values existed only in its description, so the form rendered a free-text 
box. It now declares them as a schema `enum`, exactly the way 
`ECDFPlotOpDesc.marginal` already does: `none` as the default sentinel, and 
`rug`, `box`, `violin`, `histogram` as the values px accepts. `none` is not 
passed to px — the argument is omitted, as before for an empty field.
   
   The enum exposes `histogram` too. `px.histogram` accepts it and the operator 
always could, but the description named only three, so it was unreachable in 
practice.
   
   ### Why are the changes needed?
   
   The value is interpolated straight into `px.histogram(..., 
marginal=<value>)`, so a typo reaches plotly and fails inside it with 
`AttributeError: 'NoneType' object has no attribute 'constructor'` — an error 
that mentions nothing the user typed.
   
   ### Does this PR introduce any user-facing change?
   
   Yes. Distribution Type becomes a dropdown. A saved workflow with an empty 
value behaves as before, since `none` and empty both omit the argument; one 
carrying `rug`, `box` or `violin` is unaffected.
   
   ### How was this patch tested?
   
   `WorkflowOperator/compile`, `scalafmtCheckAll`, and 
`HistogramChartOpDescSpec` (4 tests).
   
   Closes #7209
   
   Generated-by: Claude Code (Claude Opus 5)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to