wikimedia / composer-merge-plugin

Merge one or more additional composer.json files at Composer runtime
MIT License
926 stars 160 forks source link

PHP8 support #195

Closed nicodmf closed 3 years ago

nicodmf commented 3 years ago

As php8 is the new official version, could you please support it ?

reedy commented 3 years ago

Have you tested it on PHP 8.0? Is anything explicitly broken?

The require of php in both master and the 1.4.1 tag won't stop installation on PHP 8.0...

reedy commented 3 years ago

I add testing on PHP 8.0 in https://github.com/wikimedia/composer-merge-plugin/pull/197

Tests pass, although noisy due to warnings about deprecations of things that would be removed in PHPUnit 10

reedy commented 3 years ago
> phpunit --log-junit=reports/unitreport.xml --coverage-text --coverage-html=reports/coverage --coverage-clover=reports/coverage.xml

PHPUnit 9.5.0 by Sebastian Bergmann and contributors.

Warning:       XDEBUG_MODE=coverage or xdebug.mode=coverage has to be set

Warning:       Your XML configuration validates against a deprecated schema.

Suggestion:    Migrate your XML configuration using "--migrate-configuration"!

WWWWW....WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW    62 / 62 (100%)

Time: 00:00.273, Memory: 18.00 MB

There were 58 warnings:

1) Wikimedia\Composer\LoggerTest::testVeryVerboseDebug

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

2) Wikimedia\Composer\LoggerTest::testNotVeryVerboseDebug

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

3) Wikimedia\Composer\LoggerTest::testVerboseInfo

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

4) Wikimedia\Composer\LoggerTest::testNotVerboseInfo

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

5) Wikimedia\Composer\LoggerTest::testWarning

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

6) Wikimedia\Composer\Merge\PluginStateTest::testLocked

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

7) Wikimedia\Composer\Merge\PluginStateTest::testDumpAutoloader

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

8) Wikimedia\Composer\Merge\PluginStateTest::testOptimizeAutoloader

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

9) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@dev" ('1.0@dev', 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

10) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "dev-" ('dev-master', 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

11) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "-dev" ('dev-master#2eb0c09', 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

12) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@alpha" ('1.0@alpha', 15)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

13) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@beta" ('1.0@beta', 10)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

14) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@RC" ('1.0@RC', 5)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

15) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@stable" ('1.0@stable', 0)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

16) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "-dev & stable" ('1.0-dev as 1.0.0, 2.0', 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

17) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@dev | stable" ('1.0@dev || 2.0', 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

18) Wikimedia\Composer\Merge\StabilityFlagsTest::testExplicitStability with data set "@rc | @beta" ('1.0@rc || 2.0@beta', 10)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

19) Wikimedia\Composer\Merge\StabilityFlagsTest::testLowestWins with data set "default" ('1.0@dev', 10, 20)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

20) Wikimedia\Composer\MergePluginTest::testSubscribedEvents

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

21) Wikimedia\Composer\MergePluginTest::testOneMergeNoConflicts

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

22) Wikimedia\Composer\MergePluginTest::testMergeWithReplace

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

23) Wikimedia\Composer\MergePluginTest::testMergeWithIgnore

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

24) Wikimedia\Composer\MergePluginTest::testMergeWithIgnoreAndReplace

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

25) Wikimedia\Composer\MergePluginTest::testRecursiveIncludes

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

26) Wikimedia\Composer\MergePluginTest::testRecursiveIncludesDisabled

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

27) Wikimedia\Composer\MergePluginTest::testOneMergeWithConflicts with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

28) Wikimedia\Composer\MergePluginTest::testOneMergeWithConflicts with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

29) Wikimedia\Composer\MergePluginTest::testMergedRepositories

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

30) Wikimedia\Composer\MergePluginTest::testPrependRepositories

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

31) Wikimedia\Composer\MergePluginTest::testUpdateStabilityFlags with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

32) Wikimedia\Composer\MergePluginTest::testUpdateStabilityFlags with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

33) Wikimedia\Composer\MergePluginTest::testMergedAutoload

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

34) Wikimedia\Composer\MergePluginTest::testMergeExtra with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

35) Wikimedia\Composer\MergePluginTest::testMergeExtra with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

36) Wikimedia\Composer\MergePluginTest::testMergeExtraConflict

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

37) Wikimedia\Composer\MergePluginTest::testMergeExtraConflictReplace

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

38) Wikimedia\Composer\MergePluginTest::testMergeExtraDeep with data set #0 ('Replace', true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

39) Wikimedia\Composer\MergePluginTest::testMergeExtraDeep with data set #1 ('', false)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

40) Wikimedia\Composer\MergePluginTest::testMergeScripts with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

41) Wikimedia\Composer\MergePluginTest::testMergeScripts with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

42) Wikimedia\Composer\MergePluginTest::testMergeScriptsConflict

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

43) Wikimedia\Composer\MergePluginTest::testMergeScriptsConflictReplace

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

44) Wikimedia\Composer\MergePluginTest::testOnPostPackageInstall with data set #0 ('wikimedia/composer-merge-plugin', true, true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

45) Wikimedia\Composer\MergePluginTest::testOnPostPackageInstall with data set #1 ('wikimedia/composer-merge-plugin', true, false)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

46) Wikimedia\Composer\MergePluginTest::testOnPostPackageInstall with data set #2 ('foo/bar', false, false)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

47) Wikimedia\Composer\MergePluginTest::testHasBranchAlias with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

48) Wikimedia\Composer\MergePluginTest::testHasBranchAlias with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

49) Wikimedia\Composer\MergePluginTest::testCorrectMergeOrderOfSpecifiedFilesAndGlobFiles

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

50) Wikimedia\Composer\MergePluginTest::testSelfVersion

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

51) Wikimedia\Composer\MergePluginTest::testSelfVersionNoRootVersion with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

52) Wikimedia\Composer\MergePluginTest::testSelfVersionNoRootVersion with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

53) Wikimedia\Composer\MergePluginTest::testMergedStabilityFlagsRespectsMinimumStability

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

54) Wikimedia\Composer\MergePluginTest::testMergeDevFalse

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

55) Wikimedia\Composer\MergePluginTest::testMissingRequireThrowsException

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

56) Wikimedia\Composer\MergePluginTest::testRequire

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

57) Wikimedia\Composer\MergePluginTest::testVersionConstraintWithRevision with data set "with INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

58) Wikimedia\Composer\MergePluginTest::testVersionConstraintWithRevision with data set "without INIT event" (true)

PHPUnit\Framework\TestCase::prophesize() is deprecated and will be removed in PHPUnit 10. Please use the trait provided by phpspec/prophecy-phpunit.

WARNINGS!

Tests: 62, Assertions: 628, Warnings: 58.

> phpcs --encoding=utf-8 --standard=PSR2 --report-checkstyle=reports/checkstyle-phpcs.xml --report-full --extensions=php src/* tests/phpunit/*

The command "composer test" exited with 0.
nicodmf commented 3 years ago

Thanks for your tests, i close the issue :)