-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Add an fpm-zts build #1344
base: master
Are you sure you want to change the base?
Add an fpm-zts build #1344
Conversation
@tianon my apologies if this is beating a dead horse, but would appreciate your thoughts here. |
please execute apply-templates.sh once and commit the resulting changes to the other files |
@DracoBlue I ran that, but it just changes some file modes in a way that doesn't appear to make a lot of sense, might be some kind of platform issue since I'm on Mac OS running inside of a docker container using a bind mount. Deletes a couple files and effectively does a
I had to do a considerable amount of reverse engineering of the entire CI process to really understand what was going on in the build here, and thought that this step would be done there. Could you tell me if this |
It seems like the versions.json needs to be modified (see d461611#diff-2b39d33506bc7a34cef4b9ebf4cf8b1e3a5532f2131ceb37011b94261cec5f8cR53 as reference) to make clear which php version you want to use with fpm-zts. |
Previous invocation of `sed -i` would cause broken behavior on Mac OS. BSD sed requires a backup file for in-place editing. See https://stackoverflow.com/a/22084103/7969681 for details.
@DracoBlue my problem was with Docker's VirtioFS file sharing for Mac OS. Seems to break the behavior of While I hadn't figured it out yet, the behavior that brought me into docker to run the scripts in the first place is that Line 82 in cc901e9
I applied this cross-platform workaround as it's the shortest fix to that problem. |
We unfortunately do not have build server bandwidth to support another variation of PHP builds, so we cannot currently do I have a similar open issue about adding ZTS to the apache-based images (#742), but the conclusion is that it was not really supported usage and had performance implications. I would like to approve just enabling ZTS in the |
@yosifkit, I understand the performance implications of adding this feature, however due to its importance, I would like to discuss the possibility of enabling ZTS in the FPM images, as FPM-ZTS. Are there any sponsors who could provide the necessary resources to make this happen? |
If the problem is a build slot availability and enabling ZTS on base FPM image isn't feasible, what about something like replacing plain It'd have some unused files laying around, but might be a good compromise. |
now you broke all peoples code who use |
it would be great to continue this effort |
I will re-share https://github.com/krakjoe/pthreads/blob/4d1c2483ceb459ea4284db4eb06646d5715e7154/README.md#sapi-support (#249 (comment)), because I think it is still relevant:
|
Personally the reason why I need it is simple - we use common image for web and cli, but threading want to apply only in cli context |
Resolves #1317, #249
To echo this statement from @okdewit, I have a Symfony application using the PHP Parallel API that I cannot run correctly under FPM without ZTS.
It's not clear if there's a formal testing procedure here, but I can validate that I'm able to install the parallel extension in the php 7.4 container I've built: