I used to maintain the internal (single) version of numpy and scipy and honestly I think the one-version rule was awesome. It greatly reduced noise and churn. It meant far less breakage, and it was easy to find and fix all the breaking tests when I was updating to a new version. I guess the only downside is sometimes an older version of numpy would prevent deepmind from making some sort of ML advance until I upgraded to get some new feature they wanted.