-
Notifications
You must be signed in to change notification settings - Fork 945
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
@jupyter-widgets/controls _model_module_version uses protocol version #3560
Comments
The controls version has indeed been a special case in two ways, and it has worked up to this point because by convention controls has been distributed with the widget manager. These special cases have been an experiment in doing the version communication in what I think is a more correct way than what normal widgets do:
Note that controls does not publish an AMD module, so it cannot be loaded as other widgets are from CDN, yet. Background context: when we first started working with this version communication years ago, @SylvainCorlay and I disagreed about how it should be done. I advocated for the kernel side to communicate which version of protocol it would speak, i.e., the version it should communicate would be the version of the model schema it understood. I felt it was the frontend's job to provide js that could understand that particular version of the model schema for that package. The complicated part is that somehow the frontend needs to know a mapping from model schema versions to actual js package versions, and that we need to explain to widget authors what this new version number was and how it differed from all the other version numbers they were dealing with. @SylvainCorlay felt that that was too complicated for most widget authors, and most widget model schemas should just be versioned by their npm package version number, which is what we suggest right now for custom widgets. |
I'm primarily looking for clarification on the
_model_module_version
which is included in the model state.In https://github.com/jupyter-widgets/ipywidgets/blob/master/docs/source/migration_guides.md#updating-the-client-side-code it states:
@jupyter-widgets/controls
specifies the version atipywidgets/python/ipywidgets/ipywidgets/widgets/widget_core.py
Line 14 in 58adde2
ipywidgets/python/ipywidgets/ipywidgets/_version.py
Line 12 in 58adde2
This states:
All other controls use npm versions here, why does controls not?
The text was updated successfully, but these errors were encountered: