@acowley My theory is it is because python got started on these tooling problems earlier, and made solutions of them earlier, it has worse solutions, because some of the other languages were able to look at what python did and learn from it.
Node/npm also has this problem to a weaker degree, because while it was able to learn from Python's mistakes, it wasn't able to learn from Node/npm's mistakes