All the ZF news in one place for the week of 2017-04-20!

Zend Posts

https://framework.zend.com/blog/2017-04-20-config-aggregator.html



We cover using zend-config-aggregator to manage your application configuration, no matter what the project.



We cover using zend-config-aggregator to manage your application configuration, no matter what the project. https://framework.zend.com/blog/2017-04-19-caching-middleware.html



Enrico details how to create middleware for caching responses and serving cached responses, and how to enable it for specific routed middleware.

Community Posts

http://www.geekyboy.com/archives/1321



Adam Culp writes about creating Docker Compose configuration for a Zend Framework application using a new service called CloudEstuary.

Minimum PHP versions

When we announced Zend Framework 3 last year, one of the changes was setting the minimum supported PHP version to 5.6. Our initial plan was to support 5.6 until it reaches end-of-life, which occurs 31 December 2018.

5.6, however, stopped receiving active support three months ago, on 19 Jan 2017. This means that it is no longer receiving bugfixes, only critical security fixes. As such, a number of contributors have been pushing for us to up our minimum supported version to support only actively supported PHP versions, which would mean only PHP 7 versions.

There are additional benefits to jumping to PHP 7, including:

Scalar type hints

Return type hints

Null coalescing operator

Spaceship operator

Anonymous classes

Potential for enabling strict type checking

Of course, PHP 7.0 ends active support at the end of this year, on 3 December 2017; moving to 7.0 means that we could anticipate further version bumps in a very short time frame.

Jumping to PHP 7.1 adds a couple more benefits:

Void return types

Nullable types

"iterable" pseudo-type

Non-public class constants

Multi-catch exception handling

Support for keys in "list()"

Built-in asynchronous signal handling

Further, 7.1 has active support until 1 Dec 2018.

Our view is that the new features in PHP 7 will allow us to simplify our code dramatically, reduce bugs (primarily by increasing type safety), make our code more easily maintainable (less code required to check types; less repetitive code), provide stronger and more predictable interfaces to our users, and simultaneously provide users access to more and better language features.

The biggest downside to adopting PHP 7 releases at this time is one of adoption. Many organizations lock projects to specific infrastructure, including PHP versions. Even with supported repositories such as https://rpms.remirepo.net/ , enterprises still want to pin to distribution-provided PHP versions, which are often literally years out-of-date.

However, with the rise in usage of virtual machines and containers, many of these obstacles are gradually disappearing for organizations. When you can package the entire infrastructure stack, testing and deployment become more predictable, eliminating many of the issues traditionally associated with infrastructure changes. We feel this trend will only increase.

As such, our plan is this:

We will start releasing new major versions of components that pin to PHP 7.1+ , so we can take advantage of the latest language features.

, so we can take advantage of the latest language features. We will continue providing security patches only to the last release branch supporting PHP 5.6 until PHP 5.6 reaches its end-of-life date. This allows us to minimize the amount of maintenance we need for supporting these versions, while still providing stable, secure releases for our PHP 5 users.

This work can begin immediately, and we welcome your assistance in this effort!

Save the date!

Want to learn more about Expressive, Apigility, and Zend Framework? What better location than ZendCon 2017! ZendCon will be hosted 23-26 October 2017 in Las Vegas, Nevada, USA. Visit the ZendCon website for more information: http://www.zendcon.com

Miscellaneous

PHPWomen has an open survey seeking advice on where to direct their attention and resources. The survey is open to people of all genders, and they would love to hear your feedback.

The ConfFoo Vancouver Call for Papers is now open; consider submitting a ZF-related topic! https://confoo.ca/en/yvr2017/call-for-papers

We're still gathering feedback for our Apigility on Expressive initiative: https://github.com/zendframework/maintainers/issues/11



We have a number of open questions, and would appreciate YOUR input; provide your feedback via comments on the issue!

We have a number of open questions, and would appreciate input; provide your feedback via comments on the issue! If you haven't signed up for our Slack, subscribe here: https://zendframework-slack.herokuapp.com



Feel free to share that link with anyone you feel is interested!

Feel free to share that link with anyone you feel is interested! We have a Discourse site started, and are seeding it with content; look here next week for a link to sign up! (Yes, I know, I said that last week... I've been on vacation!)

We are constantly adding to our list of blogs, screencasts, etc. on ZF, Expressive, and Apigility topics; if you have one or know of one, please let us know: https://github.com/zendframework/zf3-web/issues/58

Let others know about the newsletter; they can sign up at: https://tinyletter.com/mwopzend

Until next week!