pip dependency loop resolved