Commit Graph

5 Commits

Author SHA1 Message Date
Sergey Biryukov
74adacb801 Docs: Improve Style Engine file and class headers per the documentation standards.
Follow-up to [54156], [55719].

See #57840.

git-svn-id: https://develop.svn.wordpress.org/trunk@55733 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-09 10:35:06 +00:00
Sergey Biryukov
24c4d56d51 Docs: Remove @return void from various DocBlocks.
Per the documentation standards, it should not be used outside of the default bundled themes.

Follow-up to [52049], [52051], [53331], [54156], [54214], [55203], [55719].

See #57840.

git-svn-id: https://develop.svn.wordpress.org/trunk@55725 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-06 11:38:17 +00:00
John Blackbourn
eb248dc65b Docs: Correct and improve inline docs relating to the style engine.
See #57840


git-svn-id: https://develop.svn.wordpress.org/trunk@55719 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-03 23:55:50 +00:00
Sergey Biryukov
e2c6f8c82a Code Modernization: Add AllowDynamicProperties attribute to recently introduced classes.
This commit is a follow-up to [54133] for new classes introduced in WordPress 6.1 since the previous commit.

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

There are a number of ways to mitigate this:
* If it is an accidental typo for a declared property: fix the typo.
* For known properties: declare them on the class.
* For unknown properties: add the magic `__get()`, `__set()`, et al. methods to the class or let the class extend `stdClass` which has highly optimized versions of these magic methods built in.
* For unknown ''use'' of dynamic properties, the `#[AllowDynamicProperties]` attribute can be added to the class. The attribute will automatically be inherited by child classes.

Trac ticket #56034 is open to investigate and handle the third and fourth type of situations, however it has become clear this will need more time and will not be ready in time for WP 6.1.

To reduce “noise” in the meantime, both in the error logs of WP users moving onto PHP 8.2, in the test run logs of WP itself, in test runs of plugins and themes, as well as to prevent duplicate tickets from being opened for the same issue, the `#[AllowDynamicProperties]` attribute has been added to all “parent” classes in WP.

Reference: [https://wiki.php.net/rfc/deprecate_dynamic_properties PHP RFC: Deprecate dynamic properties].

Follow-up to [53922], [54133].

Props jrf.
See #56513, #56034.

git-svn-id: https://develop.svn.wordpress.org/trunk@54481 602fd350-edb4-49c9-b593-d223f7449a82
2022-10-11 14:58:03 +00:00
Jb Audras
7fcc88a087 Editor: Backport Style Engine API functions, classes and tests.
This PR migrates the Style Engine PHP functions, classes and tests into Core for 6.1. It backports the original [WordPress/gutenberg#40260 PR #40260] from Gutenberg repository.

Props ramonopoly, bernhard-reiter, costdev, azaozz, andrewserong, mukesh27, aristath.
See #56467.


git-svn-id: https://develop.svn.wordpress.org/trunk@54156 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-14 12:46:33 +00:00