matplotlib / matplotlib/ipympl

ipympl conda install deletes env's default labextensions state (but works with pip)

Offen
#564 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Jupyter Notebook
Sterne
1.7k
Forks
234
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

## Describe the issue
Installing ipympl with conda overwrites the content of `.../conda/envs/env_name/etc/jupyter/labconfig/page_config.json` resulting in enabling of all labextensions for all users (which is a big problem on a JupyterHub).

Install command:
```
conda install -c conda-forge ipympl
```
`.../conda/envs/env_name/etc/jupyter/labconfig/page_config.json` before ipympl install:
```
{
"disabledExtensions": {
"@jupyter/nbgrader:formgrader": true,
"@jupyter/nbgrader:course-list": true,
"@jupyter/nbgrader:create-assignment": true,
"kore-extension": true
},
"lockedExtensions": {
"@jupyter/nbgrader:formgrader": true,
"@jupyter/nbgrader:course-list": true,
"@jupyter/nbgrader:create-assignment": true,
"kore-extension": true
}
}
```
and after:
```
{
"lockedExtensions": {}
}
```

This is not caused by a dependency: installing all dependencies first shows that install of ipympl overwrites the file.

Using `pip install ipympl` everything works as expected (`page_config.json` remains untouched).

## Versions

* ipympl 0.9.4
* jupyterlab 4.2.4
* jupyterhub 5.1.0

```bash
# without output from jupyter nbextension list (not installed)

3.12.5 | packaged by conda-forge | (main, Aug 8 2024, 18:36:51) [GCC 12.4.0]
ipympl version: 0.9.4
Selected Jupyter core packages...
IPython : 8.26.0
ipykernel : 6.29.5
ipywidgets : 8.1.5
jupyter_client : 8.6.2
jupyter_core : 5.7.2
jupyter_server : 2.14.2
jupyterlab : 4.2.4
nbclient : 0.10.0
nbconvert : 7.16.4
nbformat : 5.10.4
notebook : 7.2.1
qtconsole : not installed
traitlets : 5.14.3
JupyterLab v4.2.4
/opt/conda/envs/jhub/share/jupyter/labextensions
jupyterlab-execute-time v3.1.2 enabled OK (python, jupyterlab_execute_time)
jupyterlab_pygments v0.3.0 enabled OK (python, jupyterlab_pygments)
jupyter-matplotlib v0.11.4 enabled OK
kore-extension v0.1.0 enabled OK (python, kore_extension)
@jupyter-notebook/lab-extension v7.2.1 enabled OK
@jupyter-widgets/jupyterlab-manager v5.0.13 enabled OK (python, jupyterlab_widgets)
@jupyter/nbgrader v0.9.3 enabled OK
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere das Problem mit `conda install -c conda-forge ipympl` und vergleiche `.../conda/envs/env_name/etc/jupyter/labconfig/page_config.json` vor und nach der Installation. Verwende das gemeldete pip-Verhalten als Vergleich; die Aufgabe ist abgeschlossen, wenn die vorhandenen Einstellungen `disabledExtensions` und `lockedExtensions` nach der conda-Installation intakt bleiben.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
jupyter-notebook, python
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.