API for identifying overlaying frontend to help libraries interacting with the UI
- Lingua principale
- Python
- Stelle
- 734
- Fork
- 412
- Merge medio
- 1g 5h
- PR unite (30g)
- 8
Descrizione
Due to this talk
[Discussion about the trial to detect correct renderer in altair](https://github.com/altair-viz/altair/issues/1291)
It would be nice to have information provided for query by an ipykernel-API about the overlaying frontend.
Imagine someone wrote following code in jupyter notebook to visualize something like this:
```
import altair as alt
from vega_datasets import data
cars = data.cars()
alt.renderers.enable('notebook') #jupyter notebook
#alt.renderers.enable('default') #jupyter lab
#dynamic
alt.Chart(cars).mark_point().encode(
x='Horsepower',
y='Miles_per_Gallon',
color='Origin',
)
```
Now the user wants to share the code by his cars.ipynb file.
Another user wants to use it in jupyter lab and wonders why the graph is not shown.
He has again to modify the code, change e.g. 'notebook' to 'default' to make it run.
With an API from ipykernel which is identifying the frontend, the graphic-library could manage the configuration of the renderer by itself to set the optimal renderer and even give a warning when not supported even wrong renderer is used.
In the above link is a proposal hack to identify a frontend, but however, it should be registered in a correct way in the ipykernel.
Maybe someone would like to deal with it or implement that, that would be great!
The implementation of this proposal would mean a much simpler and more dynamic exchange and the faster use of different ipy user interfaces, because the user-code has not to be touched again.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Start with the linked Altair discussion and the ipykernel API context, then compare the notebook and JupyterLab renderer example in the issue. Done would mean a defined ipykernel API can identify the overlaying frontend so libraries can select a suitable renderer or warn when the current renderer is unsupported.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- jupyter, python
- Ambito
- api, backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100