In the context of dependency management with tools like Composer, “minimum-stability” determines the least stable version of a package that Composer will consider during dependency resolution. “dev” represents the least stable, while “stable” represents the most stable.
Here’s a breakdown:
dev
:This is the least stable version, typically used for development and testing. It’s not recommended for production environments due to potential instability and breaking changes.stable
:This signifies the most stable version, suitable for production use. It indicates a release that has been thoroughly tested and is considered reliable.
When minimum-stability
is set to dev
, Composer will consider all versions, including development branches (like dev-main
) and alpha/beta releases, if no stable version is available. If minimum-stability
is set to stable
, only stable releases will be considered, and development versions will be ignored.
For example, if you have minimum-stability: dev
and prefer-stable: true
, Composer will try to install stable versions first, but if a stable version isn’t available, it will fall back to a development version.