Closed WyriHaximus closed 4 years ago
I can also not reproduce the problem with PHP 7.4 and Xdebug installed, so this cause is still unknown:
docker run -it --rm -v `pwd`:/data --workdir=/data ubuntu bash
apt update
apt -y install software-properties-common
add-apt-repository ppa:ondrej/php
apt install -y php7.4-cli php7.4-xdebug php7.4-dom php7.4-mbstring
php -v
vendor/bin/phpunit
@clue pretty sure this has to do with the ordering of tests, when the tests are executed in the order they are in the DeferredTest
file it fails for me
@clue can you run it with --filter DeferredTest --debug
since the order seems to matter?
@WyriHaximus Not sure I follow what you're suggesting. The below command executes just fine:
$ docker run -it --rm -v `pwd`:/data --workdir=/data php:7.4 php -d memory_limit=-1 vendor/bin/phpunit --filter DeferredTest --debug
Does this work for you as well? Can you reproduce the problem locally? You mentioned some ordering issues, not sure how to reproduce this locally at the moment (plus I don't see anything changed in this PR in this regard).
@clue what is the output for you?
Getting the same (successful) output for origin/master and your PR checked out:
Are you seeing something different? If so, I would love find a way to reproduce this locally.
Together with @CharlotteDunois we've narrowed it down to it only happening when collecting code coverage
@clue @jsor ok took a bit longer than expected but this PR is now ready for review
@WyriHaximus Good to see this failure can be avoided by skipping some tests when code coverage is turned on, but I would still like to get a better understanding why this causes issues in the first place.
Same, but bht I'm not sure how easy it is to figure that out, and not sure if it's worth holding 3.0 off for.
Is this something that's somehow bugged in Xdebug and should be reported upstream or does this actually reveal some obscure memory issue in this library?
It only happens when you try to collect code coverage using xdebug from phpunit. This is why I'm added the run without code coverage to ensure we don't run into this bug when we don't collect code coverage. To be honest, I have no clue whether this is in this package, or upstream in xdebuyg
@WyriHaximus Probably worth a try to use pcov instead of xdebug to collect coverage to see whether it's an upstream bug?
@CharlotteDunois issues still persist when using ext-pcov
, so it's either in this package, or in phpunit :(.
Closed via #162
@WyriHaximus Thanks for looking into this, the failing test case due to a garbage reference on PHP 7.4 only is interesting.
I can not reproduce this problem locally using this Docker container:
It looks like this could be related to the particular installation or some extensions (xdebug)? Do you have any further insights?