notebook 7 by minrk · Pull Request #1363 · jupyterhub/repo2docker (original) (raw)
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 andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Conversation10 Commits6 Checks16 Files changed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
[ Show hidden characters]({{ revealButtonHref }})
#1340 upgraded to jupyterlab 4 and jupyter-server 2, but that created #1361 because the classic notebook server auth isn't compatible with jupyter-server-based extensions and jupyter-server 2's IdentityProvider (jupyter-server/jupyter_server#1221). This is a problem because the default command is jupyter notebook --NotebookApp.default_url=/lab
, i.e. launch classic notebook server with JupyterLab UI, which won't work.
If we want a smaller fix to make a patch release, it would be to switch the default server command to jupyter-server. Classic notebook UI with jupyter-server 2 will work via nbclassic
, but classic notebook server with jupyter-server Extensions will not.
drops classic notebook server, is not really compatible with jupyter-server 2
rename deprecated NotebookApp CLI args to ServerApp
minrk mentioned this pull request
Coming back to this, anything to pre-announce, or go ahead and merge and announce?
I think giving advanced warning on https://discourse.jupyter.org/ would be nice, e.g. a couple of weeks? How about something along these lines:
Notebook 7 was released a year ago, and we're planning to upgrade the default version of notebook on mybinder in a couple of weeks. Notebook 7 is based on the same underlying components as JupyterLab, so extensions designed for Notebook 6 and earlier will need to be updated.
Can we provide instructions for using the old notebook? E.g.
If you need the previous version of Jupyter notebook you should add
notebook==6
to yourrequirements.txt
ornotebook=6
to yourenvironment.yml
file.
Or should we tell people to install nbclassic so we can run jupyter-server?
Makes sense. It may be a bit tricky, since notebook 6 not actually working is the reason for this bump (#1361). notebook 6 + server 2 don't quite work together, though if you only use one and specify the right launch command, thigs will probably work, unless you have ~any extensions.
So it would probably be better to specify notebook 6 and server 1, which will downgrade lab, too, I think, and possibly have other consequences.
How about this text?
Notebook 7 was released a year ago, and we're planning to upgrade the default version of notebook on mybinder.org in a couple of weeks. Notebook 7 is based on the same underlying components as JupyterLab, so extensions designed for Notebook 6 and earlier will need to be updated.
If you need the previous version of Jupyter notebook you should install notebook 6.*
and jupyter-server 1.*
. For example:
requirements.txt
:
notebook==6.* jupyter-server==1.* jupyterlab==3.*
(jupyterlab 3 is required to avoid pip leaving a broken version of jupyterlab installed)
environment.yml
:
name: example-environment
channels:
- conda-forge
dependencies:
- notebook=6
- jupyter_server=1
This may change the installed version of JupyterLab, so only do this if you need the old version of notebook and do not need JupyterLab.
That looks great. Let's test it to make sure it actually works, if you haven't already, then we can post it.
The conda version works, but pip doesn't actually downgrade packages broken by the downgrade of notebook/server, it just warns about unsatisfied dependencies, so requirements.txt
requires jupyterlab==3.*
explicitly. The result would be a broken env on mybinder.org, which launches /lab
.
Thanks for checking! Do you want to post the announcement on Discourse? Otherwise I'm happy to.
I actually have to step out for a bit right now, so if you could that would be great. Otherwise, I can do it when I get back this afternoon.
2 participants