"minimumum-stability" 键在包的 composer.json 中有什么作用?

What does the "minimumum-stability" key do when present in a package's composer.json?

我经常遇到包含 minimum-stability 密钥的特定软件包的 composer.json。下面转载一个例子:

{
  "name": "drupal/modulename",
  "type": "drupal-module",
  "description": "Example.",
  "license": "GPL-2.0-or-later",
  "minimum-stability": "dev",
}

我明白当它出现在站点的 root composer.json 中时它的作用(即它会禁止安装稳定性低于规定的软件包) .

但是当 "minimum-stability": "dev" 出现在包裹的 composer.json 中时,它会做什么?

在上面的例子中,没有要求。如果需要 个其他包,它会做什么吗?

我只熟悉 Drupal 生态系统,我在其中看到了很多。我不认为这很重要,因为使用 composer 来管理依赖项也被其他 PHP 框架大量使用。

在非根 composer.json 中出现时它什么都不做。

docs 说:

minimum-stability (root-only)

对于包,只有将包安装为根项目(例如,使用 git clone 然后 composer install,而不是将其安装在现有项目上,它才会有任何效果composer require).

的项目