So maybe I’m spoiled by linux package managers, where you tell it to “upgrade” and things continue to work… to me that is just a natural expectation.

Well, it seems the python package manager (pip) will happily upgrade all your project’s required dependencies, but not your optional dependencies… yet the old (incompatible) version is still visible at runtime.

Consequently, it seems to be an excepted norm in the python world that things may break after a “pip upgrade”, at least on a single tool.

How do python devs put up with this? Apparently there are a bunch of hacks scattered across countless projects to test at runtime for incompatible deps, even though they have already dutifully specified the compatible version in the dependencies list.

What a mess.

  • Piatro
    link
    fedilink
    English
    arrow-up
    6
    ·
    4 days ago

    My (limited) experience with the python ecosystem is: “Of course the built in package manager doesn’t work, you idiot, you should use X” where “X” is a different package manager and no two python devs agree on which is “best” or “most common”.