Build fails at step "Using PythonBuildPack builder"

Hi there,

The build for https://mybinder.org/v2/gh/jeroenjanssens/python-polars-the-definitive-guide/HEAD?labpath=ch07.ipynb is failing at “Using PythonBuildPack builder”. Here’s the complete log:

Waiting for build to start...
Picked Git content provider.
Cloning into '/tmp/repo2dockerblu1lzz6'...
Updating files: 100% (108/108), done.
HEAD is now at c0e0fed Add runtime.txt for Binder
Building conda environment for python=3.11
Using PythonBuildPack builder

I’m using runtime.txt and requirements.txt (see GitHub - jeroenjanssens/python-polars-the-definitive-guide: Scripts and datasets for the book Python Polars: The Definitive Guide). Is there some way I can debug this further?

Thanks,

Jeroen

Dear @jeroenjanssens,

Is there some way I can debug this further?

The best way to debug it further is by using repo2docker locally. Read the documentation! The short version is

$ python3 -m pip install jupyter-repo2docker
$ jupyter-repo2docker https://github.com/jeroenjanssens/python-polars-the-definitive-guide

First check out here and Python 3.11 and beyond · Issue #1225 · jupyterhub/repo2docker · GitHub. Last I knew 3.11 was a problem. See here where recent jtpio ont still specifies Python 3.10.

Related advice only if that doesn’t fix it alone:
Your requirements.txt is very detailed and specific. You’ll have a better chance of making it continually work in conjunction with mybinder by making a sub-directory named binder and making a simple requirements.txt there. MyBinder will use that one preferentially if it sees it. I think the runtime should be copied into there too.
Then just simply list in requirements.txt in the binder sub-directory the basic extras it needs. Don’t include things already built into or handled by the MyBinder infrastructure, such as tornado, six, etc… You just want things like pandas, numpy, and pyarrow. Start small and then add more when it is working. And don’t put anything but the name of the package. No pinning or version conditionals.