Commit Graph

85 Commits

Author SHA1 Message Date
Sergey Biryukov
01c65c0c36 Media: Add WP_Image_Editor_Imagick::set_imagick_time_limit() method.
This aims to avoid timeout in Imagick operations.

Previously, Imagick operations could silently error by timeout and produce unexpected results. The new `::set_imagick_time_limit()` method, now used in `::resize()` and `::crop()`, will better handle garbage collection in these cases as well as better align Imagick's timeout with PHP timeout, assuming it is set.

Props drzraf, audrasjb, costdev, antpb, SergeyBiryukov.
Fixes #52569.

git-svn-id: https://develop.svn.wordpress.org/trunk@55404 602fd350-edb4-49c9-b593-d223f7449a82
2023-02-22 14:23:50 +00:00
Sergey Biryukov
0c4bd8cfc3 Docs: Add missing type for $_wp_theme_features in WP_Debug_Data::debug_data().
Includes moving the global declaration to the top of the method for consistency.

Follow-up to [44986], [54953].

See #57069, #56792.

git-svn-id: https://develop.svn.wordpress.org/trunk@54954 602fd350-edb4-49c9-b593-d223f7449a82
2022-12-09 12:23:46 +00:00
Jb Audras
ee09cadd94 Docs: Improve various globals documentation, as per documentation standards.
Props upadalavipul.
See #57069, #56792.


git-svn-id: https://develop.svn.wordpress.org/trunk@54953 602fd350-edb4-49c9-b593-d223f7449a82
2022-12-09 11:52:58 +00:00
Jonathan Desrosiers
f2f99f3985 Bootstrap/Load: Confirm the value of WP_ENVIRONMENT_TYPE before using.
This adjusts the check for the presence of the `WP_ENVIRONMENT_TYPE` constant to also confirm it is set to a non-empty value before using.

Props dd32, khokansardar, ramon-fincken.
Fixes #55741.

git-svn-id: https://develop.svn.wordpress.org/trunk@54239 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-20 02:22:49 +00:00
Sergey Biryukov
5ebe28966e Code Modernization: Add AllowDynamicProperties attribute to all (parent) classes.
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, this commit adds the `#[AllowDynamicProperties]` attribute to all “parent” classes in WP.

The logic used for this commit is as follows:
* If a class already has the attribute: no action needed.
* If a class does not `extend`: add the attribute.
* If a class does `extend`:
 - If it extends `stdClass`: no action needed (as `stdClass` supports dynamic properties).
 - If it extends a PHP native class: add the attribute.
 - If it extends a class from one of WP's external dependencies: add the attribute.
* In all other cases: no action — the attribute should not be needed as child classes inherit from the parent.

Whether or not a class contains magic methods has not been taken into account, as a review of the currently existing magic methods has shown that those are generally not sturdy enough and often even set dynamic properties (which they should not). See the [https://www.youtube.com/watch?v=vDZWepDQQVE live stream from August 16, 2022] for more details.

This commit only affects classes in the `src` directory of WordPress core.
* Tests should not get this attribute, but should be fixed to not use dynamic properties instead. Patches for this are already being committed under ticket #56033.
* While a number bundled themes (2014, 2019, 2020, 2021) contain classes, they are not a part of this commit and may be updated separately.

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

Follow-up to [53922].

Props jrf, hellofromTonya, markjaquith, peterwilsoncc, costdev, knutsp, aristath.
See #56513, #56034.

git-svn-id: https://develop.svn.wordpress.org/trunk@54133 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-12 15:45:36 +00:00
Jb Audras
3be54dc6bf Docs: Various docblock fixes in Site Health related files, as per documentation standards.
This addresses some files modified in changeset [54113].

See #55646.


git-svn-id: https://develop.svn.wordpress.org/trunk@54114 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-09 08:45:07 +00:00
Jb Audras
912fb7666c Coding Standards: Clarify time units for various timeout or expiration values.
This changeset implements a clearer and more consistent timeout/duration/expiration format. It updates time durations used in various files, as per WordPress coding standards:

- If the value can be represented as an integer (not a fractional) number of minutes (hours, etc.), use the appropriate constant (e.g.: `MINUTE_IN_SECONDS`) multiplied by that number.
- Otherwise, keep the value as is and add a comment with the units for clarity.

Follow-up to [11823], [13177], [21996], [37747], [53714].

Props hztyfoon, audrasjb, arrasel403, krupalpanchal, GaryJ, SergeyBiryukov, peterwilsoncc, rudlinkon, costdev, robinwpdeveloper.
Fixes #56293.
See #55647.


git-svn-id: https://develop.svn.wordpress.org/trunk@54113 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-09 08:14:43 +00:00
Sergey Biryukov
5a49274a92 Code Modernization: Replace phpversion() function calls with PHP_VERSION constant.
`phpversion()` return value and `PHP_VERSION` constant value are identical, but the latter is several times faster because it is a direct constant value lookup compared to a function call.

Props ayeshrajans, jrf, mukesh27, costdev, hellofromTonya, SergeyBiryukov.
Fixes #55680.

git-svn-id: https://develop.svn.wordpress.org/trunk@53426 602fd350-edb4-49c9-b593-d223f7449a82
2022-05-20 17:36:23 +00:00
Jonny Harris
e19b7ead2c Users: Introduce the concept of a large site to single site installations.
Currently in WordPress multisite there is a concept of large networks. The function `wp_is_large_network` is used to determine if a network has a large number of sites or users. If a network is marked as large, then 
expensive queries to calculate user counts are not run on page load but deferred to scheduled events. However there are a number of places in a single site installation where this functionality would also be useful, as 
expensive calls to count users and roles can make screens in the admin extremely slow.

In this change, the `get_user_count` function and related functionality around it is ported to be available in a single site context. This means that expensive calls to the `count_users` function are replaced with 
calls to `get_user_count`. This change also includes a new function called `wp_is_large_user_count` and a filter of the same name, to mark if a site is large.

Props johnbillion, Spacedmonkey, Mista-Flo, lumpysimon, tharsheblows, obenland, miss_jwo, jrchamp, flixos90, macbookandrew, pento, desrosj, johnjamesjacoby, jb510, davidbaumwald, costdev. 
Fixes #38741.



git-svn-id: https://develop.svn.wordpress.org/trunk@53011 602fd350-edb4-49c9-b593-d223f7449a82
2022-03-29 12:41:00 +00:00
Sergey Biryukov
d0bb319a81 Code Modernization: Rename parameters that use reserved keywords in wp-admin/includes/class-wp-debug-data.php.
While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names.

This commit renames the `$var` parameter to `$mysql_var` in `WP_Debug_Data::get_mysql_var()`.

Additionally, `$type` is renamed to `$data_type` in `WP_Debug_Data::format()` for clarity.

Follow-up to [51522], [52946], [52996], [52997], [52998].

Props jrf, aristath, poena, justinahinon, SergeyBiryukov.
See #55327.

git-svn-id: https://develop.svn.wordpress.org/trunk@53003 602fd350-edb4-49c9-b593-d223f7449a82
2022-03-28 13:22:38 +00:00
Marius L. J
3d679af2a7 Site Health: Add the constant WP_ENVIRONMENT_TYPE for debug data.
As a legacy from the old Health Check plugin, the constant `WP_LOCAL_DEV` was included in the debug data under the "WordPress Constants" section. This was incorrect, and has never been a constant used by core.

Instead, that field is now replaced by `WP_ENVIRONMENT_TYPE`, which was introduced with WordPress 5.5, and is a much more appropriate value to provide in a debug scenario.

Props johnbillion, bgoewert, sabbirshouvo.
Fixes #54340.

git-svn-id: https://develop.svn.wordpress.org/trunk@52021 602fd350-edb4-49c9-b593-d223f7449a82
2021-11-05 21:03:34 +00:00
Sergey Biryukov
1f1f1d64d8 Docs: Further update the debug_information filter description per the documentation standards.
Specifically, this ensures that the DocBlock follows the line wrapping recommendations.

Follow-up to [44986], [45156], [45259], [51949].

See #53399.

git-svn-id: https://develop.svn.wordpress.org/trunk@51956 602fd350-edb4-49c9-b593-d223f7449a82
2021-10-30 13:39:24 +00:00
John Blackbourn
59dc049816 Site Health: Correct and improve the documentation for the debug_information hook.
This corrects the structure of the documentation so it accurately reflects the array elements contained within.

See #53399.


git-svn-id: https://develop.svn.wordpress.org/trunk@51949 602fd350-edb4-49c9-b593-d223f7449a82
2021-10-29 15:33:18 +00:00
Tonya Mork
b0cc77854f Coding Standards: Add public visibility to methods in src directory.
This commit adds the `public` visibility keyword to each method which did not have an explicit visibility keyword.

Why `public`?

With no visibility previously declared, these methods are implicitly `public` and available for use. Changing them to anything else would be a backwards-compatibility break.

Props costdev, jrf.
See #54177.

git-svn-id: https://develop.svn.wordpress.org/trunk@51919 602fd350-edb4-49c9-b593-d223f7449a82
2021-10-18 17:51:17 +00:00
Sergey Biryukov
c5461a67a7 Site Health: Remove MySQL query cache size from the Site Health Info screen.
The query cache is deprecated as of MySQL 5.7.20, and is removed in MySQL 8.0.

Reference: [https://dev.mysql.com/doc/refman/5.7/en/query-cache-configuration.html MySQL 5.7 Reference Manual: Query Cache Configuration].

Follow-up to [51522], [51523].

Props johnbillion, zodiac1978.
Fixes #53845.

git-svn-id: https://develop.svn.wordpress.org/trunk@51715 602fd350-edb4-49c9-b593-d223f7449a82
2021-09-01 07:00:35 +00:00
Sergey Biryukov
ac47170bb5 Docs: Document the $wpdb global in WP_Debug_Data::get_mysql_var().
Follow-up to [51522].

See #53845.

git-svn-id: https://develop.svn.wordpress.org/trunk@51523 602fd350-edb4-49c9-b593-d223f7449a82
2021-08-01 14:03:09 +00:00
Sergey Biryukov
495f4f7641 Site Health: Add some more MySQL information to the Site Health Info screen.
This adds three values to the debug info in the Database section:

* Max allowed packet size
* Max connections number
* Query cache size

Props zodiac1978, donmhico, mukesh27, SergeyBiryukov.
Fixes #53845.

git-svn-id: https://develop.svn.wordpress.org/trunk@51522 602fd350-edb4-49c9-b593-d223f7449a82
2021-08-01 14:00:17 +00:00
Jonathan Desrosiers
4787fb116e Site Health: Display a list of file formats supported by the GD library.
This adds the list of file formats supported by the GD library to the Media Handling section in Site Health.

This will help site owners debug any issues they encounter as support for newer, more modern image formats is added (such as WebP in [50810]).

Follow up to [50817].
Props adamsilverstein, jorbin. 
Fixes #53022.

git-svn-id: https://develop.svn.wordpress.org/trunk@51143 602fd350-edb4-49c9-b593-d223f7449a82
2021-06-14 18:58:48 +00:00
Jonathan Desrosiers
970f904de5 Site Health: Include more ImageMagick/Imagick information in the Media Handling section.
This adds additional information to the Media Handling section of the Site Health Info page. When ImageMagick is used as the site’s image editor, a full list of file formats supported will now be shown. This will help site owners debug any issues they encounter as support for newer, more modern image formats is added (such as WebP in [50810]).

Additionally, the version of Imagick installed. This will help site owners debug issues with generating images on the PHP side.

Some variables have also been renamed to more accurately represent what is being stored.

Props Clorith, desrosj.
Fixes #53022.

git-svn-id: https://develop.svn.wordpress.org/trunk@50817 602fd350-edb4-49c9-b593-d223f7449a82
2021-05-05 19:20:55 +00:00
Sergey Biryukov
5321a2f082 Site Health: Add WP_MEMORY_LIMIT constant to debug info.
This complements the `WP_MAX_MEMORY_LIMIT` constant previously displayed there.

Props sanketchodavadiya, nre, talldanwp, noisysocks.
Fixes #51680.

git-svn-id: https://develop.svn.wordpress.org/trunk@49908 602fd350-edb4-49c9-b593-d223f7449a82
2020-12-27 19:25:48 +00:00
Sergey Biryukov
6511b5817f Site Health: Check if $core_updates is an array before iterating on it.
This avoids a PHP warning if `get_core_updates()` returns `false`.

Props paulschreiber.
Fixes #51818.

git-svn-id: https://develop.svn.wordpress.org/trunk@49676 602fd350-edb4-49c9-b593-d223f7449a82
2020-11-21 14:37:44 +00:00
Jonathan Desrosiers
d936f9ffe6 Upgrade/Install: Prevent removal of additional data from plugin update info.
This switches to using `wp_parse_args()` instead of a combination of `array_merge()` and `array_intersect_key()` when ensuring that all expected default keys are present in the update information for a plugin.

This prevents non-default data returned by 3rd-party plugins from being unintentionally stripped out.

Props peterwilsoncc, chriscct7.
Fixes #51609.

git-svn-id: https://develop.svn.wordpress.org/trunk@49477 602fd350-edb4-49c9-b593-d223f7449a82
2020-11-02 19:11:32 +00:00
Sergey Biryukov
6b5b87db58 Upgrade/Install: Introduce a wrapper for the auto_update_{$type} filter checks.
This allows for cleaner checks whether auto-updates are forced for a plugin or theme.

Follow-up to [48750].

Props rebasaurus, garrett-eclipse, SergeyBiryukov.
Fixes #50875.

git-svn-id: https://develop.svn.wordpress.org/trunk@49241 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:37:16 +00:00
Sergey Biryukov
271ab2010a Site Health: Add site environment type to the debug information.
Follow-up to [47919], [48188], [48372].

Props joostdevalk, Clorith.
Fixes #50887.

git-svn-id: https://develop.svn.wordpress.org/trunk@48802 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-16 18:25:50 +00:00
Sergey Biryukov
e499354eee Site Health: Rename the $upload_max_size variable to $upload_max_filesize, for consistency with the PHP setting name.
Follow-up to [48535], [48538], [48539], [48544], [48800].

See #50945.

git-svn-id: https://develop.svn.wordpress.org/trunk@48801 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-16 17:52:25 +00:00
Sergey Biryukov
8c11d506e1 Docs: Correct usage of the dynamic auto_update_{$type} filter.
This ensures that the canonical name of the filter is used in Site Health debug data, as well as on plugin and theme screens, so the developer reference site remains correct.

Props johnbillion.
Fixes #50868.

git-svn-id: https://develop.svn.wordpress.org/trunk@48750 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 16:12:11 +00:00
Sergey Biryukov
9d1a31cd0a Site Health: Consistently pass an object to the auto_update_{$type} filter in Site Health debug data.
Previously, some instances of the filter received an array from a plugin or theme update response, potentially triggering PHP notices.

Props bpayton, pbiron.
Fixes #50852.

git-svn-id: https://develop.svn.wordpress.org/trunk@48745 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 13:26:11 +00:00
Jake Spurlock
3fb50acb41 Site Health: Display auto-update properly for plugins that don't support auto-updates.
Properly filter `auto_update_plugin` when displaying the table.

Fixes #50822.
Props Gwendydd, pbiron, audrasjb, SergeyBiryukov, whyisjake.



git-svn-id: https://develop.svn.wordpress.org/trunk@48731 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 17:35:09 +00:00
Jake Spurlock
6d3207d564 Upgrade/Install: Pass the plugin file path into the plugin_auto_update_debug_string filter.
Adds better tooling for when user specific plugins can be updated, but platform specific ones cannot.

Fixes #50821.
Props bpayton, pbiron, audrasjb, SergeyBiryukov, whyisjake. 



git-svn-id: https://develop.svn.wordpress.org/trunk@48696 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 21:48:19 +00:00
John Blackbourn
5e35ad2510 Docs: Various formatting improvements to inline docblocks.
See #49572

git-svn-id: https://develop.svn.wordpress.org/trunk@48574 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-23 00:50:57 +00:00
Sergey Biryukov
3d2cd19b4f Docs: Correct type for the $theme parameter of theme_auto_update_debug_string filter.
Follow-up to [48546], [48549], [48552].

See #50663.

git-svn-id: https://develop.svn.wordpress.org/trunk@48561 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-22 00:27:36 +00:00
Sergey Biryukov
b11757e4ed Site Health: Use a consistent label for theme auto-updates in debug data.
Props audrasjb.
Fixes #50728.

git-svn-id: https://develop.svn.wordpress.org/trunk@48554 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 21:04:57 +00:00
Sergey Biryukov
44335fdc43 Site Health: Simplify the logic for displaying whether auto-updates are enabled for plugins and themes.
Remove some extra variables.

Follow-up to [48546], [48549].

See #50663.

git-svn-id: https://develop.svn.wordpress.org/trunk@48552 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 18:42:24 +00:00
Sergey Biryukov
6440e85a2c Site Health: Rename the filters added in [48546] for clarity.
See #50663.

git-svn-id: https://develop.svn.wordpress.org/trunk@48549 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 17:06:55 +00:00
Jake Spurlock
11fe34deb8 Site Health: Add auto-update information to for plugins and themes.
New filters:

* `plugin_auto_update_debug_str`
* `theme_auto_update_debug_str`

Fixes #50663.
Props pbiron, audrasjb, davidbaumwald.


git-svn-id: https://develop.svn.wordpress.org/trunk@48546 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 16:52:47 +00:00
Sergey Biryukov
0da858ffae Site Health: Rename upload_max array key in file upload checks to max_effective_size for clarity.
Follow-up to [48535].

See #50038.

git-svn-id: https://develop.svn.wordpress.org/trunk@48544 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 16:18:53 +00:00
Sergey Biryukov
0d956d4013 Site Health: Remove parse_ini_size(), use the existing wp_convert_hr_to_bytes() function instead.
Follow-up to [48535].

See #50038.

git-svn-id: https://develop.svn.wordpress.org/trunk@48538 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 15:38:40 +00:00
Jake Spurlock
5ffe591bec Site Health: Include new tests to check for the ability to upload files.
Several new checks:

* `max_file_uploads`
* `file_uploads`
* `post_max_size`
* `upload_max_filesize`
* `upload_max`
* `max_file_uploads`

In addition, new function `parse_ini_size()` that converts shorthand byte strings to bytes. Useful for size comparisons.

Fixes #50038.
Props dd32, donmhico, JavierCasares, SergeyBiryukov, ayeshrajans, Clorith, ipstenu, sabernhardt, whyisjake.


git-svn-id: https://develop.svn.wordpress.org/trunk@48535 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-21 15:19:58 +00:00
Sergey Biryukov
5b684a6bfb Site Health: Correct the check of whether the theme directory is writable when the current theme is symlinked into the theme directory.
This ensures that the check is done on a sub-directory within `WP_CONTENT_DIR`, rather than outside of `ABSPATH`.

Props pbiron, Clorith.
Fixes #48199.

git-svn-id: https://develop.svn.wordpress.org/trunk@48125 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-22 20:13:28 +00:00
Andrea Fercia
184118c3c9 Administration and Site Health: Make information on Search engine visibility more prominent.
- makes the "Search engines discouraged" message on the Dashboard more prominent
- adds "Search engine visibility" information under Site Health > Info > WordPress 
- removes title case in favor of sentence case in all the related strings 

Props audrasjb, swissspidy, emanuel_blagonic, Presskopp, karmatosed, valentinbora, melchoyce.
Fixes #35288.


git-svn-id: https://develop.svn.wordpress.org/trunk@47859 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-27 14:32:00 +00:00
Sergey Biryukov
4d6ac487e7 Coding Standards: Fix WPCS issues in wp-admin/includes/class-wp-debug-data.php.
Follow-up to [47550], [47557], [47835].

See #50052.

git-svn-id: https://develop.svn.wordpress.org/trunk@47840 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-22 17:24:05 +00:00
Jake Spurlock
eb79d7f1ee Security: Add user interface to auto-update themes and plugins.
Building on core update mechanisms, this adds the ability to enable automatic updates for themes and plugins to the WordPress admin. 

Fixes: #50052.
Props: afercia, afragen, audrasjb, azaozz, bookdude13, davidperonne, desrosj, gmays, gmays, javiercasares, karmatosed, knutsp, mapk, mukesh27, netweb, nicolaskulka, nielsdeblaauw, paaljoachim, passoniate, pbiron, pedromendonca, whodunitagency, whyisjake, wpamitkumar, and xkon.


git-svn-id: https://develop.svn.wordpress.org/trunk@47835 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-20 18:47:24 +00:00
Sergey Biryukov
b19c56b736 Site Health: Display the original PHP memory limit on Site Health Info screen.
This ensures that if the limit has been modified for admin screens by `wp_raise_memory_limit()`, the original value is displayed along with the current value.

Props Clorith, espiat, zodiac1978, SergeyBiryukov.
Fixes #49329.

git-svn-id: https://develop.svn.wordpress.org/trunk@47762 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-05 18:56:44 +00:00
Sergey Biryukov
96a35dad0b Site Health: Add pretty links support information to debug data.
Props valentinbora, afragen.
Fixes #49422.

git-svn-id: https://develop.svn.wordpress.org/trunk@47527 602fd350-edb4-49c9-b593-d223f7449a82
2020-03-28 21:18:19 +00:00
Sergey Biryukov
af57dcb03e I18N: Replace .htaccess with placeholders in the strings for Site Health custom rules check.
Props ramiy.
Fixes #48864.

git-svn-id: https://develop.svn.wordpress.org/trunk@47345 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-22 18:54:09 +00:00
Sergey Biryukov
49b145c23f Site Health: Adjust "Database username" and "Table prefix" strings for consistency with the same strings in wp-admin/setup-config.php.
Props ramiy.
Fixes #47043.

git-svn-id: https://develop.svn.wordpress.org/trunk@47268 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-11 16:46:10 +00:00
Sergey Biryukov
cfc3b57488 Docs: Improve inline comments per the documentation standards.
Includes minor code layout fixes for better readability.

See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@47122 602fd350-edb4-49c9-b593-d223f7449a82
2020-01-29 00:43:23 +00:00
Sergey Biryukov
bd59d22a81 Coding Standards: Remove unnecessary // phpcs:ignore instances in WP_Debug_Data.
`WP_Theme::__get()` accepts `Name`, `Version`, and `Author` theme properties in lower case too.

Additionally, remove one short ternary instance, not allowed per the coding standards.

See #49222.

git-svn-id: https://develop.svn.wordpress.org/trunk@47083 602fd350-edb4-49c9-b593-d223f7449a82
2020-01-18 00:24:57 +00:00
Jonathan Desrosiers
336960897d Build/Test Tools: Introduce automated PHP compatibility checking.
This change introduces a new Composer script, `compat` that will scan the codebase for (detectable) potential PHP compatibility issues using the `PHP_CodeSniffer` and a custom ruleset based off of the `PHPCompayibilityWP` ruleset (`phpcompat.xml.dist`).

The command will be run as a separate job within each Travis build. While many compatibility issues and false positives have already been corrected in this commit and other Trac tickets, there are still some remaining. For that reason, the job is allowed to fail while the remainder of the potential compatibility issues are investigated and addressed. After those are resolved, the job should be set as required to pass to help prevent new compatibility issues from being introduced.

Props desrosj, jrf, all PHPCompatibilityWP and PHPCompatibility contributors.
Fixes #46152.

git-svn-id: https://develop.svn.wordpress.org/trunk@46290 602fd350-edb4-49c9-b593-d223f7449a82
2019-09-25 13:46:55 +00:00
Dominik Schilling
39fff01a1f Site Health: Replace wp_get_upload_dir() with wp_upload_dir().
`wp_get_upload_dir()` returns the theoretical path of the uploads directory. When there was no upload yet the test returns an incorrect result (not writeable) because the directory doesn't exist. Switching to `wp_upload_dir()`, which creates the directory on the fly, ensures a proper test result.

Fixes #47958.

git-svn-id: https://develop.svn.wordpress.org/trunk@46228 602fd350-edb4-49c9-b593-d223f7449a82
2019-09-21 15:48:56 +00:00