Pin Python version used on mybinder.org
When pinning versions of the packages like you do in requirements.txt it makes sense to also pin the version of Python. This is more an investment in the future, for example when repo2docker (the tool we use to build the repo) switches the default version of Python again.
Switching the default version of Python and the very specific pinning of versions is what caused the build to break this time. (We have an issue or forum post on making a guide of best practices but I can't find it :-/). Min's advice in that post goes something like: for "living" repos pin lightly so you can "go with the flow" and get upgrades. Sometimes things will break but as you are using the repo you can fix it then and then. For "archive" repos pin everything. Package versions, their dependencies, and the version of Python. I will try and find the post/issue and link it here.
https://github.com/jupyterhub/binder/issues/161 is the issue I was thinking of.