* Fix ClassLoader to be serializable
* Fix CI to use the source bin/composer as process for "composer" runs incl within simple-phpunit
* Store the closure statically to avoid serialization issues in a cleaner way
A number of predefined actions have had major release, which warrant an update to the workflow(s).
These updates don't actually contain any changed functionality, they are mostly just a change of the Node version used by the action itself (from Node 14 to Node 16).
Refs:
* https://github.com/actions/checkout/releases
P.S.: looks like there are some more actions in use which have had new major releases. As those actually _do_ contain changed functionality, I've excluded the others from this PR.
A number of predefined actions have had major release, which warrant an update to the workflow(s).
These updates don't actually contain any changed functionality, they are mostly just a change of the Node version used by the action itself (from Node 14 to Node 16).
Refs:
* https://github.com/actions/checkout/releases
P.S.: looks like there are some more actions in use which have had new major releases. As those actually _do_ contain changed functionality, I've excluded the others from this PR.
Turns out the default setting for `error_reporting` used by the SetupPHP action is `error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT` and `display_errors` is set to `Off`.
For the purposes of CI, I'd recommend running with `E_ALL` and `display_errors=On` to ensure **all** PHP notices are shown.
* PHPStan: Remove autoload_files directive as it is not necessary anymore
* PHPStan: Add error exclusions for sapi_windows_set_ctrl_handler function
* PHPStan: Add error exclusions for ZipArchive::LIBZIP_VERSION
* PHPStan: Require phpstan ^0.12.26
* Ensure zip ext is available on gh actions
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>