Phpunit: عدم التوافق مع PHP_Timer

تم إنشاؤها على ١٣ فبراير ٢٠١٨  ·  3تعليقات  ·  مصدر: sebastianbergmann/phpunit

| س | أ
| -------------------- | ---------------
| إصدار PHPUnit | ~4.7.0 \|\| ~5.0.0 \|\| ~5.1.0 \|\| ~5.2.0
| إصدار PHP | غير مرتبط
| طريقة التثبيت | ملحن

تم إصدار PHP Timer v2. إنه غير متوافق مع PHPUnit المذكورة ، حيث تتطلب PHPUnit مع إصدار معين ... >= 1 بدلاً من ^1 . لذلك ، سيتعطل أي تثبيت جديد لوحدة PHPUnit (في مشروع قديم) أثناء التنفيذ مع:
https://travis-ci.org/PHPUnitGoodPractices/Traits/jobs/341148960#L978

خطأ فادح في PHP: خطأ لم يتم اكتشافه: الفئة 'PHP_Timer' غير موجودة في / home / travis / build / PHPUnitGoodPractices / السمات / البائع / phpunit / phpunit / src / Framework / TestResult. فب: 577

سيصيب بشكل خاص مشاريع PHP القديمة التي لا تستطيع تحمل ترقية PHPUnit مباشرة.

نعم ، أنا أعلم أنه سيتم اعتبار هذا الأمر على أنه إصدار غير مُحتفظ به ومن أجل ذلك يمكن إغلاقه خارج منطقة الجزاء ، ومع ذلك فقد تم إصدار php-timer major في النهاية.

التعليق الأكثر فائدة

حل للمستخدمين الحزينين لإصدارات PHPUnit القديمة المتأثرة:

أضف إلى composer.json :

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

سيؤدي هذا بشكل أساسي إلى جعل PHPUnit reuument لـ php-timer ^ 1 ، كما هو الحال في إصدارات PHPUnit الأخرى

ال 3 كومينتر

حل للمستخدمين الحزينين لإصدارات PHPUnit القديمة المتأثرة:

أضف إلى composer.json :

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

سيؤدي هذا بشكل أساسي إلى جعل PHPUnit reuument لـ php-timer ^ 1 ، كما هو الحال في إصدارات PHPUnit الأخرى

للأسف PHPUnit 4.7 لديها "phpunit/php-timer": ">=1.0.6" في composer.json . ومع ذلك ، تم استبدال PHPUnit 4.7 بـ PHPUnit 4.8 منذ فترة طويلة. لا يوجد سبب لعدم التحديث من PHPUnit 4.7 إلى PHPUnit 4.8. PHPUnit 4.8 بها "phpunit/php-timer": "^1.0.6" في composer.json .

لقد ذكرت أيضًا PHPUnit 5.0 و PHPUnit 5.1 و PHPUnit 5.2. كل هذه الإصدارات بها "phpunit/php-timer": "^1.0.6" في composer.json .

ماذا تتوقع مني أن أفعل هنا؟ قم بتحرير إصدار جديد من PHPUnit 4.7 يحتوي على تحديث composer.json ؟ آسف ، لكن هذا لن يحدث. الحل الذي قدمته في https://github.com/sebastianbergmann/phpunit/issues/3008#issuecomment -365430405 يجب أن يكون جيدًا بدرجة كافية. بالطبع ، سيكون الحل الصحيح هو التحديث إلى PHPUnit 4.8 على الأقل أو استخدام PHAR من PHPUnit 4.7.

لقد ذكرت أيضًا PHPUnit 5.0 و PHPUnit 5.1 و PHPUnit 5.2. كل هذه الإصدارات لها "phpunit / php-timer": "^ 1.0.6" في composer.json.

لا ، 5.2.x-dev لديه phpunit/php-timer: ^1.0.6 ،
ولكن آخر إصدار مستقر يبلغ 5.2 ،
5.2.12 لديه phpunit/php-timer: >=1.0.6
بالنسبة لذلك 5.0.x و 5.1.x و 5.2.x تتأثر أيضًا.

تم إطلاق PHP Timer للتو ، وأدت حقيقة الإصدار إلى مشكلة في PHPUnit القديمة التي ضربت بشدة في شركتي والمشاريع الجانبية ، لذلك كان الغرض من هذا الموضوع هو إثارة المشكلة (بحيث يمكن العثور عليها من قبل المستخدمين الذين قاموا أيضًا بضربها) وتقديمها الحل الممكن.

كما قلت في المنشور الأولي ، لا أتوقع إصدارًا جديدًا من phpunit 4/5. شكرا!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات