atheon/package-versions

提供对已安装包版本的快速查询(无运行时IO)

资助包维护!
Ocramius
Tidelift

2.6.0 2022-10-10 14:46 UTC

README

给俄罗斯 🇷🇺 人民的信

如果您目前居住在俄罗斯,请阅读 此信息

目的

此实用工具提供了对composer依赖项版本信息的快速和便捷访问。

这些信息来源于在 composer installcomposer update 过程中生成的 composer.lock 文件。

$version = \PackageVersions\Versions::getVersion('ocramius/package-versions');

var_dump($version); // 1.0.0@0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33

Mutation testing badge Type Coverage Downloads Packagist Dependencies

安装

composer require ocramius/package-versions

建议您在 composer.json 中使用 优化的 composer 自动加载器(以防止访问 PackageVersions\Versions API 时的自动加载 I/O)

...
    "config": {
        "optimize-autoloader": true
    },
...

如果您手动通过 CLI 生成自动加载器,请使用 --optimize 标志

composer dump-autoload --optimize

用例

此存储库实现了 PackageVersions\Versions::getVersion(),在调用它时不会发生IO,因为包版本列表是在 composer 安装期间编译的。

当您想生成从特定依赖项的当前版本计算出的资产/代码/工件时,这特别有用。在运行时检查包的安装版本将非常昂贵,而此包可以减轻这一点。

ocramius/package-versions for 企业

作为 Tidelift 订阅的一部分提供。

ocramius/package-versions 的维护者和其他数千个包的维护者正在与 Tidelift 合作,为构建应用程序时使用的开源依赖项提供商业支持和维护。节省时间,降低风险,并提高代码健康度,同时支付您使用的确切依赖项的维护者。 了解更多。.

您还可以通过 ocramius@gmail.com 联系维护者,以解决与您的私人项目中此包相关的问题。