On Mar 11, 2014 12:47 PM, "Demian Katz" <
[hidden email]> wrote:
>
> > We're down to the last few pull requests and issues before we're ready
> > to tag 2.3.0. If you can, I'd really appreciate it if you'd test your
> > apps against the develop branch of ZF2 ("dev-develop" or "~2.3-dev" if
> > you use composer), and let us know ASAP if you see any show stoppers.
> >
> > Thanks in advance, and here's hoping to a smooth 2.3.0 rollout!
>
> I promise I'm not trying to create another PHP version number debate --
just reporting my results. I'm running the current LTS version of Ubuntu
and using standard packages -- I imagine that's a fairly common situation.
I tried to install 2.3 on my test server to see how my application would
behave, and Composer refused because my PHP version is too old. This
surprised me since discussions about version requirement changes suggested
that the framework was keeping to a fairly conservative course -- I must
have missed something.
>
> Anyway, please let me know if I'm mistaken about requirements or if the
base version was bumped higher than intended... and again, I'm not trying
to stir up old battles. Just facing the reality that, while I am eager to
take advantage of new PHP language features, and I'm willing to step
outside of standard packages for my own personal use, I'm also managing a
project that is used by many institutions with conservative server policies
who simply aren't going to move past PHP 5.3.3 for some time... so I'm
probably going to have to stick with ZF 2.2.x for the moment.
We discussed this some months back, actually (in November):
-
http://zend-framework-community.634137.n4.nabble.com/Query-Should-ZF2-bump-the-minimum-required-PHP-version-td4661158.html#a4661236The decision I ended up making was to bump to 5.3.23 STARTING WITH 2.3.0,
for a variety of compelling reasons:
- 5.3.9+ have fixes that allow a class to implement multiple interfaces
that define the same method, so long as the signatures are the same.
Without this functionality, having separated interfaces is impossible, and
we have increasingly found that, in the name of proper compartmentalization
and segregation of components, this needs to be done. For a concrete
example, it allows us to have separate TranslatorInterface definitions in
different components, but a single implementation for the MVC that
satisfies all of them.
- 5.3.23 contains a bugfix for ArrayObject that fixes a number of
dereferencing issues we've observed particularly in Zend\Session - stuff
that we simply cannot fix in userland.
- Zend Server is providing LTS support for PHP 5.3, and is already at
5.3.26+ at this point, giving people on legacy distributions the ability to
upgrade to a newer PHP 5.3 version if they need to update to ZF 2.3+.
As reported in the email thread above, we have plenty of precedence for
upping the minimum supported PHP version in ZF; we've done so 3 separate
times in ZF1 alone at this point. We try to do it only at minor version
bumps (not maintenance releases), and only when it solves maintenance
issues that are too difficult or brittle for us to fix in userland.
I hope that answers your questions! I realize that the change will not be
welcome by everyone, but the rationale for the change is solid.