Skip to content

[Console] Skip broken tests on OSX #57619

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from

Conversation

theofidry
Copy link
Contributor

Q A
Branch? 6.4 (and probably bellow)
Bug fix? no
New feature? no
Deprecations? no
Issues ø
License MIT

On OSX running the following command results in the test being abrutply terminated:

./phpunit src/Symfony/Component/Console/

I could narrow it down to src/Symfony/Component/Console/Tests/ApplicationTest.php. I think this is a bug from the pcntl extensions as running any problematic test individual result in a successful test and I cannot find any static state that should interfere with this (at least at the Symfony code level).

My observations are that the application instance, which is the $this, of this closure, changes when executing the whole test case.

I'm unsure where to start to report this to PHP and would appreciate some help there or at least to confirm this is not a Symfony issue but a PHP one.

Meanwhile I could observe this behaviour on different machines including @chalasr. So I'm proposing to disable those problematic tests for OSX meanwhile as otherwise the test suite is not even executable on OSX.

FWIW ran it with:

OSX: 14.5 (23F79) on M3
PHP: 8.3.8
pcntl enabled (compiled PHP with --enable-pcntl)

@theofidry theofidry requested a review from chalasr as a code owner July 1, 2024 17:21
@carsonbot carsonbot added this to the 7.2 milestone Jul 1, 2024
@theofidry theofidry changed the base branch from 7.2 to 6.4 July 1, 2024 17:22
On OSX running the following command results in the test being abrutply
terminated:

```shell

```
@OskarStark OskarStark changed the title [Console] test: Skip broken tests on OSX [Console] Skip broken tests on OSX Jul 4, 2024
@symfony symfony deleted a comment from carsonbot Jul 4, 2024
@chalasr
Copy link
Member

chalasr commented Jul 13, 2024

Experiencing the same issue on MacOS. In order to keep track of this and not skip the test indefinitely, should we have some bug report open on php-src linking to the test case?

@theofidry
Copy link
Contributor Author

should we have some bug report open on php-src linking to the test case?

Wouldn't that require to narrow down the reproducer though? Linking to a framework test suite feels... lazy, especially since you cannot easily tell if it's the framework doing something wrong or PHP.

@smnandre
Copy link
Member

Well, i just tried on 6.4 & 7.1, no problem on my side

+ PHP 8.3.9
macOS 14.5 (M1)
pcntl enabled 

... maybe the last bugfix fixed the bug ?

@chalasr
Copy link
Member

chalasr commented Jul 20, 2024

Still broken on my side even after upgrading (6.4, 7.1, 7.2 with latest PHP 8.2, 8.3)
Screenshot 2024-07-20 at 18 25 50

@xabbuh
Copy link
Member

xabbuh commented Jul 22, 2024

I have debugged the failures locally. The reason for the failure is that our handlers for the SIGUSR1 and SIGUSR2 signals are never reset as the signal value on Mac OS is not in the range of signals for which we reset the signal handlers. Let's fix the tests instead: #57798

@xabbuh
Copy link
Member

xabbuh commented Jul 22, 2024

closing in favour of #57798, thanks for making us aware of this @theofidry

@xabbuh xabbuh closed this Jul 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy