Pros of 7.0, and even 7.1 (I am not listing everything, just features that are interesting for us):
- Scalar type declaration required for RFC 58,
- Return type declaration required for RFC 58,
- Null coalescing operator,
-
Filtered
unserialize
required for security concerns, -
IntlChar
required forHoa\Ustring
, - Expectations required for RFC #52,
- Generator return expressions required for RFC 57,
- Generator delegation required for RFC 57 and RFC 55,
-
Session options required for
Hoa\Session
, -
CSPRNG required for
Hoa\Websocket
and other crypto-sensible libraries, - Nullable types required for RFC 58,
-
void
functions we are already compatible with this one, - Class constant visibility to get a better maintanable code,
-
iterable
pseudo-type to get powerful API, - String negative offset to increase performance in some cases,
- Spaceship operator required for RFC 55,
-
HTTP/2 server push with
ext/curl
because we are in 2017.
As you can see, several features from PHP 7.0 and 7.1 are required for our 2017 roadmap.
What I would like is: Drop 5.x, drop 7.0, go directly to 7.1. The roadmap will take time to get there, updating the code to 7.1 will take time too, I don’t want the project to be using 7.1 features and 7.1 will be outdated.
Popular libraries are stable. Most of the others are stable too. Maybe we could maintain a special branch for bug fixes, even if this is against our Rush Release policy (we could accept this as an exception if really required and blocking).
Thoughts?