diff --git a/readme.html b/readme.html index 8696b0505a..c8dd83cdbd 100644 --- a/readme.html +++ b/readme.html @@ -52,7 +52,7 @@

System Requirements

diff --git a/wp-admin/includes/class-wp-site-health.php b/wp-admin/includes/class-wp-site-health.php index 493928677b..dd537296a8 100644 --- a/wp-admin/includes/class-wp-site-health.php +++ b/wp-admin/includes/class-wp-site-health.php @@ -965,6 +965,7 @@ class WP_Site_Health { 'function' => 'mysqli_connect', 'required' => false, ), + // Sodium was introduced in PHP 7.2, but the extension may not be enabled. 'libsodium' => array( 'constant' => 'SODIUM_LIBRARY_VERSION', 'required' => false, diff --git a/wp-admin/includes/misc.php b/wp-admin/includes/misc.php index df95166788..6c00a0ffb1 100644 --- a/wp-admin/includes/misc.php +++ b/wp-admin/includes/misc.php @@ -1621,8 +1621,8 @@ function wp_check_php_version() { $response['is_lower_than_future_minimum'] = false; - // The minimum supported PHP version will be updated to 7.4 in the future. Check if the current version is lower. - if ( version_compare( $version, '7.4', '<' ) ) { + // The minimum supported PHP version will be updated to at least 8.0 in the future. Check if the current version is lower. + if ( version_compare( $version, '8.0', '<' ) ) { $response['is_lower_than_future_minimum'] = true; // Force showing of warnings. diff --git a/wp-includes/compat.php b/wp-includes/compat.php index af733c830d..3ac1372fdc 100644 --- a/wp-includes/compat.php +++ b/wp-includes/compat.php @@ -296,80 +296,11 @@ if ( ! function_exists( 'utf8_decode' ) ) : endif; endif; -// sodium_crypto_box() was introduced in PHP 7.2. +// sodium_crypto_box() was introduced with Sodium in PHP 7.2, but the extension may not be enabled. if ( ! function_exists( 'sodium_crypto_box' ) ) { require ABSPATH . WPINC . '/sodium_compat/autoload.php'; } -if ( ! function_exists( 'is_countable' ) ) { - /** - * Polyfill for is_countable() function added in PHP 7.3. - * - * Verify that the content of a variable is an array or an object - * implementing the Countable interface. - * - * @since 4.9.6 - * - * @param mixed $value The value to check. - * @return bool True if `$value` is countable, false otherwise. - */ - function is_countable( $value ) { - return ( is_array( $value ) - || $value instanceof Countable - || $value instanceof SimpleXMLElement - || $value instanceof ResourceBundle - ); - } -} - -if ( ! function_exists( 'array_key_first' ) ) { - /** - * Polyfill for array_key_first() function added in PHP 7.3. - * - * Get the first key of the given array without affecting - * the internal array pointer. - * - * @since 5.9.0 - * - * @param array $array An array. - * @return string|int|null The first key of array if the array - * is not empty; `null` otherwise. - */ - function array_key_first( array $array ) { // phpcs:ignore Universal.NamingConventions.NoReservedKeywordParameterNames.arrayFound - if ( empty( $array ) ) { - return null; - } - - foreach ( $array as $key => $value ) { - return $key; - } - } -} - -if ( ! function_exists( 'array_key_last' ) ) { - /** - * Polyfill for `array_key_last()` function added in PHP 7.3. - * - * Get the last key of the given array without affecting the - * internal array pointer. - * - * @since 5.9.0 - * - * @param array $array An array. - * @return string|int|null The last key of array if the array - *. is not empty; `null` otherwise. - */ - function array_key_last( array $array ) { // phpcs:ignore Universal.NamingConventions.NoReservedKeywordParameterNames.arrayFound - if ( empty( $array ) ) { - return null; - } - - end( $array ); - - return key( $array ); - } -} - if ( ! function_exists( 'array_is_list' ) ) { /** * Polyfill for `array_is_list()` function added in PHP 8.1. diff --git a/wp-includes/css/dist/index.php b/wp-includes/css/dist/index.php index abb9de2cf2..7e238db692 100644 --- a/wp-includes/css/dist/index.php +++ b/wp-includes/css/dist/index.php @@ -12,20 +12,15 @@ return array( 'path' => 'preferences/style', 'dependencies' => array('wp-components'), ), - array( - 'handle' => 'wp-list-reusable-blocks', - 'path' => 'list-reusable-blocks/style', - 'dependencies' => array('wp-components'), - ), array( 'handle' => 'wp-nux', 'path' => 'nux/style', 'dependencies' => array('wp-components'), ), array( - 'handle' => 'wp-patterns', - 'path' => 'patterns/style', - 'dependencies' => array('wp-block-editor', 'wp-components'), + 'handle' => 'wp-list-reusable-blocks', + 'path' => 'list-reusable-blocks/style', + 'dependencies' => array('wp-components'), ), array( 'handle' => 'wp-reusable-blocks', @@ -33,8 +28,8 @@ return array( 'dependencies' => array('wp-block-editor', 'wp-components'), ), array( - 'handle' => 'wp-widgets', - 'path' => 'widgets/style', + 'handle' => 'wp-patterns', + 'path' => 'patterns/style', 'dependencies' => array('wp-block-editor', 'wp-components'), ), array( @@ -47,6 +42,11 @@ return array( 'path' => 'components/style', 'dependencies' => array(), ), + array( + 'handle' => 'wp-widgets', + 'path' => 'widgets/style', + 'dependencies' => array('wp-block-editor', 'wp-components'), + ), array( 'handle' => 'wp-format-library', 'path' => 'format-library/style', @@ -62,39 +62,39 @@ return array( 'path' => 'customize-widgets/style', 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-components', 'wp-media-utils', 'wp-preferences', 'wp-widgets'), ), - array( - 'handle' => 'wp-edit-post', - 'path' => 'edit-post/style', - 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-commands', 'wp-components', 'wp-editor', 'wp-preferences', 'wp-widgets'), - ), array( 'handle' => 'wp-media-utils', 'path' => 'media-utils/style', 'dependencies' => array('wp-components'), ), array( - 'handle' => 'wp-block-library', - 'path' => 'block-library/style', - 'dependencies' => array('wp-block-editor', 'wp-components', 'wp-patterns'), + 'handle' => 'wp-edit-post', + 'path' => 'edit-post/style', + 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-commands', 'wp-components', 'wp-editor', 'wp-preferences', 'wp-widgets'), ), array( 'handle' => 'wp-edit-widgets', 'path' => 'edit-widgets/style', 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-components', 'wp-media-utils', 'wp-patterns', 'wp-preferences', 'wp-widgets'), ), + array( + 'handle' => 'wp-block-library', + 'path' => 'block-library/style', + 'dependencies' => array('wp-block-editor', 'wp-components', 'wp-patterns'), + ), array( 'handle' => 'wp-editor', 'path' => 'editor/style', 'dependencies' => array('wp-block-editor', 'wp-commands', 'wp-components', 'wp-media-utils', 'wp-patterns', 'wp-preferences'), ), - array( - 'handle' => 'wp-edit-site', - 'path' => 'edit-site/style', - 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-commands', 'wp-components', 'wp-editor', 'wp-patterns', 'wp-preferences', 'wp-widgets'), - ), array( 'handle' => 'wp-block-editor', 'path' => 'block-editor/style', 'dependencies' => array('wp-commands', 'wp-components', 'wp-preferences'), ), + array( + 'handle' => 'wp-edit-site', + 'path' => 'edit-site/style', + 'dependencies' => array('wp-block-editor', 'wp-block-library', 'wp-commands', 'wp-components', 'wp-editor', 'wp-patterns', 'wp-preferences', 'wp-widgets'), + ), ); diff --git a/wp-includes/js/dist/script-modules/index.php b/wp-includes/js/dist/script-modules/index.php index e7e9ca3b69..89dd1fa569 100644 --- a/wp-includes/js/dist/script-modules/index.php +++ b/wp-includes/js/dist/script-modules/index.php @@ -12,16 +12,6 @@ return array( 'path' => 'core-abilities/index', 'asset' => 'core-abilities/index.min.asset.php', ), - array( - 'id' => '@wordpress/a11y', - 'path' => 'a11y/index', - 'asset' => 'a11y/index.min.asset.php', - ), - array( - 'id' => '@wordpress/interactivity', - 'path' => 'interactivity/index', - 'asset' => 'interactivity/index.min.asset.php', - ), array( 'id' => '@wordpress/interactivity-router', 'path' => 'interactivity-router/index', @@ -32,6 +22,21 @@ return array( 'path' => 'interactivity-router/full-page', 'asset' => 'interactivity-router/full-page.min.asset.php', ), + array( + 'id' => '@wordpress/interactivity', + 'path' => 'interactivity/index', + 'asset' => 'interactivity/index.min.asset.php', + ), + array( + 'id' => '@wordpress/a11y', + 'path' => 'a11y/index', + 'asset' => 'a11y/index.min.asset.php', + ), + array( + 'id' => '@wordpress/abilities', + 'path' => 'abilities/index', + 'asset' => 'abilities/index.min.asset.php', + ), array( 'id' => '@wordpress/latex-to-mathml', 'path' => 'latex-to-mathml/index', @@ -42,11 +47,6 @@ return array( 'path' => 'latex-to-mathml/loader', 'asset' => 'latex-to-mathml/loader.min.asset.php', ), - array( - 'id' => '@wordpress/abilities', - 'path' => 'abilities/index', - 'asset' => 'abilities/index.min.asset.php', - ), array( 'id' => '@wordpress/route', 'path' => 'route/index', diff --git a/wp-includes/pluggable.php b/wp-includes/pluggable.php index 4241a8f184..8cf983ead7 100644 --- a/wp-includes/pluggable.php +++ b/wp-includes/pluggable.php @@ -2777,11 +2777,10 @@ if ( ! function_exists( 'wp_hash_password' ) ) : * - `PASSWORD_ARGON2ID` * - `PASSWORD_DEFAULT` * - * The values of the algorithm constants are strings in PHP 7.4+ and integers in PHP 7.3 and earlier. - * * @since 6.8.0 + * @since 7.0.0 The `$algorithm` parameter is now always a string. * - * @param string|int $algorithm The hashing algorithm. Default is the value of the `PASSWORD_BCRYPT` constant. + * @param string $algorithm The hashing algorithm. Default is the value of the `PASSWORD_BCRYPT` constant. */ $algorithm = apply_filters( 'wp_hash_password_algorithm', PASSWORD_BCRYPT ); @@ -2791,14 +2790,13 @@ if ( ! function_exists( 'wp_hash_password' ) ) : * The default hashing algorithm is bcrypt, but this can be changed via the {@see 'wp_hash_password_algorithm'} * filter. You must ensure that the options are appropriate for the algorithm in use. * - * The values of the algorithm constants are strings in PHP 7.4+ and integers in PHP 7.3 and earlier. - * * @since 6.8.0 + * @since 7.0.0 The `$algorithm` parameter is now always a string. * - * @param array $options Array of options to pass to the password hashing functions. - * By default this is an empty array which means the default - * options will be used. - * @param string|int $algorithm The hashing algorithm in use. + * @param array $options Array of options to pass to the password hashing functions. + * By default this is an empty array which means the default + * options will be used. + * @param string $algorithm The hashing algorithm in use. */ $options = apply_filters( 'wp_hash_password_options', array(), $algorithm ); diff --git a/wp-includes/version.php b/wp-includes/version.php index a08ed2659c..b1943f62e8 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -16,7 +16,7 @@ * * @global string $wp_version */ -$wp_version = '7.0-alpha-61458'; +$wp_version = '7.0-alpha-61459'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. @@ -37,7 +37,7 @@ $tinymce_version = '49110-20250317'; * * @global string $required_php_version */ -$required_php_version = '7.2.24'; +$required_php_version = '7.4'; /** * Holds the names of required PHP extensions.