-
-
Notifications
You must be signed in to change notification settings - Fork 525
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Bokeh 3.4 #6072
Support for Bokeh 3.4 #6072
Conversation
@@ -316,7 +316,7 @@ export class PlotlyPlotView extends HTMLBoxView { | |||
} | |||
|
|||
_get_trace(index: number, update: boolean): any { | |||
const trace = clone(this.model.data[index]); | |||
const trace = clone(this.model.data[index]) as any; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Else, it would give a type error.
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #6072 +/- ##
==========================================
- Coverage 84.19% 83.65% -0.55%
==========================================
Files 301 305 +4
Lines 45200 45518 +318
==========================================
+ Hits 38056 38076 +20
- Misses 7144 7442 +298
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
I can see the UI tests are starting to fail between Bokeh 3.4.0.dev4 and 3.4.0.dev5, this is likely to be because of bokeh/bokeh#13618, @mattpap do you agree? The PR is pretty big, and I can't see if it is backward compatible, with older versions of Bokeh. A quick glance shows the following models are failing:
|
Suspect this is due to the dict -> object/Map conversion. It used to be the case that most dicts would end up being converted to a JS |
It's not compatible on the implementation level. Previously if there was a So what needs to happen, is that all cases where plain objects are used, instead of manipulate those objects directly, one should use APIs from This comes with some caveats. This approach breaks pseudo structs that are encoded as dictionaries, see e.g. bokeh/bokeh#13637. That issue is a critical regression to fix to make 3.4 viable. Otherwise I will need to revert PR bokeh/bokeh#13618. If you previously passed a plain object from a property to a third-party JS API, then now you have to use |
Thank you, @mattpap, for the explanation. Can you give an estimated time for when you look at the regression? (No pressure, just curious) @philippjfr, I will wait with this PR until the regression or reversion has been made in Bokeh. |
As soon as I'm done with UIs, so hopefully tomorrow. |
Note I don't think the regression affects Panel, unless I'm misunderstanding. |
I agree, but if the PR is reverted, there is no need to update Panel to support it. |
@hoxbro, I reverted dict/Map related changes, upgraded to dev8, fixed |
I will publish removed commits in an new PR when this one is merged. |
I have chosen to hard-pin the build step. This can always be reversed.
selectbox
file was renamed toselect
in AllowSelect
to select values of any type bokeh/bokeh#13497.InputWidgetView._render_input()
was added in Implement<label for="input"><input id="input">
bokeh/bokeh#13604URL
dataclass was added in Improvements aroundBOKEH_DEV=true
workflow bokeh/bokeh#13042ColorMap
was renamed toPaletteSelect
in RenameColorMap
toPaletteSelect
and improve it bokeh/bokeh#13537