The final post in Allowing Multiple Versions of Same Python Package in PYTHONPATH has the current state of affairs on this. Quoting myself:
Beyond that, I don’t think we’re contributing anything new to that discussion here.
And, yes, the new resolver is stricter which is why 20.3+ is going to be more painful. And, also, the older resolver still prints out that it installed with conflicts (see PR 5000 on pip).
Realistically, the only option you have if you really want to have conflicting dependencies is running pip with --no-deps, which opts out of all dependency resolution. That makes it clear that you’re opting into whatever solution for the dependency hell that you’ve determined works for you.