It looks like some installations of PHP 7.4 do not report the "args" in the exception trace anymore. This can lead to reporting some PHP warnings (PHP Warning: Invalid argument supplied for foreach()) and/or rejected promises depending on the error handler used.
Accordingly, this didn't show up during unit tests because PHPUnit transforms these warnings into exceptions automatically which will cause the underlying promise to be rejected – which will not be reported by default (reactphp/promise#87). This can be best reproduced by running one of the examples with an invalid DNS server address and error reporting enabled. This should now report a promise rejection without any PHP warnings.
Builds on top of clue/reactphp-http-proxy#33 and #118.