PHP 8.4 | Test Helpers: fix trigger_error() with E_USER_ERROR is deprecated (Trac 62061)#7377
PHP 8.4 | Test Helpers: fix trigger_error() with E_USER_ERROR is deprecated (Trac 62061)#7377jrfnl wants to merge 2 commits intoWordPress:trunkfrom
Conversation
…OR is deprecated PHP 8.4 deprecates the use of `trigger_errror()` with `E_USER_ERROR` as the error level, as there are a number of gotchas to this way of creating a `Fatal Error` (`finally` blocks not executing, destructors not executing). The recommended replacements are either to use exceptions or to do a hard `exit`. As this is a test-only class, we don't have to take BC-breaks into account. Also, as this is a test helper, throwing a exception is the most appropriate solution. Ref: * https://wiki.php.net/rfc/deprecations_php_8_4#deprecate_passing_e_user_error_to_trigger_error
…OR is deprecated PHP 8.4 deprecates the use of `trigger_errror()` with `E_USER_ERROR` as the error level, as there are a number of gotchas to this way of creating a `Fatal Error` (`finally` blocks not executing, destructors not executing). The recommended replacements are either to use exceptions or to do a hard `exit`. As this is a test-only class, we don't have to take BC-breaks into account. Also, as this is a test helper, throwing a exception is the most appropriate solution. Ref: * https://wiki.php.net/rfc/deprecations_php_8_4#deprecate_passing_e_user_error_to_trigger_error
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the Core Committers: Use this line as a base for the props when committing in SVN: To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
Test using WordPress PlaygroundThe changes in this pull request can previewed and tested using a WordPress Playground instance. WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser. Some things to be aware of
For more details about these limitations and more, check out the Limitations page in the WordPress Playground documentation. |
hellofromtonya
left a comment
There was a problem hiding this comment.
Makes sense to me. Ready for commit 👍
PHP 8.4 | WP_Test_Stream::open(): fix trigger_error() with E_USER_ERROR is deprecated
PHP 8.4 deprecates the use of
trigger_errror()withE_USER_ERRORas the error level, as there are a number of gotchas to this way of creating aFatal Error(finallyblocks not executing, destructors not executing).The recommended replacements are either to use exceptions or to do a hard
exit.As this is a test-only class, we don't have to take BC-breaks into account.
Also, as this is a test helper, throwing a exception is the most appropriate solution.
Ref:
PHP 8.4 | TestXMLParser::parse(): fix trigger_error() with E_USER_ERROR is deprecated
PHP 8.4 deprecates the use of
trigger_errror()withE_USER_ERRORas the error level, as there are a number of gotchas to this way of creating aFatal Error(finallyblocks not executing, destructors not executing).The recommended replacements are either to use exceptions or to do a hard
exit.As this is a test-only class, we don't have to take BC-breaks into account.
Also, as this is a test helper, throwing a exception is the most appropriate solution.
Ref:
Trac ticket: https://core.trac.wordpress.org/ticket/62061
This Pull Request is for code review only. Please keep all other discussion in the Trac ticket. Do not merge this Pull Request. See GitHub Pull Requests for Code Review in the Core Handbook for more details.