I did pip install tensorflow-gpu==1.12.3 because my GPU can only support CUDA 9, while the latest tensorflow-gpu==1.14.0 requires a minimum of CUDA 10. One of the package dependencies is tensorboard. I want to do pip install tensorflow. However, the latest version warns that a newer version of tensorboard must be installed, then automatically proceeded to uninstall the existing version and install the newer one. Is there a way to have pip halt or at least ask for confirmation instead of proceeding on its own in such a situation? I'm trying to figure out which is a compatible version of tensorflow that doesn't require newer versions of package dependencies shared with tensorflow-gpu. Edit ok just to clarify, this isn't a tensorflow-specific question, I'm just using it as an example because I just happen to be doing that right now. To generalise: I installed an older version of package A, which has a dependency on an older version of package B. I want to install package C, which also has a dependency on package B. However, the latest version of C requires the latest version of B. When I try to install C, it automatically uninstalled the older B and installed the newest version. How do I stop it from doing that? Right now my only workaround is to install a version of C, wait for it to automatically uninstall something, then interrupt the installation of C, and reinstall the version of the dependency package that was uninstalled. Then I step down to the next older version C, and repeat. Basically, a trial and error process. Is there a more proper and elegant solution? I'm fine with it giving a warning that C requires a newer version of B and then terminating at that point, or prompting for a confirmation before proceeding to uninstall, instead of doing it automatically without asking. I'm using PyCharm's venv, so alternatively I'm also fine if there's a way to revert the latest change to the environment i.e. uninstall C and whatever new dependency packages that's installed, reverting to the list of installed packages before I executed pip install C. Hopefully that doesn't sound too convoluted. Continue reading...