Re: [PHP-DEV] [RFC] [VOTE] Function Autoloading (mark 5)

Tim Düsterhus <[email protected]> Fri, 31 Jul 2026 10:10:29 +0200
Newsgroups gmane.comp.php.devel
Message-ID <[email protected]>
Hi

On 2026-07-31 09:57, Matteo Beccati wrote:
>> Per my message from a couple of weeks ago 
>> <https://externals.io/message/131332#131945> I have opened the vote 
>> for Function Autoloading (mark 5):
>> 
>> - <https://wiki.php.net/rfc/function-autoloading-five-oh>
>> 
>> The vote runs for two weeks and will close automatically at 14:45 UTC 
>> on Thu 13 Aug 2026.
>> 
>> N.b.: Voters concerned about shadowed global functions should note 
>> that such cases, while real in principle, are extremely rare in 
>> practice; those very few cases can be mitigated easily. Cf. 
>> <https://wiki.php.net/rfc/function-autoloading-five-oh#how_common_is_the_shadow-global_case>.
> I think this is the best autoloading proposal up to date.
> 
> Most likely I would have voted yes if the target was 8.7, leaving us 
> plenty of time to intervene in case of issues.
> 
> Perhaps I'm biased as RM, but last minute RFCs are making me nervous, I 
> hope you understand.

In fact the start of the vote is in violation of our policy, since there 
was no “intent to vote” message in the last 7 days.

I regretfully missed the email #131945 from two weeks ago, but also 
didn't expect this RFC to go to vote, since:

1. The namespace-resolution-declare was just split out of it and in my 
opinion having a decision on that first would be helpful to make an 
educated decision on this one.
2. With the major change on the Wednesday, July 15th it was not able to 
meet the soft freeze deadline that I calculated with (which should've 
been Tuesday, August 11 according to policy).

As indicated during the discussion, I consider it unacceptable for the 
autoloading to fail when a global function with the same unqualified 
name exists. This adds further inconsistency to the language and I 
expect the proposed behavior to be a source of bug reports from users 
wondering why the autoloading doesn't work as expected.

Best regards
Tim Düsterhus