Skip to content
This repository has been archived by the owner on Oct 14, 2023. It is now read-only.

Binder is broken #1460

Closed
Closed
@astrojuanlu

Description

Clicking on the Binder button on the poliastro README produces a build error:

ERROR: Could not find a version that satisfies the requirement astropy<6,>=5.0 (from poliastro) (from versions: 0.1, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.3, 0.3.1, 0.3.2, 0.4rc1, 0.4rc2, 0.4, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.4.5, 0.4.6, 1.0rc1, 1.0rc2, 1.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.10, 1.0.11, 1.0.12, 1.0.13, 1.1b1, 1.1rc1, 1.1rc2, 1.1, 1.1.post1, 1.1.post2, 1.1.1, 1.1.2, 1.2rc1, 1.2, 1.2.1, 1.2.2, 1.3rc1, 1.3, 1.3.1, 1.3.2, 1.3.3, 2.0rc1, 2.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.0.10, 2.0.11, 2.0.12, 2.0.13, 2.0.14, 2.0.15, 2.0.16, 3.0rc1, 3.0rc2, 3.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1rc1, 3.1rc2, 3.1, 3.1.1, 3.1.2, 3.2rc1, 3.2rc2, 3.2, 3.2.1, 3.2.2, 3.2.3, 4.0rc1, 4.0rc2, 4.0, 4.0.1, 4.0.1.post1, 4.0.2, 4.0.3, 4.0.4, 4.0.5, 4.0.6.dev27461, 4.0.6, 4.1rc1, 4.1rc2, 4.1, 4.2rc1, 4.2, 4.2.1, 4.3rc1, 4.3, 4.3.post1, 4.3.1)
ERROR: No matching distribution found for astropy<6,>=5.0

Full logs:

Waiting for build to start...
Picked Git content provider.
Cloning into '/tmp/repo2docker6k9y_a59'...
HEAD is now at da11159b Merge pull request #1455 from airpods69/disabled-parallel-jit-for-32bit
Building conda environment for python=3.7Using PythonBuildPack builder
Building conda environment for python=3.7Building conda environment for python=3.7Step 1/53 : FROM buildpack-deps:bionic
 ---> 872a6bfe806a
Step 2/53 : ENV DEBIAN_FRONTEND=noninteractive
 ---> Using cache
 ---> fdb66914281a
Step 3/53 : RUN apt-get -qq update &&     apt-get -qq install --yes --no-install-recommends locales > /dev/null &&     apt-get -qq purge &&     apt-get -qq clean &&     rm -rf /var/lib/apt/lists/*
 ---> Using cache
 ---> ef83f7c7d9bc
Step 4/53 : RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen &&     locale-gen
 ---> Using cache
 ---> 796c2774b0e4
Step 5/53 : ENV LC_ALL en_US.UTF-8
 ---> Using cache
 ---> c19b4d807a80
Step 6/53 : ENV LANG en_US.UTF-8
 ---> Using cache
 ---> 8a9a285ceb8d
Step 7/53 : ENV LANGUAGE en_US.UTF-8
 ---> Using cache
 ---> 207182a8cf48
Step 8/53 : ENV SHELL /bin/bash
 ---> Using cache
 ---> cb8c24a0df89
Step 9/53 : ARG NB_USER
 ---> Using cache
 ---> 3d5dbb21472e
Step 10/53 : ARG NB_UID
 ---> Using cache
 ---> eb272c03bac7
Step 11/53 : ENV USER ${NB_USER}
 ---> Using cache
 ---> 605f6daca236
Step 12/53 : ENV HOME /home/${NB_USER}
 ---> Using cache
 ---> 968e3deecb51
Step 13/53 : RUN groupadd         --gid ${NB_UID}         ${NB_USER} &&     useradd         --comment "Default user"         --create-home         --gid ${NB_UID}         --no-log-init         --shell /bin/bash         --uid ${NB_UID}         ${NB_USER}
 ---> Using cache
 ---> 9b9973ee9acb
Step 14/53 : RUN apt-get -qq update &&     apt-get -qq install --yes --no-install-recommends        less        unzip        > /dev/null &&     apt-get -qq purge &&     apt-get -qq clean &&     rm -rf /var/lib/apt/lists/*
 ---> Using cache
 ---> 7ad7b7e65c17
Step 15/53 : EXPOSE 8888
 ---> Using cache
 ---> 1a717657346b
Step 16/53 : ENV APP_BASE /srv
 ---> Using cache
 ---> 01295c0331cc
Step 17/53 : ENV CONDA_DIR ${APP_BASE}/conda
 ---> Using cache
 ---> 1a8a04f8ad03
Step 18/53 : ENV NB_PYTHON_PREFIX ${CONDA_DIR}/envs/notebook
 ---> Using cache
 ---> f42d7b06d38f
Step 19/53 : ENV NPM_DIR ${APP_BASE}/npm
 ---> Using cache
 ---> ca82bd3e68e7
Step 20/53 : ENV NPM_CONFIG_GLOBALCONFIG ${NPM_DIR}/npmrc
 ---> Using cache
 ---> 0e2e48467abc
Step 21/53 : ENV NB_ENVIRONMENT_FILE /tmp/env/environment.lock
 ---> Using cache
 ---> bf70ac6ddeeb
Step 22/53 : ENV MAMBA_ROOT_PREFIX ${CONDA_DIR}
 ---> Using cache
 ---> 3e9e77944bec
Step 23/53 : ENV MAMBA_EXE ${CONDA_DIR}/bin/mamba
 ---> Using cache
 ---> 68f79ca1ea86
Step 24/53 : ENV KERNEL_PYTHON_PREFIX ${NB_PYTHON_PREFIX}
 ---> Using cache
 ---> cc804c0192cf
Step 25/53 : ENV PATH ${NB_PYTHON_PREFIX}/bin:${CONDA_DIR}/bin:${NPM_DIR}/bin:${PATH}
 ---> Using cache
 ---> 18abf87722a2
Step 26/53 : COPY --chown=1000:1000 build_script_files/-2fusr-2flib-2fpython3-2e8-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2factivate-2dconda-2esh-391af5 /etc/profile.d/activate-conda.sh
 ---> Using cache
 ---> 408348028ee9
Step 27/53 : COPY --chown=1000:1000 build_script_files/-2fusr-2flib-2fpython3-2e8-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2fenvironment-2epy-2d3-2e7-2elock-4f1154 /tmp/env/environment.lock
 ---> Using cache
 ---> de1e2e1165be
Step 28/53 : COPY --chown=1000:1000 build_script_files/-2fusr-2flib-2fpython3-2e8-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2finstall-2dbase-2denv-2ebash-8fbb20 /tmp/install-base-env.bash
 ---> Using cache
 ---> 9e0c1df4b198
Step 29/53 : RUN TIMEFORMAT='time: %3R' bash -c 'time /tmp/install-base-env.bash' && rm -rf /tmp/install-base-env.bash /tmp/env
 ---> Using cache
 ---> 1bd3ede56786
Step 30/53 : RUN mkdir -p ${NPM_DIR} && chown -R ${NB_USER}:${NB_USER} ${NPM_DIR}
 ---> Using cache
 ---> 8cf914de058a
Step 31/53 : USER root
 ---> Using cache
 ---> 0ca1c52b39da
Step 32/53 : ARG REPO_DIR=${HOME}
 ---> Using cache
 ---> 5f1f115a9aa1
Step 33/53 : ENV REPO_DIR ${REPO_DIR}
 ---> Using cache
 ---> daeacca308e4
Step 34/53 : WORKDIR ${REPO_DIR}
 ---> Using cache
 ---> b07fa9eb4d78
Step 35/53 : RUN chown ${NB_USER}:${NB_USER} ${REPO_DIR}
 ---> Using cache
 ---> 795035454d86
Step 36/53 : ENV PATH ${HOME}/.local/bin:${REPO_DIR}/.local/bin:${PATH}
 ---> Using cache
 ---> 64e4ff472d57
Step 37/53 : ENV CONDA_DEFAULT_ENV ${KERNEL_PYTHON_PREFIX}
 ---> Using cache
 ---> 9d78dd212841
Step 38/53 : COPY --chown=1000:1000 src/binder/requirements.txt ${REPO_DIR}/binder/requirements.txt
 ---> da0283ba1cc3
Step 39/53 : USER ${NB_USER}
 ---> Running in 593f82b010f1
Removing intermediate container 593f82b010f1
 ---> 1e1367c48400
Step 40/53 : RUN ${KERNEL_PYTHON_PREFIX}/bin/pip install --no-cache-dir -r "binder/requirements.txt"
 ---> Running in 5aa110e26ab0
Collecting poliastro
  Cloning https://github.com/poliastro/poliastro.git to /tmp/pip-install-3iywrtmd/poliastro_116f4b4abcb04a3894c87010060502af
�[91m  Running command git clone --filter=blob:none -q https://github.com/poliastro/poliastro.git /tmp/pip-install-3iywrtmd/poliastro_116f4b4abcb04a3894c87010060502af
�[0m  Resolved https://github.com/poliastro/poliastro.git to commit da11159b8d00e56125ecff741d683dd06dcd8be8
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting jupytext>=1.13.3
  Downloading jupytext-1.13.6-py3-none-any.whl (297 kB)
Collecting pyerfa
  Downloading pyerfa-2.0.0.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (746 kB)
Collecting matplotlib!=3.0.1,>=2.0
  Downloading matplotlib-3.5.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (11.2 MB)
Collecting astroquery>=0.3.9
  Downloading astroquery-0.4.5-py3-none-any.whl (4.5 MB)
Collecting jplephem
  Downloading jplephem-2.17.tar.gz (40 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting numba>=0.46
  Downloading numba-0.55.1-1-cp37-cp37m-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.3 MB)
Collecting numpy
  Downloading numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB)
Collecting cached_property
  Downloading cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Collecting pandas
  Downloading pandas-1.3.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB)
Collecting plotly<6,>=4.0
  Downloading plotly-5.5.0-py2.py3-none-any.whl (26.5 MB)
Collecting scipy>=1.4.0
  Downloading scipy-1.7.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (38.1 MB)
�[91mERROR: Could not find a version that satisfies the requirement astropy<6,>=5.0 (from poliastro) (from versions: 0.1, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.3, 0.3.1, 0.3.2, 0.4rc1, 0.4rc2, 0.4, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.4.5, 0.4.6, 1.0rc1, 1.0rc2, 1.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.10, 1.0.11, 1.0.12, 1.0.13, 1.1b1, 1.1rc1, 1.1rc2, 1.1, 1.1.post1, 1.1.post2, 1.1.1, 1.1.2, 1.2rc1, 1.2, 1.2.1, 1.2.2, 1.3rc1, 1.3, 1.3.1, 1.3.2, 1.3.3, 2.0rc1, 2.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.0.10, 2.0.11, 2.0.12, 2.0.13, 2.0.14, 2.0.15, 2.0.16, 3.0rc1, 3.0rc2, 3.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1rc1, 3.1rc2, 3.1, 3.1.1, 3.1.2, 3.2rc1, 3.2rc2, 3.2, 3.2.1, 3.2.2, 3.2.3, 4.0rc1, 4.0rc2, 4.0, 4.0.1, 4.0.1.post1, 4.0.2, 4.0.3, 4.0.4, 4.0.5, 4.0.6.dev27461, 4.0.6, 4.1rc1, 4.1rc2, 4.1, 4.2rc1, 4.2, 4.2.1, 4.3rc1, 4.3, 4.3.post1, 4.3.1)
�[0m�[91mERROR: No matching distribution found for astropy<6,>=5.0
�[0mRemoving intermediate container 5aa110e26ab0
The command '/bin/sh -c ${KERNEL_PYTHON_PREFIX}/bin/pip install --no-cache-dir -r "binder/requirements.txt"' returned a non-zero code: 1Built image, launching...
Failed to connect to event stream

The reason is that Binder is using Python 3.7, which is not supported anymore.

(Discovered by @Yash-10 )

In principle, according to the documentation, the fix is as simple as a binder/runtime.txt file with the contents python-3.10 (so Binder uses the latest supported version of Python).

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions