WordPress-PSR / swoole

Try to run WordPress in swoole
GNU General Public License v3.0
71 stars 6 forks source link

How can I reach you? #1

Open carlalexander opened 3 years ago

carlalexander commented 3 years ago

Heya David!

Sorry to open an issue like this. I've looked at your website and didn't find any contact information. I came across your work getting WordPress to work with Swoole. I'd like to see what the challenges were and how complex they are especially maintaining the WordPress fork.

In the spirit of transparency, I'm asking because I'm working on the equivalent of Laravel Vapor for WordPress. I'm investigating the viability of supporting it on AWS Lambda.

superdav42 commented 2 years ago

Sorry for the late reply. Github is usually a good way to reach me.

Maintaining the WordPress fork is almost impossible. It's way out of date and I need to find a better solution. Ideally the important changes would be made in WordPress core but this will probably be difficult. An script to keep the fork in sync with upstream could help but will probably run into merge conflicts that would need to be manually addressed. I haven't found a good solution.

I'm not sure if you need it. Does AWS Lambda use long running PHP processes? It seems like it wouldn't need all changes in the WordPress fork I had to do.

carlalexander commented 2 years ago

WordPress works great on Lambda. You're limited with the 30s API gateway timeout. It's just that Swoole is so much faster.

A script to keep the fork in sync with upstream could help but will probably run into merge conflicts that would need to be manually addressed.

Yeah, that's what I was thinking. Just not sure how much work the manual merges would need. Do you have a list of all the changes you did somewhere?

superdav42 commented 2 years ago

Yeah, that's what I was thinking. Just not sure how much work the manual merges would need. Do you have a list of all the changes you did somewhere?

They are here https://github.com/johnpbloch/wordpress-core/compare/master...superdav42:master

I also created Rector rules that actually updated the code in many places but some was also manual. I had thought Rector could maybe be used for all the changes and not keep a separate repo or patch file. The rector script could be ran at install time on core or even plugin files. It's not quite there but it's another option although it's a little slow to run it over the entire codebase .

carlalexander commented 2 years ago

This is really great! Thank you!

I had thought Rector could maybe be used for all the changes and not keep a separate repo or patch file.

Yeah. I'm thinking, if I do it, I'd start with just maintaining a patch file. Rector handling it would have been amazing.

That said, I'm not close to tackling this yet. There's still work to do just for Lambda right now. But I really want to take a shot at it 😁

nickchomey commented 1 year ago

Did this ever progress anywhere? I just came across swoole and this repo and have similar questions to @carlalexander - what were the main challenges, outstanding issues etc...? I'd be happy to help explore and contribute to this work if there's still will from you folks!