Skip to content
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

Break up the base package #2561

Closed
jasongrout opened this issue Sep 23, 2019 · 2 comments · Fixed by #2710
Closed

Break up the base package #2561

jasongrout opened this issue Sep 23, 2019 · 2 comments · Fixed by #2710
Labels
resolved-locked Closed issues are locked after 30 days inactivity. Please open a new issue for related discussion.
Milestone

Comments

@jasongrout
Copy link
Member

jasongrout commented Sep 23, 2019

We had some pain recently where we updated the base widget manager, but not the base widget classes, which forced widget authors to update their dependency on the base package.

From #2472 (comment)

I think moving forward we can:

  • break base into base-widget and base-manager
  • make a restricted interface for the manager exposed on a widget that lives in base-widget
  • version base-widget and base-manager separately
  • not sure where to put the jlab registry token- probably base-widget since that is the only thing we want people to depend on

Then base-manager depends on base-widget, and third-party libraries depend on base-widget, and we have two version numbers to communicate to two separate groups of people.

And @vidartf points out that we probably want to bump the compilation target to es2017 as well.

I think this would be an excellent change for 8.0 (it is a js-only thing, so we could probably do it before 8.0 if we weren't bumping the compilation target)

We could probably even leave the base-widget package just called base, and separate out the manager. That would make @jupyter-widgets/base 3.0, and base-manager depend on base 3.0. That would ease upgrading (custom widget authors would just need to update to ^1 || ^2 || ^3)

@jasongrout jasongrout added this to the 8.0 milestone Sep 23, 2019
@mgeier
Copy link
Contributor

mgeier commented Oct 12, 2019

Would this have an influence on ipywidgets.embed.DEFAULT_EMBED_REQUIREJS_URL (see #2284)?
Would there be two "default" URLs?

@vidartf
Copy link
Member

vidartf commented Oct 16, 2019

@mgeier I don't think that url is currently used directly in any place in the base JS package, so I don't think that should be affected.

@lock lock bot added the resolved-locked Closed issues are locked after 30 days inactivity. Please open a new issue for related discussion. label May 20, 2020
@lock lock bot locked as resolved and limited conversation to collaborators May 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
resolved-locked Closed issues are locked after 30 days inactivity. Please open a new issue for related discussion.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants