I’m interested in running #FrankenPHP (i.e., #Caddy) as the app server for a website. The website has multiple domains pointing to it, and I plan to run this in a #Kubernetes cluster. Can someone point to any docs or blog posts that show how others have set up similar configurations with Caddy or FrankenPHP, especially with regard to how Caddy magically configures HTTPS for the domains in this kind of setup?
Another option is to let your existing ingress controller do the TLS termination (you can use projects cert-manager to automatically manage the certificates, and many cloud ingresses also have native support Let’s Enctypt or automatic cert generation).
OK... here is a question (#PHP but other #dev communities are welcome to comment.
When building a decoupled app, do you consider the usage of something like ClassWithAnnoyingName::class
(not to call the class, but to reference the name as a string and to simply avoid to type it out) as coupling?
IMHO, it is not
it is very trivial to replace with its string value if needed
Tonight at the @afup meetup, I'll be explaining how to debug the most bizarre problems in your #PHP applications. I'll take the opportunity to explain in an accessible way (I hope) how the execution engine of the venerable language that powers the web works.
Case in point: I'll show you how to use these techniques to find and fix a bug in... a debugger (in this case, Xdebug).
No need to know C (or even PHP) to attend this live coding session!
@pierstoval as long as the license allows me to fork, I’m fine with that.
Software maintained by a large non-commercial entity or by a co-op is the best (but is often not enough to fix the free labor problem), but commercially supported MIT-like software is still way better than proprietary software.
@dunglas couple of days ago there was PR for 2.7.17 release of api-platform/core, which failed all tests in CI, but still was merged and broke a lot of CI/CDs including the one in my project. Literally any composer update. Any help needed?
The @ApiPlatform distribution and Symfony Docker now use the Debian variant of FrankenPHP (instead of Alpine). Using glibc prevents some subtle PHP bugs and improves performance.
This release of the API Platform distribution also contains many fixes.
@rubenrubiob@dunglas currently there is no way to restart the worker automatically when a file changes (unless you use Laravel Octane, which has custom code for that). Adding such feature is on my todo list for the next version! This could improve the developer experience, but indeed for performance what matters is that you enable the worker mode in prod.
@ramsey@dgoosens by the way Caddyfile syntax is entirely optional. This is the simplified configuration format, but it’s converted to JSON and it’s possible to use JSON instead of Caddyfile if you prefer.