Managing Python dependencies
Throughout this book, we've installed libraries using pip
to add some useful features to our application: FastAPI, of course, but also SQLAlchemy, Tortoise ORM, Pytest, and so on. When deploying a project to a new environment, such as a production server, we have to make sure all those dependencies are installed for our application to work properly. This is also true if you have colleagues that also need to work on the project: they need to know the dependencies they must install on their machines.
Fortunately, pip
comes with a solution for this so that we don't have to remember all this in our heads. Indeed, most Python projects define a requirements.txt
file, which contains a list of all Python dependencies. It usually lives at the root of your project. pip
has a special option for reading this file and installing all the needed dependencies.
When you already have a working environment, such as the one we've used since the beginning...