Re: Experimental features

From: Date: Thu, 06 Oct 2022 13:00:51 +0000
Subject: Re: Experimental features
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-118766@lists.php.net to get a copy of this message
> On 6 Oct 2022, at 15:26, Christoph M. Becker <cmbecker69@gmx.de> wrote: > > On 04.10.2022 at 22:42, David Rodrigues wrote: > >> I wanted to suggest the possibility of introducing experimental features to >> PHP. >> >> This is an old thread I guess, but I think it's good to reevaluate the >> situation from time to time, as other languages already do this to some >> extent and PHP doesn't. Some platforms/languages (Node, Kotlin) and >> libraries (React) bring features natively in an experimental way. >> >> I wanted to propose that we bring this idea into PHP, so we wouldn't have >> to wait for new major/minor versions (eg. 9.0 or 8.2, 8.3) to try out these >> new features, and so when these versions arrive, they'll already be quite >> polished, avoiding patches sometime later due to wider usage of users. > > Do the other platforms introduce experimental features in revisions? I > doubt that, and I'm pretty sure that is (at least currently) no option > for PHP. We have several months of bi-weekly pre-releases for new > minor/major versions, and are barely able to stabilize new features; not > only wrt. to the feature itself, but also wrt. unforeseen side effects. > > The current release cycle[1] still mostly makes sense to me, and that > says for revisions: > > * Bugfixes only (with a room for exceptions on a case by case basis and > only for small self contained features additions) > > I wouldn't want to sacrifice stability in favor of shipping new features > every month – including having more discussions about which feature may > be introduced in a revision. > > [1] > <https://wiki.php.net/rfc/releaseprocess#releases_cycle> > > -- > Christoph M. Becker > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: https://www.php.net/unsub.php > Speaking of Kotlin, there are no rules regarding experimental features. This is because they extensively use their "opt-in" API, which allows them to mark even a single function/method as experimental. It doesn't make sense to wait a minor release for a year to introduce a single new function. Of course, any medium-large size features are kept to minor/major releases.

« previous php.internals (#118766) next »