Phpunit: PHP_Timerとの非互換性

作成日 2018年02月13日  ·  3コメント  ·  ソース: sebastianbergmann/phpunit

| Q | A
| -------------------- | ---------------
| PHPUnitバージョン| ~4.7.0 \|\| ~5.0.0 \|\| ~5.1.0 \|\| ~5.2.0
| PHPバージョン| 関係ない
| インストール方法| 作曲

PHPタイマーv2がリリースされました。 指定したバージョンと、PHPUnitが必要となるように、それは、前述のPHPUnitと互換性がありません... >= 1の代わりに^1 。 そのため、(レガシープロジェクトでの)そのPHPUnitの新規インストールは、実行中に次のようにクラッシュします。
https://travis-ci.org/PHPUnitGoodPractices/Traits/jobs/341148960#L978

PHPの致命的なエラー:キャッチされないエラー:クラス 'PHP_Timer'が/ home / travis / build / PHPUnitGoodPractices / Traits / vendor / phpunit / phpunit / src / Framework / TestResultに見つかりません。 php:577

これは、PHPUnitを直接アップグレードする余裕がない特にレガシーPHPプロジェクトに影響を与えます。

はい、これはメンテナンスされていないバージョンの問題と見なされ、箱から出して閉じることができることを私は知っていますが、php-timermajorがリリースされたのは最終的な問題です。

最も参考になるコメント

影響を受けるレガシーPHPUnitバージョンの悲しいユーザーのためのソリューション:

composer.json追加:

    "conflict": {
        "phpunit/php-timer": ">=2",
    }

これにより、他のPHPUnitバージョンと同様に、基本的にphp-timerのPHPUnitreuirementが^ 1になります。

全てのコメント3件

影響を受けるレガシーPHPUnitバージョンの悲しいユーザーのためのソリューション:

composer.json追加:

    "conflict": {
        "phpunit/php-timer": ">=2",
    }

これにより、他のPHPUnitバージョンと同様に、基本的にphp-timerのPHPUnitreuirementが^ 1になります。

PHPUnitの4.7は残念ながらあり"phpunit/php-timer": ">=1.0.6"その中にcomposer.json 。 ただし、PHPUnit4.7はずっと前にPHPUnit4.8に取って代わられました。 PHPUnit4.7からPHPUnit4.8に更新しない理由はありません。 PHPUnit 4.8のcomposer.json"phpunit/php-timer": "^1.0.6"れています。

また、PHPUnit 5.0、PHPUnit 5.1、およびPHPUnit5.2についても言及しています。 これらのバージョンはすべて、 composer.json "phpunit/php-timer": "^1.0.6"れています。

私がここで何をすることを期待しますか? composer.json更新された新しいバージョンのPHPUnit 4.7をリリースしますか? 申し訳ありませんが、それは起こりません。 https://github.com/sebastianbergmann/phpunit/issues/3008#issuecomment-365430405で提供したソリューションで十分です。 もちろん、正しい解決策は、少なくともPHPUnit 4.8に更新するか、PHPUnit4.7のPHARを使用することです。

また、PHPUnit 5.0、PHPUnit 5.1、およびPHPUnit5.2についても言及しています。 これらのバージョンはすべて、composer.jsonに「phpunit / php-timer」:「^ 1.0.6」が含まれています。

いいえ、 5.2.x-devphpunit/php-timer: ^1.0.6
しかし、5.2の最後の安定したリリース、
5.2.12phpunit/php-timer: >=1.0.6
そのため、5.0.x、5.1.x、5.2.xも影響を受けます。

PHPタイマーがリリースされたばかりですが、リリースの事実により、会社やサイドプロジェクトで大きな打撃を受けたレガシーPHPUnitに問題が発生したため、このスレッドの目的は、問題を提起し(これもヒットしたユーザーが見つけられるようにするため)、提供することでした。考えられる回避策。

最初の投稿で述べたように、phpunit4 / 5の新しいリリースは期待していません。 ありがとう!

このページは役に立ちましたか?
0 / 5 - 0 評価