Commit Graph

34265 Commits

Author SHA1 Message Date
Gary Pendergast
18ca26574b Database: dbDelta() will no longer try to downgrade the size of TEXT and BLOB columns.
When upgrading to `utf8mb4`, `TEXT` fields will be upgraded to `MEDIUMTEXT` (and likewise for all other `*TEXT` and `*BLOB` fields). This is to allow for the additional space requirements of `utf8mb4`.

On the subsequent upgrade, after the `utf8mb4` upgrade, `dbDelta()` would try and downgrade the fields to their original size again. At best, this it a waste of time, at worst, this could truncate any data larger than the original size. There's no harm in leaving them at their original size, so let's do that.

Fixes #36748.


Built from https://develop.svn.wordpress.org/trunk@37525


git-svn-id: http://core.svn.wordpress.org/trunk@37493 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 08:36:28 +00:00
Gary Pendergast
25d2123821 Database: Remove some duplicate code.
`schema.php` was manually defining the character set/collation query, instead of using `wpdb::get_charset_collate()`.

Props sudar.

Fixes #35756.


Built from https://develop.svn.wordpress.org/trunk@37524


git-svn-id: http://core.svn.wordpress.org/trunk@37492 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 06:38:27 +00:00
Gary Pendergast
db3917d491 Database: Use the utf8mb4_unicode_520_ci collation, when available.
The `utf8mb4_unicode_520_ci` (Unicode Collation Algorithm 5.2.0, October 2010) collation is an improvement over `utf8mb4_unicode_ci` (UCA 4.0.0, November 2003).

There is no word on when MySQL will support later UCAs.

Fixes #32105.


Built from https://develop.svn.wordpress.org/trunk@37523


git-svn-id: http://core.svn.wordpress.org/trunk@37491 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 06:32:29 +00:00
Gary Pendergast
89d0b337e0 Tests: Remove a test for a function that can't be tested.
`wpdb::init_charset()` doesn't lend itself to being tested, so the unit test added in [37521] won't work under most circumstances.

See #32405.


Built from https://develop.svn.wordpress.org/trunk@37522


git-svn-id: http://core.svn.wordpress.org/trunk@37490 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 06:27:38 +00:00
Gary Pendergast
1aff99307f Database: Obey locale-specific utf8 collation settings.
Some sites prefer to use locale-specific location settings. For example, the Swedish WordPress package use `utf8_swedish_ci`, instead of `utf8_unicode_ci`. When upgrading the connection to `utf8mb4`, we were overriding this to be `utf8mb4_unicode_ci`, instead of maintaining the use of the `_swedish_ci` variant.

The locale-specific collations do have extra collation rules just for that language, so it's useful to maintain compatibility.

Fixes #32405.



Built from https://develop.svn.wordpress.org/trunk@37521


git-svn-id: http://core.svn.wordpress.org/trunk@37489 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 05:54:27 +00:00
Weston Ruter
116102089f Customize: Replace invalid reference to $_SERVER['customized'] with $_POST['customized'].
Introduced in r31421.
Fixes #36852.

Built from https://develop.svn.wordpress.org/trunk@37520


git-svn-id: http://core.svn.wordpress.org/trunk@37488 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 05:10:27 +00:00
Boone Gorges
ef97e9bee5 Tests: get_terms() 'search' test should have more precise fixtures..
Without a fixture that does not match the search term, it's possible for the
test to pass even if the search clause isn't built properly.

See #13992, #35381.
Built from https://develop.svn.wordpress.org/trunk@37519


git-svn-id: http://core.svn.wordpress.org/trunk@37487 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 03:26:27 +00:00
Drew Jaynes
9cb5247392 Docs: Standardize filter docs in remaining wp-includes/* files to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37518


git-svn-id: http://core.svn.wordpress.org/trunk@37486 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:50:28 +00:00
Drew Jaynes
558d5b371c Docs: Standardize filter docs in wp-includes/l10n.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37517


git-svn-id: http://core.svn.wordpress.org/trunk@37485 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:48:28 +00:00
Drew Jaynes
46573c099d Docs: Standardize filter docs in wp-includes/feed.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37516


git-svn-id: http://core.svn.wordpress.org/trunk@37484 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:47:27 +00:00
Drew Jaynes
03b342f22d Docs: Standardize filter docs in wp-includes/formatting.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37515


git-svn-id: http://core.svn.wordpress.org/trunk@37483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:45:28 +00:00
Drew Jaynes
fe3129f470 Docs: Standardize filter docs in wp-includes/class-http.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37514


git-svn-id: http://core.svn.wordpress.org/trunk@37482 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:43:27 +00:00
Drew Jaynes
abbd18dbb7 Docs: Standardize filter docs in wp-includes/embed.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37513


git-svn-id: http://core.svn.wordpress.org/trunk@37481 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:42:27 +00:00
Drew Jaynes
fd96e90758 Docs: Standardize filter docs in wp-includes/comment.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37512


git-svn-id: http://core.svn.wordpress.org/trunk@37480 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:41:29 +00:00
Drew Jaynes
dabe5b1467 Docs: Standardize filter docs in wp-includes/ms-functions.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37511


git-svn-id: http://core.svn.wordpress.org/trunk@37479 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:40:27 +00:00
Drew Jaynes
bc20a9288f Docs: Standardize filter docs in wp-includes/functions.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37510


git-svn-id: http://core.svn.wordpress.org/trunk@37478 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:36:27 +00:00
Drew Jaynes
5ac8c4158c Docs: Standardize filter docs in wp-includes/query.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37509


git-svn-id: http://core.svn.wordpress.org/trunk@37477 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:35:54 +00:00
Drew Jaynes
6c534918d4 Docs: Standardize filter docs in wp-includes/pluggable.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37508


git-svn-id: http://core.svn.wordpress.org/trunk@37476 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:35:27 +00:00
Drew Jaynes
bde87c6fb2 Docs: Standardize filter docs in wp-includes/option.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37507


git-svn-id: http://core.svn.wordpress.org/trunk@37475 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:34:26 +00:00
Drew Jaynes
ee2fb51f3a Docs: Standardize filter docs in wp-includes/taxonomy.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37506


git-svn-id: http://core.svn.wordpress.org/trunk@37474 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:32:53 +00:00
Drew Jaynes
eb83bf3700 Docs: Standardize filter docs in wp-includes/media.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37505


git-svn-id: http://core.svn.wordpress.org/trunk@37473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:32:27 +00:00
Drew Jaynes
dcadd35728 Docs: Standardize filter docs in wp-includes/post.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37504


git-svn-id: http://core.svn.wordpress.org/trunk@37472 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:31:28 +00:00
Drew Jaynes
043c4b1710 Docs: Standardize filter docs in wp-includes/user.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37503


git-svn-id: http://core.svn.wordpress.org/trunk@37471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:30:27 +00:00
Drew Jaynes
1f231c7293 Docs: Standardize filter docs in wp-includes/post-thumbnail-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37502


git-svn-id: http://core.svn.wordpress.org/trunk@37470 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:29:27 +00:00
Drew Jaynes
42d1936336 Docs: Standardize filter docs in wp-includes/post-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37501


git-svn-id: http://core.svn.wordpress.org/trunk@37469 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:28:53 +00:00
Drew Jaynes
e78209267f Docs: Standardize filter docs in wp-includes/nav-menu-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37500


git-svn-id: http://core.svn.wordpress.org/trunk@37468 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:28:27 +00:00
Drew Jaynes
c1ba18d147 Docs: Standardize filter docs in wp-includes/link-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37499


git-svn-id: http://core.svn.wordpress.org/trunk@37467 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:27:27 +00:00
Drew Jaynes
0f39ebdb77 Docs: Standardize filter docs in wp-includes/general-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37498


git-svn-id: http://core.svn.wordpress.org/trunk@37466 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:26:53 +00:00
Drew Jaynes
34a8c37332 Docs: Standardize filter docs in wp-includes/comment-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37497


git-svn-id: http://core.svn.wordpress.org/trunk@37465 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:26:27 +00:00
Drew Jaynes
c8c44a3111 Docs: Standardize filter docs in wp-includes/category-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37496


git-svn-id: http://core.svn.wordpress.org/trunk@37464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:25:52 +00:00
Drew Jaynes
317aa932f0 Docs: Standardize filter docs in wp-includes/author-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37495


git-svn-id: http://core.svn.wordpress.org/trunk@37463 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:25:26 +00:00
Drew Jaynes
b7fc55237d Docs: Standardize filter docs in wp-includes/bookmark-template.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37494


git-svn-id: http://core.svn.wordpress.org/trunk@37462 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:24:28 +00:00
Drew Jaynes
136296c111 Docs: Standardize filter docs in wp-includes/theme.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37493


git-svn-id: http://core.svn.wordpress.org/trunk@37461 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:18:29 +00:00
Drew Jaynes
602b51a209 Docs: Standardize filter docs in core classes in wp-includes/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37492


git-svn-id: http://core.svn.wordpress.org/trunk@37460 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:15:28 +00:00
Drew Jaynes
e2c18aaf64 Docs: Standardize filter docs in the Customizer classes to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37491


git-svn-id: http://core.svn.wordpress.org/trunk@37459 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:10:29 +00:00
Drew Jaynes
f03eef071e Docs: Standardize hook docs in wp-includes/rest-api/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37490


git-svn-id: http://core.svn.wordpress.org/trunk@37458 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:08:29 +00:00
Drew Jaynes
6b8248f3f7 Docs: Standardize hook docs in wp-includes/widgets/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37489


git-svn-id: http://core.svn.wordpress.org/trunk@37457 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:06:28 +00:00
Drew Jaynes
c3055cc190 Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37488


git-svn-id: http://core.svn.wordpress.org/trunk@37456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:01:30 +00:00
Drew Jaynes
f52a8cb1fa Docs: Remove/replace invalid inline @link tags in DocBlocks in wp-includes/*.
Fixes #36910.

Built from https://develop.svn.wordpress.org/trunk@37487


git-svn-id: http://core.svn.wordpress.org/trunk@37455 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:39:28 +00:00
Drew Jaynes
549e33a599 Docs: Remove several invalid inline @link tags from the DocBlock for wp_list_categories().
See #36910.

Built from https://develop.svn.wordpress.org/trunk@37486


git-svn-id: http://core.svn.wordpress.org/trunk@37454 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:24:28 +00:00
Drew Jaynes
a54c2a7279 Docs: Remove/replace invalid inline @link tags from DocBlocks in wp-admin/includes/*.
See #36910.

Built from https://develop.svn.wordpress.org/trunk@37485


git-svn-id: http://core.svn.wordpress.org/trunk@37453 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:22:27 +00:00
Drew Jaynes
ac74c103a8 Docs: Fix some parameter alignment and backtick-escaping in two DocBlocks in wp-admin/includes/media.php.
See #32246.

Built from https://develop.svn.wordpress.org/trunk@37484


git-svn-id: http://core.svn.wordpress.org/trunk@37452 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:18:27 +00:00
Drew Jaynes
c0d7dece23 Docs: Remove invalid inline @link tags from docs in wp-admin/includes/media.php.
See #36910.

Built from https://develop.svn.wordpress.org/trunk@37483


git-svn-id: http://core.svn.wordpress.org/trunk@37451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:10:26 +00:00
Boone Gorges
e79d2a1bad Improve @return documentation for WP_Comment_Query::get_comments().
Props barryceelen.
Fixes #36896.
Built from https://develop.svn.wordpress.org/trunk@37482


git-svn-id: http://core.svn.wordpress.org/trunk@37450 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 16:21:27 +00:00
Boone Gorges
4428a031a3 In get_page_by_path(), values fetched from cache should obey $output param.
Introduced in [37479].

Props spacedmonkey.
Fixes #36711.
Built from https://develop.svn.wordpress.org/trunk@37481


git-svn-id: http://core.svn.wordpress.org/trunk@37449 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 16:19:29 +00:00
Boone Gorges
9e6f52a03d Move get_the_terms() tests to their own file.
See #36814.

Built from https://develop.svn.wordpress.org/trunk@37480


git-svn-id: http://core.svn.wordpress.org/trunk@37448 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-21 17:57:26 +00:00
Boone Gorges
98050e404d Cache queries in get_page_by_path().
Props spacedmonkey.
Fixes #36711.
Built from https://develop.svn.wordpress.org/trunk@37479


git-svn-id: http://core.svn.wordpress.org/trunk@37447 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-21 17:27:29 +00:00
Boone Gorges
c5c80b064d Tests: Improve tests for get_page_by_path().
* Move existing test into its own file.
* Add tests that cover most pieces of functionality.

See #36711.
Built from https://develop.svn.wordpress.org/trunk@37478


git-svn-id: http://core.svn.wordpress.org/trunk@37446 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-21 02:41:27 +00:00
Jeremy Felt
2dd1e72f10 Multisite: Introduce WP_Site_Query
Provides a consistent way to query `$wpdb->blogs` for `WP_Site` objects based on domain, path, site ID, network ID, and more.

Introduces and uses `update_site_cache()` and `_prime_site_caches()` to maintain a cached list of `WP_Site` objects for use in multiple queries.

Props spacedmonkey, flixos90, DrewAPicture, jeremyfelt, ocean90.
See #35791.

Built from https://develop.svn.wordpress.org/trunk@37477


git-svn-id: http://core.svn.wordpress.org/trunk@37445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 22:04:27 +00:00
Weston Ruter
87b0a1b989 Customize: Add setting validation model and control notifications to augment setting sanitization.
When a setting is invalid, not only will it be blocked from being saved but all other settings will be blocked as well. This ensures that Customizer saves aren't partial but are more transactional. User will be displayed the error in a notification so that they can fix and re-attempt saving.

PHP changes:

* Introduces `WP_Customize_Setting::validate()`, `WP_Customize_Setting::$validate_callback`, and the `customize_validate_{$setting_id}` filter.
* Introduces `WP_Customize_Manager::validate_setting_values()` to do validation (and sanitization) for the setting values supplied, returning a list of `WP_Error` instances for invalid settings.
* Attempting to save settings that are invalid will result in the save being blocked entirely, with the errors being sent in the `customize_save_response`. Modifies `WP_Customize_Manager::save()` to check all settings for validity issues prior to calling their `save` methods.
* Introduces `WP_Customize_Setting::json()` for parity with the other Customizer classes. This includes exporting of the `type`.
* Modifies `WP_Customize_Manager::post_value()` to apply `validate` after `sanitize`, and if validation fails, to return the `$default`.
* Introduces `customize_save_validation_before` action which fires right before the validation checks are made prior to saving.

JS changes:

* Introduces `wp.customize.Notification` in JS which to represent `WP_Error` instances returned from the server when setting validation fails.
* Introduces `wp.customize.Setting.prototype.notifications`.
* Introduces `wp.customize.Control.prototype.notifications`, which are synced with a control's settings' notifications.
* Introduces `wp.customize.Control.prototype.renderNotifications()` to re-render a control's notifications in its notification area. This is called automatically when the notifications collection changes.
* Introduces `wp.customize.settingConstructor`, allowing custom setting types to be used in the same way that custom controls, panels, and sections can be made.
* Injects a notification area into existing controls which is populated in response to the control's `notifications` collection changing. A custom control can customize the placement of the notification area by overriding the new `getNotificationsContainerElement` method.
* When a save fails due to setting invalidity, the invalidity errors will be added to the settings to then populate in the controls' notification areas, and the first such invalid control will be focused.

Props westonruter, celloexpressions, mrahmadawais.
See #35210.
See #30937.
Fixes #34893.

Built from https://develop.svn.wordpress.org/trunk@37476


git-svn-id: http://core.svn.wordpress.org/trunk@37444 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 21:10:27 +00:00