Mybinder.org and repo2docker updates

Some updates to BinderHub and repo2docker have been deployed to mybinder.org, which folks may notice:

  • Python 3.10 is now the default Python version, for repos that don’t specify a python version
  • Jupyter Server is the default server implementation instead of jupyter-notebook
  • ‘too-old’ Python handling, where we put the kernel in a separate env, now applies to Python <= 3.6, where it used to apply only to Python 2.7.

Let us know if you encounter any issues and we’ll try to work them out!

More detail on the jupyter blog

7 Likes

I think I have encountered an issue related to this update. I have a Jupyter Notebook that used to launch directly into appmode when accessed using the following link:

https://mybinder.org/v2/gh/olivertlord/hydrous-melts/main?urlpath=apps/hydrous_melt_PVTX.ipynb

Now, that link produces the following error:

404 : Not Found You are requesting a page that does not exist!

A workaround detailed here apparently solved this issue, but is now also broken, potentially by this update.

Below is a log produced by running

less ~/.jupyter-server-log.txt

in the terminal accessed from the notebook by altering the above url after appmode launch failure.

Any suggestions for how to get around this issue would be greatly appreciated.

** log **

Launching jupyter-lab
[I 2023-03-16 22:47:37.798 ServerApp] jupyter_offlinenotebook | extension was successfully linked.
[I 2023-03-16 22:47:37.799 ServerApp] jupyter_resource_usage | extension was successfully linked.
[W 2023-03-16 22:47:37.801 LabApp] ‘base_url’ has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2023-03-16 22:47:37.801 LabApp] ‘token’ has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2023-03-16 22:47:37.801 LabApp] ‘trust_xheaders’ has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2023-03-16 22:47:37.801 LabApp] ‘allow_origin’ has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2023-03-16 22:47:37.801 LabApp] ‘allow_origin_pat’ has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[I 2023-03-16 22:47:37.806 ServerApp] jupyterlab | extension was successfully linked.
[W 2023-03-16 22:47:37.809 NotebookApp] ‘extra_template_paths’ was found in both/home/jovyan/.jupyter-server-log.txt

1 Like

It looks like there’s a recently merged (but not yet released) PR with some jupyter-server fixes for appmode:

3 Likes

I just discovered mybinder recently, but I experience issues with installing dependencies using a requirements.yml file. It’s in the root directory of the repository, but it seems to be completely ignored when building the docker image. I’ve tested the file with a conda env create -f requirements.yml locally, and it works well. Can this be an issue related to the update?

Here’s a great tip: give your YAML file the correct name :slight_smile:

For pip installation: requirements.txt
For conda installation: environment.yml (not requirements.yml)

I can confirm that the above seems to work nicely with the new update!

1 Like