[wp-trac] [WordPress Trac] #56033: PHP 8.2: explicitly declare all known properties

WordPress Trac noreply at wordpress.org
Mon Aug 29 12:44:45 UTC 2022


#56033: PHP 8.2: explicitly declare all known properties
--------------------------------------------+-----------------------------
 Reporter:  jrf                             |       Owner:  SergeyBiryukov
     Type:  task (blessed)                  |      Status:  accepted
 Priority:  normal                          |   Milestone:  6.1
Component:  General                         |     Version:
 Severity:  normal                          |  Resolution:
 Keywords:  has-patch php82 has-unit-tests  |     Focuses:
--------------------------------------------+-----------------------------

Comment (by SergeyBiryukov):

 In [changeset:"53952" 53952]:
 {{{
 #!CommitTicketReference repository="" revision="53952"
 Code Modernization: Explicitly declare all properties in
 `WP_Ajax_Upgrader_Skin`.

 Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2
 and are expected to become a fatal error in PHP 9.0.

 In this case, the `$plugin_info` and `$theme_info` properties are set in
 `Plugin_Upgrader::bulk_upgrade()` and `Theme_Upgrader::bulk_upgrade()`
 specifically.

 The `Bulk_Plugin_Upgrader_Skin` class and the `Bulk_Theme_Upgrader_Skin`
 class both already allow for this, but the `wp_ajax_update_plugin()` and
 `wp_ajax_update_theme()` functions also call the
 `*_Upgrader::bulk_upgrade()` methods, so the `WP_Ajax_Upgrader_Skin` class
 also needs to have these properties explicitly declared.

 Includes adding proper DocBlocks for the pre-existing properties in the
 `Bulk_Plugin_Upgrader_Skin` and the `Bulk_Theme_Upgrader_Skin` classes.

 Follow-up to [13686], [37714], [38199], [42677], [42873], [53557],
 [53558], [53850], [53851], [53852], [53853], [53854], [53856], [53916],
 [53935], [53936], [53937], [53938], [53942], [53945], [53948], [53949].

 Props jrf, costdev.
 See #56033.
 }}}

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


More information about the wp-trac mailing list