What are the differences?
In many places they used interchangeably as synonyms but I think they are different. What is the key difference in short?
A dependency manager operates at source code level. It's role is to setup the right dependencies for a particular application. It therefore implies that a dependency manager is something used by developers, not users or system admin. Thus, a dependency manager is project specific.
Package dependencies and incompatibilities can be defined with two of the optional package information files, compver and depend . Delivering a compver file lets you name previous versions of your package that are compatible with the one being installed.
Pip comes with Python versions later than 2.7. 9, and is the default go-to packaging tool. However, its dependency management capabilities are pretty basic, and its speed is considered slow. By default, Pip installs everything globally.
pip is the de facto package manager in the Python world. It can install packages from many sources, but PyPI is the primary package source where it's used. When installing packages, pip will first resolve the dependencies, check if they are already installed on the system, and, if not, install them.
TLTR: Package Manager is used for SYSTEM and Dependency Manager for PROJECT
Package Manager - is used to configure system, ie to setup your development environment and with these settings you can build many projects.
Dependency Manager - Is specific to project. You manage all dependencies for a single project and those dependencies are going to be saved on your project. When you start another project you should manage your dependencies again.
EXAMPLE: In PHP world there is COMPOSER as dependency manager and PEAR as package manager. When using composer all your settings and extensions are for single project where pear settings to setup new extension and library to php core.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With