Nullable, Void and Iterable
This release is for PHP 7.1 and above. Nullable, void and iterable types have been added.
Getter methods can now return either a single value when the name is a string or an associative array of values when the name is an array of key names. In addition to the get method, multiple request params, shared services and session messages can also be retrieved.
Cookie values can now be null and will be converted to an empty string.
The throws docblock attribute has been added to methods that may throw an exception.
A bug has been fixed for when casting a HTTP URI class to a string that has an array for its query.
Overloaded objects no longer overload the get method; only the magic methods offsetGet and __get are overloaded.
The session messages API has been tidied up.
The route dispatcher now expects the routes configuration to be an iterable type. The children for an individual route must also be an iterable type. However, if the routes are also used to create URLs, then the routes configuration must also be associative.
Response emitters now return void.
The remove method now returns void.