[wp-trac] [WordPress Trac] #53635: PHP 8.1: various compatibility fixes

WordPress Trac noreply at wordpress.org
Mon Nov 1 22:23:06 UTC 2021


#53635: PHP 8.1: various compatibility fixes
--------------------------------------------+------------------------------
 Reporter:  SergeyBiryukov                  |       Owner:  hellofromTonya
     Type:  task (blessed)                  |      Status:  accepted
 Priority:  normal                          |   Milestone:  5.9
Component:  General                         |     Version:
 Severity:  normal                          |  Resolution:
 Keywords:  php81 has-patch has-unit-tests  |     Focuses:  coding-
                                            |  standards
--------------------------------------------+------------------------------

Comment (by hellofromTonya):

 In [changeset:"51968" 51968]:
 {{{
 #!CommitTicketReference repository="" revision="51968"
 Build/Test Tools: Ignore "null to nullable" deprecations for select tests.

 Adds an expectation for PHP 8.1 "passing null to non-nullable" deprecation
 notice to select tests where the deprecation is generated by one of the
 functions in the `wp-includes/formatting.php` file, either via a filter
 hook callback or by a direct call.

 Instead of haphazardly fixing these issues exposed by the tests, a more
 structural and all-encompassing solution for input validation should be
 architected and implemented as otherwise, we'll keep running into similar
 issues time and again with each new PHP version.

 To discourage people from "fixing" these issues now anyway, this commit
 "hides" nearly all of these issues from the test runs.

 Once a more structural solution is designed, these tests and the
 underlying functions causing the deprecation notices should be revisited
 and the structural solution put in place.

 Includes a few minor other tweaks to select tests:
 * Removing a stray `return` (twice) from assertion statements.
 * Removing calls to `ob_*()` functions in favour of letting PHPUnit manage
 the output catching. This prevents warnings along the lines of `Test code
 or tested code did not (only) close its own output buffers`.

 Props jrf, hellofromTonya.
 See #53635.
 }}}

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/53635#comment:130>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list