I saw an opportunity to reduce the complexity a bit by relying more on the optional dependency declared in setup.py on pycurl over specifying it separately. This would be especially relevant if we would enforce a version constraint on pycurl in setup.py.
We couldn't reduce the complexity that much since binderhub is installed locally. This is always tricky since requirements.in freezes into requirements.txt using pip-compile via the ci/refreeze script, and when it does we get an absolute path to install binderhub. And with that, I think we can't avoid issues when we are to install pre-built wheels in the Dockerfile.
I've done a delayed self-review, and think it makes sense still as it is. I'll go for a self-merge in the intrest of minimizing use of our limited maintenance capacity.
I saw an opportunity to reduce the complexity a bit by relying more on the optional dependency declared in setup.py on
pycurl
over specifying it separately. This would be especially relevant if we would enforce a version constraint on pycurl in setup.py.We couldn't reduce the complexity that much since binderhub is installed locally. This is always tricky since requirements.in freezes into requirements.txt using
pip-compile
via theci/refreeze
script, and when it does we get an absolute path to install binderhub. And with that, I think we can't avoid issues when we are to install pre-built wheels in the Dockerfile.