Managing contents of requirements.txt for a Python virtual environment
If you only want to see what packages you have installed then just do pip freeze. 
but if you want all these packages in your requirement.txt, then do 
pip freeze > requirements.txt
So I am creating a brand new Flask app from scratch. As all good developers do, my first step was to create a virtual environment.
The first thing I install in the virtual environment is Flask==0.11.1. Flask installs its following dependencies:


click==6.6
itsdangerous==0.24
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.11.11
wheel==0.24.0


Now, I create a requirements.txt to ensure everyone cloning the repository has the same version of the libraries. However, my dilemma is this:

Do I mention each of the Flask dependencies in the requirements.txt along with the version numbers 
 OR
Do I just mention the exact Flask version number in the requirements.txt and hope that when they do a pip install requirements.txt, Flask will take care of the dependency management and they will download the right versions of the dependent libraries