diff --git a/base-notebook/Dockerfile b/base-notebook/Dockerfile index f2e147ab36..c8d3651b79 100644 --- a/base-notebook/Dockerfile +++ b/base-notebook/Dockerfile @@ -131,8 +131,8 @@ RUN wget --quiet "https://github.com/conda-forge/miniforge/releases/download/${m # Do all this in a single RUN command to avoid duplicating all of the # files across image layers when the permissions change RUN conda install --quiet --yes \ - 'notebook=6.1.5' \ - 'jupyterhub=1.2.2' \ + 'notebook=6.1.6' \ + 'jupyterhub=1.3.0' \ 'jupyterlab=2.2.9' && \ conda clean --all -f -y && \ npm cache clean --force && \ @@ -150,10 +150,16 @@ CMD ["start-notebook.sh"] # Copy local files as late as possible to avoid cache busting COPY start.sh start-notebook.sh start-singleuser.sh /usr/local/bin/ +# Currently need to have both jupyter_notebook_config and jupyter_server_config to support classic and lab COPY jupyter_notebook_config.py /etc/jupyter/ # Fix permissions on /etc/jupyter as root USER root + +# Prepare upgrade to JupyterLab V3.0 #1205 +RUN sed -re "s/c.NotebookApp/c.ServerApp/g" \ + /etc/jupyter/jupyter_notebook_config.py > /etc/jupyter/jupyter_server_config.py + RUN fix-permissions /etc/jupyter/ # Switch back to jovyan to avoid accidental container runs as root diff --git a/datascience-notebook/Dockerfile b/datascience-notebook/Dockerfile index 3296bbee9c..7965381aa9 100644 --- a/datascience-notebook/Dockerfile +++ b/datascience-notebook/Dockerfile @@ -70,7 +70,7 @@ RUN conda install --quiet --yes \ 'r-nycflights13=1.0*' \ 'r-randomforest=4.6*' \ 'r-rcurl=1.98*' \ - 'r-rmarkdown=2.5*' \ + 'r-rmarkdown=2.6*' \ 'r-rsqlite=2.2*' \ 'r-shiny=1.5*' \ 'r-tidyverse=1.3*' \ diff --git a/r-notebook/Dockerfile b/r-notebook/Dockerfile index d316de97ce..190de532cb 100644 --- a/r-notebook/Dockerfile +++ b/r-notebook/Dockerfile @@ -37,7 +37,7 @@ RUN conda install --quiet --yes \ 'r-nycflights13=1.0*' \ 'r-randomforest=4.6*' \ 'r-rcurl=1.98*' \ - 'r-rmarkdown=2.5*' \ + 'r-rmarkdown=2.6*' \ 'r-rodbc=1.3*' \ 'r-rsqlite=2.2*' \ 'r-shiny=1.5*' \ diff --git a/scipy-notebook/Dockerfile b/scipy-notebook/Dockerfile index 2a634b1a0c..627553d2d1 100644 --- a/scipy-notebook/Dockerfile +++ b/scipy-notebook/Dockerfile @@ -22,20 +22,20 @@ RUN conda install --quiet --yes \ 'bottleneck=1.3.*' \ 'cloudpickle=1.6.*' \ 'cython=0.29.*' \ - 'dask=2.30.*' \ + 'dask=2020.12.*' \ 'dill=0.3.*' \ 'h5py=3.1.*' \ - 'ipywidgets=7.5.*' \ + 'ipywidgets=7.6.*' \ 'ipympl=0.5.*'\ 'matplotlib-base=3.3.*' \ - 'numba=0.51.*' \ + 'numba=0.52.*' \ 'numexpr=2.7.*' \ 'pandas=1.1.*' \ 'patsy=0.5.*' \ - 'protobuf=3.13.*' \ + 'protobuf=3.14.*' \ 'pytables=3.6.*' \ - 'scikit-image=0.17.*' \ - 'scikit-learn=0.23.*' \ + 'scikit-image=0.18.*' \ + 'scikit-learn=0.24.*' \ 'scipy=1.5.*' \ 'seaborn=0.11.*' \ 'sqlalchemy=1.3.*' \ diff --git a/scipy-notebook/test/test_extensions.py b/scipy-notebook/test/test_extensions.py new file mode 100644 index 0000000000..f1e1e97383 --- /dev/null +++ b/scipy-notebook/test/test_extensions.py @@ -0,0 +1,27 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +import pytest + +LOGGER = logging.getLogger(__name__) + + +@pytest.mark.parametrize( + "extension", + [ + "@bokeh/jupyter_bokeh", + "@jupyter-widgets/jupyterlab-manager", + "jupyter-matplotlib", + ], +) +def test_check_extension(container, extension): + """Basic check of each extension""" + LOGGER.info(f"Checking the extension: {extension} ...") + c = container.run( + tty=True, command=["start.sh", "jupyter", "labextension", "check", extension] + ) + rv = c.wait(timeout=10) + logs = c.logs(stdout=True).decode("utf-8") + LOGGER.debug(logs) + assert rv == 0 or rv["StatusCode"] == 0, f"Extension {extension} check failed" diff --git a/tensorflow-notebook/Dockerfile b/tensorflow-notebook/Dockerfile index 1ad8ce1405..ce20cf84b7 100644 --- a/tensorflow-notebook/Dockerfile +++ b/tensorflow-notebook/Dockerfile @@ -7,6 +7,6 @@ LABEL maintainer="Jupyter Project " # Install Tensorflow RUN pip install --quiet --no-cache-dir \ - 'tensorflow==2.3.1' && \ + 'tensorflow==2.4.0' && \ fix-permissions "${CONDA_DIR}" && \ fix-permissions "/home/${NB_USER}"