依存関係の適切なバージョンの文字列を取得するための小さな独立したラッパー。
^1.5 || ^2.0の制約を付けて必須にすることをお勧めします。 ^1.5 || ^2.0 、エンド ユーザーが Composer 2 にすぐにアップグレードする必要がなく、すべての機能を利用できます。インストールするには、Composer を使用します。
composer require 'jean85/pretty-package-versions:^1.5 || ^2.0'composer.jsonで直接次のようにします。 {
"require" : {
"jean85/pretty-package-versions" : " ^1.5 || ^2.0 "
}
}このパッケージは、ocramius/package-versions の薄いラッパーとして生まれました。 Composer 2 の登場により、 ComposerInstalledVersions直接使用できるようになったため、これは必要なくなりました。これにより、次のバージョン互換性チャートが作成されました。
pretty-package-versions | 作曲家 | 使用される依存関係 |
|---|---|---|
| 1.2まで | 1.xのみ | ocramius/package-versions |
| 1.3 | 1.x と 2.x の両方 | composer/package-versions-deprecated 、 ocramius/package-versionsのフォーク |
| 1.4 | 2.x のみ | なし |
| 1.5+ | 1.x と 2.x の両方 | composer/package-versions-deprecated 、 ocramius/package-versionsのフォーク |
| 2.0 | 2.x のみ | なし |
つまり、このパッケージを使用すると、ユーザーを特定の Composer バージョンに縛ることなく、スムーズなアップグレード パスで適切なバージョンを入手できるようになります。 #21 での議論と関連する問題のため、1.4 のリリースは取り消されました。
このパッケージは、単一クラスJean85PrettyVersionsで使用する必要があります。この例のように、要求されたパッケージのJean85Versionオブジェクトを返す単一のメソッドが提供されます。
use Jean85 PrettyVersions ;
$ version = PrettyVersions:: getVersion ( ' phpunit/phpunit ' );
$ version -> getPrettyVersion (); // '6.0.0'
$ version -> getShortVersion (); // '6.0.0'
$ version -> getVersionWithShortReference (); // '6.0.0@fa5711'
$ version = PrettyVersions:: getVersion ( ' roave/security-advisories ' );
$ version -> getPrettyVersion (); // 'dev-master@7cd88c8'
$ version -> getShortVersion (); // 'dev-master'
$ version -> getVersionWithShortReference (); // 'dev-master@7cd88c8' Versionクラスには__toString()メソッドも実装されているため、簡単に文字列にキャストできます。結果はgetPrettyVersion()メソッドを呼び出した場合と同じになります。
Jean85Versionクラスには、次のパブリック メソッドが利用可能です。
getPrettyVersion(): string : 要求されたパッケージがタグ付きバージョンの場合、短いバージョンのみを返します。そうでない場合は、 getVersionWithShortCommit()と同じ結果が出力されます。
getShortVersion(): string : パッケージのバージョンのみを返します (つまり、 6.0.0 、 v.1.7.0 、 99999-devなど)。
getReference(): stringインストールされたパッケージの参照、通常は完全な Git コミット ハッシュを返します。
getShortReference(): stringリファレンスの短縮バージョンを返します (例: fa5711 )
getVersionWithShortReference(): string : パッケージのバージョンと、その後に参照の短いバージョンが返されます (つまり、 6.0.0@fa5711 )
getPackageName(): string元のパッケージ名を返します
getFullVersion(): string PackageVersionsVersions::getVersion()と同じ値を返します。
__toString(): string getPrettyVersion()と同じものを返します。
1.5 リリース以降、2 つの追加メソッドが利用可能になりました。
PrettyVersions::getRootPackageName現在の (ルート) プロジェクトのパッケージ名を返します。つまり、基本的には、 composer.json内のnameプロパティ値です。これはPackageVersionsVersions::ROOT_PACKAGE_NAMEの代わりに使用される互換性レイヤーであり、一時的な依存関係となり、存在することが保証されません。PrettyVersions::getRootPackageVersion 、 PrettyVersions::getVersion(PrettyVersions::getRootPackageName())へのショートカットです。名前にreferenceが含まれるメソッドは、Composer 2 API から取得したデータの意味をより適切に反映するために、2.0 リリースで導入されました。動作は古いメソッドと同じです。これらのメソッドはまだ存在しますが、廃止されました。
| 新しい方法 | 古い、非推奨のメソッド |
|---|---|
Version::getReference() | Version::getCommitHash() |
Version::getShortReference() | Version::getShortCommitHash() |
Version::getVersionWithShortReference() | Version::getVersionWithShortCommit() |