> Dear Internals,
> On Wed, 10 Nov 2021, Nikita Popov wrote:
>> On Wed, Aug 25, 2021 at 12:02 PM Nikita Popov firstname.lastname@example.org> 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
>> 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
> I have therefore voted "no" on this RFC, and I hope you will too.
Maybe the RM's should have a mandate to keep track on deprecations for
a specific release and be able to say: "Sorry the shop are closed for
further deprecations in this release".
What do you think?
One could count the deprecations in the 8.x track and have a straw poll
on it and/or ask what key deprecations do we see further for the 8.x?
Is even the "Dynamic properties" one, one of the last ones?