Force PIP ignore dependency conflicts

Viewed 1168

I have a a dependency on a (internal) package with a long list of dependencies, most of which I don't care about (it should really be cleaned up and split into smaller packages, I know), some of them have pinned really old versions, that conflict with some of my other dependencies.

It used to work fine for me with an older version of pip (18.0 I think): I just had this package in the end of the requirements.txt, and it would install my newer versions of the conflicting dependencies, and then just warn me about the conflict, which I don't care about.

But now (with 21.1.2), I am getting an error like:

ERROR: Cannot install -r server/requirements.txt (line 41), my-package==2021.4.1.dev44+gd452819a91.d20210528 and pyyaml==5.4.1 because these package versions have conflicting dependencies.

The conflict is caused by:
    The user requested pyyaml==5.4.1
    openapi-spec-validator 0.2.8 depends on PyYAML>=5.1
    dmy-package 2021.4.1.dev44+gd452819a91.d20210528 depends on pyyaml==3.12

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies

I wonder if there is way to get the old behavior back?

I know I could go back to 18.0 ... but that one seems to have a different problem: when I try to give it a dev version with my-package~=2021.4.1.dev, it dies with AttributeError: 'NoneType' object has no attribute 'netloc'. This seems to be fixed in the latest version, so I am looking for a way to upgrade.

0 Answers
Related