TimWolla
timwolla.bsky.social
TimWolla
@timwolla.bsky.social
For this one I mainly contributed the implementation. @edorian.bsky.social made the decisions and a large part of the discussion :-)
July 22, 2025 at 11:48 AM
Reposted by TimWolla
🚀 (1/11) #PHP 8.4 adds SSE2 and SHA-NI #hardware acceleration for #SHA-256:

hash('sha256', /* your data */);

What does this means exactly? HUGE performance boost! 💥 But how is it possible? 👇
July 18, 2025 at 7:44 AM
The resources mentioned in externals.io/message/120041 might come in helpful (especially StackOverflow Chat for a more direct line to some of the core contributors).
An invitation to chat and some useful links about PHP internals and extensions development - Externals
#externals - Opening PHP's #internals to the outside
externals.io
February 8, 2025 at 11:09 PM
If someone would have disagreed with having that function (or still disagrees until PHP 8.5 feature freeze), then I would have went the RFC route. But as that did not happen (yet), we could avoid the bureaucracy there and save the participants on Internals and the voters some mental load 🙂
February 8, 2025 at 11:02 PM
In that case, both naming and implementation was pretty obvious, without leaving much room for "creativity". It also filled a clear gap in the existing functionality, so it was just merged by simple agreement of the ext/curl maintainer.
February 8, 2025 at 11:02 PM
As an example, here's a recent-ish PR of mine adding a new ext/curl function to PHP 8.5 without going through the RFC process: github.com/php/php-src/...
curl: Add `curl_multi_get_handles()` by TimWolla · Pull Request #16363 · php/php-src
see https://curl.se/libcurl/c/curl_multi_get_handles.html
github.com
February 8, 2025 at 11:02 PM
I recommend sending plaintext-only emails when interacting with Internals: Formatting will look as expected and less data to send around the Internet.

You can select that in the 3-dot menu when composing a message. Not sure if it can be set as default for specific recipients.
February 8, 2025 at 10:04 PM
Based on externals.io/email/126356..., the HTML variant of your email indeed contains some fancy formatting for that left bar, but it didn't do anything for the plaintext variant.
https://externals.io/email/126356/source
Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:126356 X-Original-To: [email protected] Delivered-To: [email protected] Received: from php-smtp4.php.net ...
externals.io
February 8, 2025 at 10:04 PM
So far you didn’t run into the issue, because the discussion thread is simple enough, but it will likely cause confusion for more complex discussions with multiple parallel discussion topics.
February 8, 2025 at 7:22 PM
Also one thing to keep in mind with Gmail’s web interface: Please use the “Reply button” on the email you are actually replying to. Gmail’s linear view makes this easy to do wrong, leading to incorrect threading in other emails clients that show a tree structure (e.g. Thunderbird in my case).
February 8, 2025 at 7:22 PM
And indeed, the quote didn’t properly make it through. I can’t comment on details of Gmail’s web interface, which I assume you’re using, but generally prefixing each line with a `>` should do the trick.
February 8, 2025 at 7:22 PM
You mentioned that someone from the Laravel community sparked the idea and then I searched social media for “PHP RFC”.
February 8, 2025 at 7:22 PM
Personally I don't ever run the entire test suite locally (no need to run, say, ext/dom tests if I work on something unrelated) and leave the full test to CI.
February 8, 2025 at 7:14 PM
And for running tests, you can restrict the tests to a specific directory by running `sapi/cli/php run-tests.php --show-diff ext/random/` for faster turn-around times.
February 8, 2025 at 7:14 PM
7 to 8 minutes sounds pretty slow for building on an M1. Did you build with `make -j$(nproc)` for multi-core compilation?
February 8, 2025 at 7:14 PM
Using the information learned from writing the PR you can ensure that your RFC text itself is in the best possible shape, cutting down on the amount of back-and-forth discussion and clarification required on the mailing-list, saving everyone involved time.
February 8, 2025 at 7:08 PM
Having the PR ready first will also help in working out all the details. By writing the tests you find necessary edge-cases that might need some explanation in the RFC itself.
February 8, 2025 at 7:08 PM
In simple cases an RFC might not actually be necessary! As a newcomer it might be easier to file a PR against php-src first and then folks will likely tell you if you need an RFC (either because they disagree with the feature, or because they feel further discussion is necessary).
February 8, 2025 at 7:04 PM
Friendly person here 👋 Happy to hear that my reply was well-received. My intention really was avoiding the “Internals is hard to approach” sentiment that is sometimes claimed on social media and it seems I succeeded with that 😁
February 8, 2025 at 7:00 PM