jupyter / nbgrader

A system for assigning and grading notebooks

Home Page:https://nbgrader.readthedocs.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Roll back "Create assignment" sidebar

Adamtaranto opened this issue · comments

The new "Create assignment" sidebar makes it difficult to quickly create nbgrader cell types in an existing notebook. I have to select the cell in the notebook then scroll up and down a tonne of blank cells in the sidebar to find one with a blue line next to it.

  1. If possible it would be great if selecting a cell in the notebook automatically updated the sidebar position to the equivalent cell, or vice versa.

  2. When was this feature introduced? I want to revert to an earlier version that does not have it.

Operating system

OSX

nbgrader --version

0.9.1

jupyter notebook --version

7.1.0

I agree that this feature should be improved.

This sidebar has been introduced when porting nbgrader to JupyterLab*.
The notebook UI in Jupyterlab (and in Notebook>=7) does not support cell toolbar (yet ?), so this solution has been kept.

An other way could be to use the notebook tools, using a JSON schema. See https://github.com/jupyterlab/extension-examples/tree/main/metadata-form for example.
The disadvantage of this solution is that you can only see the metadata for the selected cell.

I was using Jupyter Notebook* to edit nbgrader notebooks without issue a few months ago. Is there a new version of Jupyter that has caused the old UI not to work?

I would love to have the old UI back. The current solution is very disorienting.

Edit: Jupyter notebook has switched from cell toolbar to sidebar.

Maybe I misunderstood the issue.
Can you provide some snapshots of the issue, and if possible some snapshots of how it was working before ?

AFAIK nbgrader on jupyterlab always used the sidebar, unlike nbgrader on Notebook<7.

The nbgrader options used to be at the top of each cell like this.

It now has this weird sidebar thing.

Yes, the main problem is that jupyterlab doesn't support editing the metadata from a cell toolbar, like notebook did.

The most pertinent discussion I could find on this subject is jupyterlab/jupyterlab#902. Maybe it could be discussed again in Jupyterlab.

Sorry, I meant to say that Jupyter Notebook has switched from cell toolbar to the sidebar. Jupyter Lab used the sidebar in old versions as well. I've edited my question.

I've tried exporting all package versions from an older conda env where I had the cell toolbar working in notebook with nbgrader v0.8.5.

Building a fresh conda env from this yml still isn't working for some reason.

Can you suggest a minimum set of package versions I can specify to get an env with the old cell toolbars back?

Can you suggest a minimum set of package versions I can specify to get an env with the old cell toolbars back?

Working well with python 3.11 (not 3.12).

conda install python=3.11
pip install nbgrader==0.8.5

It will install Notebook<7, using the cell toolbar.

Thanks this solution works fine on linux, I can use the old cell toolbars in jupyter notebook.

For some unknown reason the nbgrader extension is not visible in jupyter notebook when the same env is set up on an M-series mac. Is this a known issue?

For some unknown reason the nbgrader extension is not visible in jupyter notebook when the same env is set up on an M-series mac. Is this a known issue?

Not that I'm aware of.
Feel free to open an issue.

Let's leave this issue open because the create assignment widget could be improved.