I maintain a package
alpha, which depends on
beta also depends on
gamma. All packages primarily support Python3.8+, but retain backwards compatibility to Python2.7 for legacy users.
beta have both been upgraded to use a new API in
While the new release of
gamma, the current
setup.py file defines an incompatibility with the new branch of
gamma under Python 2.7-3.5 – and will raise a VersionConflict because it wishes to install an earlier version of
gamma. This earlier version is not an option, because of API changes.
All three packages are compatible with the earlier environments and each other, and all packages pass all tests under the earlier environments. The incompatibility is entirely dictated by the “requires” directive in
Short of forking
beta to adjust
setup.py until a PR would hopefully be accepted, is there any way to force the requirement restrictions to be ignored? This is causing a nightmare for my CI tests.
I’ve never had to accomplish this before, and I haven’t been able to find any good documentation for this scenario online.