On Tue, 16 May 2023 at 13:39, Dan Ackroyd <dan...@basereality.com> wrote:

>
> * Are there any things being worked on that would deserve or require a
> major version bump in PHP?
>


I think there are two conflicting ideas of what a major version should be:

a) A major version is an ad hoc event that happens when something
"significant" is being changed. Any other breaking changes can piggy-back
on that major change.
b) A major version is part of the general life cycle of the project. It is
a periodic chance to make breaking changes that were held back from annual
releases.

Under (a) deprecations have no predictable duration; they will become
breaking changes whenever the opportunity arises because of a completely
disconnected decision. On the other hand, a major change can be started at
any time, with the release timeline adjusted to fit its progress.

In (b) there is a fairly clear expectation of how far away a breaking
change is once a deprecation is agreed; contributors can use this to decide
if that timescale is adequate, and users can use it to plan how to handle
the change. On the other hand, a major change faces an increased risk of
missing the major release window, and either being rushed or being held
back for several years.

I'm not convinced major changes that would run into problems with (b) are
all that common; many major features are delivered within the annual
release cycle, and many breaking changes in x.0 versions don't require a
long lead time.

A compromise might be to have a planned cycle, but with some leeway for
major projects, e.g. "a major release will happen no more often than every
4 years, and no less often than every 6"; or, to put it a different way,
"there will always be an x.3 release, and never an x.6".

Regards,
-- 
Rowan Tommins
[IMSoP]

Reply via email to