pip freeze does not show all installed packages
Solution 1
I just tried this myself:
create a virtualenv in to the "env" directory:
$virtualenv2.7 --distribute env
New python executable in env/bin/python
Installing distribute....done.
Installing pip................done.
next, activate the virtual environment:
$source env/bin/activate
the prompt changed. now install fabric:
(env)$pip install fabric
Downloading/unpacking fabric
Downloading Fabric-1.6.1.tar.gz (216Kb): 216Kb downloaded
Running setup.py egg_info for package fabric
...
Successfully installed fabric paramiko pycrypto
Cleaning up...
And pip freeze
shows the correct result:
(env)$pip freeze
Fabric==1.6.1
distribute==0.6.27
paramiko==1.10.1
pycrypto==2.6
wsgiref==0.1.2
Maybe you forgot to activate the virtual environment? On a *nix console type which pip
to find out.
Solution 2
You can try using the --all
flag, like this:
pip freeze --all > requirements.txt
Solution 3
Although your problem was specifically due to a typo, to help other users:
pip freeze
doesn't show the dependencies that pip depends on. If you want to obtain all packages you can use pip freeze --all
or pip list
.
Solution 4
Adding my fix in addition of above fix also ,
I was also facing the same issue on windows,even after activating the virtualenv too pip freeze
was not giving me all list of installed packages. So i upgraded my pip with python -m pip install --upgrade pip
command and then used pip freeze
.
This time it worked and gave me all list of installed packages.
Solution 5
If you have redirected all the pre-installed packages in a file named pip-requirements.txt then it is pretty simple to fix the above issue.
1) Delete your virtualenv folder or create new one (I am giving it a name as venv)
rm -rf venv && virtualenv venv
2) Install all the requirements/dependencies from the pip-requirements.txt
pip install -r pip-requirements.txt
3) Now you can check the installed packages for your Django application
pip freeze
4) If you had forgotten to update your requirements file(pip-requirements.txt), then install fabric again (Optional Step)
Note: After installing any dependency for your Django app, always update the requirements in any file as follows (make sure your virtualenv is activated)
pip freeze > pip requirements.txt
That's it.
Related videos on Youtube
blueFast
Updated on September 14, 2022Comments
-
blueFast about 1 year
I am using a
virtualenv
. I havefabric
installed, withpip
. But apip freeze
does not give any hint about that. The package is there, in myvirtualenv
, but pip is silent about it. Why could that be? Any way to debug this? -
blueFast over 10 yearsOooooops. I was doing (silly me)
pip freeze | grep fabric
(I have lots of packets installed). I could swear I have scanned manually the whole list, but somehow I skipped that. Strange that it is installed asFabric
, but anyway not a very good performance on my side. -
mawimawi over 10 years
grep -i
is my friend too :) -
blueFast over 10 yearsyep! usually I would run
grep -i
before trying anything else, but in this case I was so convinced that it should befabric
that I did not even consider that. I mean, who on thefabric
team came up with the idea of breaking a years-long tradition of using lower case for package names? :) Specially when the package is calledfabric
onpypi
. -
mawimawi over 10 yearsMaybe the same people who register
django
asDjango
?