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

Way for dynamic extensions to have settings? #8

Open
vidartf opened this issue Sep 22, 2021 · 1 comment
Open

Way for dynamic extensions to have settings? #8

vidartf opened this issue Sep 22, 2021 · 1 comment

Comments

@vidartf
Copy link
Member

vidartf commented Sep 22, 2021

I know that currently the settings system in lab requires the settings schema to be available on the server in order to allow the storing of setting values via the REST API. Please consider this a request to somehow allow dynamic extensions to also store settings, ideally in such a way that they would be stored in the same location regardless of whether it is loaded dynamically or regularly.

My apologies if this is already possible and I just missed it :)

@krassowski
Copy link
Member

Currently the settings are stored and provided by the server. The JupyterLab API assumes server is the only source of settings in its fetch and list methods. We would either need to:

  1. make a dynamic extensions a special case and change the upstream implementation of fetch, list and save (e.g. adding a client-side registry which would store the settings of dynamic extensions in the browser storage), or
  2. put schema files on the server when we load dynamic extensions, ideally in a subdirectory to avoid interfering with the normal schema; each re-loading of the extension would overwrite the schema on the server

Because schema is now preferred way do define menus, toolbars etc, we really want to enable schema to have a full feature parity with the normal extensions.

I lean towards the second option.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants