Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:116355 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 47838 invoked from network); 15 Nov 2021 08:58:16 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 15 Nov 2021 08:58:16 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F3A73180384 for ; Mon, 15 Nov 2021 01:52:55 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=BAYES_00,SPF_HELO_PASS, SPF_NEUTRAL autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS30827 82.113.144.0/20 X-Spam-Virus: No X-Envelope-From: Received: from xdebug.org (xdebug.org [82.113.146.227]) by php-smtp4.php.net (Postfix) with ESMTP for ; Mon, 15 Nov 2021 01:52:55 -0800 (PST) Received: from localhost (localhost [IPv6:::1]) by xdebug.org (Postfix) with ESMTPS id 5ABAB10C030; Mon, 15 Nov 2021 09:52:55 +0000 (GMT) Date: Mon, 15 Nov 2021 09:52:57 +0000 (GMT) X-X-Sender: derick@singlemalt.home.derickrethans.nl To: PHP internals cc: Nikita Popov In-Reply-To: Message-ID: References: User-Agent: Alpine 2.23 (DEB 453 2020-06-18) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Subject: Re: [PHP-DEV] Re: [RFC] Deprecate dynamic properties From: derick@php.net (Derick Rethans) Dear Internals, On Wed, 10 Nov 2021, Nikita Popov wrote: > On Wed, Aug 25, 2021 at 12:02 PM Nikita Popov wrote: > > > This RFC takes the more direct route of deprecating this > > functionality entirely. I expect that this will have relatively > > little impact on modern code (e.g. in Symfony I could fix the vast > > majority of deprecation warnings with a three-line diff), but may > > have a big impact on legacy code that doesn't declare properties at > > all. > > > > I plan to open voting on this RFC soon. Most of the feedback was > positive, apart from the initial choice of opt-int mechanism, and that > part should be addressed by the switch to the > #[AllowDynamicProperties] attribute. The voting is now open, but I think one thing was not taken into account here, the many small changes that push work to maintainers of Open Source library and CI related tools. In the last few years, the release cadence of PHP has increased, which is great for new features. It however has not been helpful to introduce many small deprecations and BC breaks in every single release. This invariably is making maintainers of Open Source anxious, and frustrated as so much work is need to keep things up to date. I know they are *deprecations*, and applications can turn these off, but that's not the case for maintainers of libraries. Before we introduce many more of this into PHP 8.2, I think it would be wise to figure out a way how to: - improve the langauge with new features - keep maintenance cost for open source library and CI tools much lower - come up with a set of guidelines for when it is necessary to introduce BC breaks and deprecations. I am all for improving the language and making it more feature rich, but we have not spend enough time considering the impacts to the full ecosystem. I have therefore voted "no" on this RFC, and I hope you will too. cheers, Derick -- PHP 7.4 Release Manager Host of PHP Internals News: https://phpinternals.news Like Xdebug? Consider supporting me: https://xdebug.org/support https://derickrethans.nl | https://xdebug.org | https://dram.io twitter: @derickr and @xdebug