-
Notifications
You must be signed in to change notification settings - Fork 144
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
Run Pint analysis in Parallel #275
Comments
Thanks for your proposal! Right now we don't have plans for this. Should you wish, you're free to attempt a PR yourself. Thanks! |
Pint should be able to support running in parallel. I only see it running single-threaded as well. |
As the Autor of the PR, I hoped, that pint would run in parallel without much of a hassle. But there could be more adjustments which need to be done, like something with building the binary. (This needs experimentation time and probably a good understanding about processes) You are always free to try a PR, to make adjustments, so that pint actually runs in parallel. As this is only an improvement. |
Looked a bit into this and I think there are several issues. As initially mentioned above, due to the direct usage of The bigger issue is the way how processes are created here https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/src/Runner/Parallel/ProcessFactory.php#L27 In a phar I don't see a clean way to solve this using the current approach, without adjustments to PHP-CS-Fixer. |
In a project with ~5000 php files to analyze, it takes several minutes to run Pint. It feels like a major downgrade when switching from native php-cs-fixer. |
Pint Version
v1.16.0
PHP Version
8.3.7
Description
Currently pint is always running in sequential mode. Running in parallel would be very nice!
Problem probably related to FixCode::execute() line 60 missing arguments for ParallelConfig and InputInterface.
Steps To Reproduce
Normal execute, use top to verify that only 1 php process is running instead of multiple.
The text was updated successfully, but these errors were encountered: